diff --git a/app/build.gradle b/app/build.gradle index 949608345..0ef347178 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,7 +1,7 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply plugin: 'kotlin-kapt' -apply plugin: 'androidx.navigation.safeargs' +apply plugin: "com.android.application" +apply plugin: "kotlin-android" +apply plugin: "kotlin-kapt" +apply plugin: "androidx.navigation.safeargs" android { compileSdkVersion 30 @@ -23,13 +23,13 @@ android { debug { debuggable true - applicationIdSuffix = '.debug' + applicationIdSuffix = ".debug" versionNameSuffix = "-DEBUG" } release { minifyEnabled true - proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro" } } @@ -53,39 +53,44 @@ afterEvaluate { dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) - // FIXME: A good chunk of the dependencies I use are implicit, - // I may want to explicitly declare them to avoid any annoying build issues in the future. - // Kotlin implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" + implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" // --- SUPPORT --- // General - implementation 'androidx.core:core-ktx:1.3.2' - implementation 'androidx.activity:activity-ktx:1.3.0-alpha04' - implementation 'androidx.fragment:fragment-ktx:1.3.0' // Don't upgrade until they fix the launcher issue - - // Layout - implementation 'androidx.constraintlayout:constraintlayout:2.0.4' + implementation "androidx.core:core-ktx:1.3.2" + implementation "androidx.appcompat:appcompat:1.2.0" + implementation "androidx.activity:activity-ktx:1.2.1" + implementation "androidx.fragment:fragment-ktx:1.3.1" + // UI + implementation "androidx.constraintlayout:constraintlayout:2.0.4" + implementation "androidx.dynamicanimation:dynamicanimation:1.0.0" + // Lifecycle - implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" + def lifecycle_version = "2.3.0" + implementation "androidx.lifecycle:lifecycle-common:$lifecycle_version" + implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version" + implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" + implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" // Navigation - implementation "androidx.navigation:navigation-fragment-ktx:$navigation_version" implementation "androidx.navigation:navigation-ui-ktx:$navigation_version" + implementation "androidx.navigation:navigation-fragment-ktx:$navigation_version" // Media - // TODO: Migrate to media2 once NewPipe implements it so I can figure out how it works - implementation 'androidx.media:media:1.2.1' + // TODO: Migrate to media2 when I can figure out how to use it + implementation "androidx.media:media:1.2.1" // Preferences - implementation 'androidx.preference:preference-ktx:1.1.1' + implementation "androidx.preference:preference-ktx:1.1.1" // Opening links - implementation 'androidx.browser:browser:1.3.0' + implementation "androidx.browser:browser:1.3.0" // --- THIRD PARTY --- @@ -95,15 +100,15 @@ dependencies { implementation "com.google.android.exoplayer:extension-mediasession:$exoplayer_version" // Image loading - implementation 'io.coil-kt:coil:1.1.1' + implementation "io.coil-kt:coil:1.1.1" // Material - implementation 'com.google.android.material:material:1.3.0' + implementation "com.google.android.material:material:1.3.0" // Dialogs // TODO: Eliminate these, don't want their bloat. - implementation 'com.afollestad.material-dialogs:core:3.3.0' - implementation 'com.afollestad.material-dialogs:files:3.3.0' + implementation "com.afollestad.material-dialogs:core:3.3.0" + implementation "com.afollestad.material-dialogs:files:3.3.0" // --- DEBUG --- @@ -111,7 +116,7 @@ dependencies { ktlint "com.pinterest:ktlint:0.40.0" // Memory Leak checking - debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.5' + debugImplementation "com.squareup.leakcanary:leakcanary-android:2.5" } task ktlint(type: JavaExec, group: "verification") { diff --git a/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt b/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt index efbecdb07..34dccf9de 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/blacklist/BlacklistDialog.kt @@ -21,7 +21,7 @@ import com.afollestad.materialdialogs.utils.invalidateDividers import com.google.android.material.bottomsheet.BottomSheetDialogFragment import org.oxycblt.auxio.MainActivity import org.oxycblt.auxio.R -import org.oxycblt.auxio.databinding.FragmentBlacklistBinding +import org.oxycblt.auxio.databinding.DialogBlacklistBinding import org.oxycblt.auxio.logD import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.ui.createToast @@ -46,7 +46,7 @@ class BlacklistDialog : BottomSheetDialogFragment() { container: ViewGroup?, savedInstanceState: Bundle? ): View { - val binding = FragmentBlacklistBinding.inflate(inflater) + val binding = DialogBlacklistBinding.inflate(inflater) val adapter = BlacklistEntryAdapter { path -> blacklistModel.removePath(path) diff --git a/app/src/main/java/org/oxycblt/auxio/settings/ui/AboutDialog.kt b/app/src/main/java/org/oxycblt/auxio/settings/ui/AboutDialog.kt index a8f1a010c..fcfe00988 100644 --- a/app/src/main/java/org/oxycblt/auxio/settings/ui/AboutDialog.kt +++ b/app/src/main/java/org/oxycblt/auxio/settings/ui/AboutDialog.kt @@ -10,7 +10,7 @@ import androidx.core.net.toUri import com.google.android.material.bottomsheet.BottomSheetDialogFragment import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.R -import org.oxycblt.auxio.databinding.FragmentAboutBinding +import org.oxycblt.auxio.databinding.DialogAboutBinding import org.oxycblt.auxio.logD import org.oxycblt.auxio.logE import org.oxycblt.auxio.music.MusicStore @@ -28,7 +28,7 @@ class AboutDialog : BottomSheetDialogFragment() { container: ViewGroup?, savedInstanceState: Bundle? ): View { - val binding = FragmentAboutBinding.inflate(layoutInflater) + val binding = DialogAboutBinding.inflate(layoutInflater) val musicStore = MusicStore.getInstance() binding.aboutVersion.text = BuildConfig.VERSION_NAME diff --git a/app/src/main/java/org/oxycblt/auxio/songs/FastScrollThumb.kt b/app/src/main/java/org/oxycblt/auxio/songs/FastScrollThumb.kt index 3386cb697..1992f49da 100644 --- a/app/src/main/java/org/oxycblt/auxio/songs/FastScrollThumb.kt +++ b/app/src/main/java/org/oxycblt/auxio/songs/FastScrollThumb.kt @@ -8,7 +8,6 @@ import android.view.View import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.view.isVisible import androidx.core.widget.TextViewCompat -import androidx.databinding.DataBindingUtil import androidx.dynamicanimation.animation.DynamicAnimation import androidx.dynamicanimation.animation.SpringAnimation import androidx.dynamicanimation.animation.SpringForce @@ -22,7 +21,6 @@ import org.oxycblt.auxio.ui.inflater * argument to [FastScrollView.setup]. * This code is fundamentally an adaptation of Reddit's IndicatorFastScroll, albeit specialized * towards Auxio. The original library is here: https://github.com/reddit/IndicatorFastScroll/ - * TODO: Merge this view and FastScrollView? They are effectively reliant on eachother * @author OxygenCobalt */ class FastScrollThumb @JvmOverloads constructor( @@ -31,9 +29,7 @@ class FastScrollThumb @JvmOverloads constructor( defStyleAttr: Int = -1 ) : ConstraintLayout(context, attrs, defStyleAttr) { private val thumbAnim: SpringAnimation - private val binding = DataBindingUtil.inflate( - context.inflater, R.layout.view_scroll_thumb, this, true - ) + private val binding = ViewScrollThumbBinding.inflate(context.inflater, this, true) init { val accent = Accent.get().getStateList(context) diff --git a/app/src/main/res/layout/fragment_about.xml b/app/src/main/res/layout/dialog_about.xml similarity index 100% rename from app/src/main/res/layout/fragment_about.xml rename to app/src/main/res/layout/dialog_about.xml diff --git a/app/src/main/res/layout/fragment_blacklist.xml b/app/src/main/res/layout/dialog_blacklist.xml similarity index 100% rename from app/src/main/res/layout/fragment_blacklist.xml rename to app/src/main/res/layout/dialog_blacklist.xml