diff --git a/app/build.gradle b/app/build.gradle index a218b8925..f3948200e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,8 +13,8 @@ android { applicationId 'com.github.libretube' minSdk 21 targetSdk 31 - versionCode 15 - versionName '0.4.1' + versionCode 16 + versionName '0.4.2' multiDexEnabled true testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' resValue "string", "app_name", "LibreTube" @@ -103,9 +103,9 @@ dependencies { implementation libs.cronet.okhttp implementation libs.coil - implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1" - implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.5.1" - implementation "androidx.lifecycle:lifecycle-runtime-ktx:2.5.1" + implementation libs.lifecycle.viewmodel + implementation libs.lifecycle.runtime + implementation libs.lifecycle.livedata } static def getUnixTime() { diff --git a/app/src/main/java/com/github/libretube/activities/MainActivity.kt b/app/src/main/java/com/github/libretube/activities/MainActivity.kt index 6a4c8e98f..58317079f 100644 --- a/app/src/main/java/com/github/libretube/activities/MainActivity.kt +++ b/app/src/main/java/com/github/libretube/activities/MainActivity.kt @@ -50,6 +50,7 @@ class MainActivity : AppCompatActivity() { lateinit var navController: NavController private var startFragmentId = R.id.homeFragment var autoRotationEnabled = false + lateinit var searchView: SearchView override fun onCreate(savedInstanceState: Bundle?) { @@ -176,12 +177,13 @@ class MainActivity : AppCompatActivity() { // stuff for the search in the topBar val searchItem = menu.findItem(R.id.action_search) searchView = searchItem.actionView as SearchView - searchView.setMaxWidth(Integer.MAX_VALUE) + searchView.maxWidth = Integer.MAX_VALUE - val searchViewModel = ViewModelProvider(this).get(SearchViewModel::class.java) + val searchViewModel = ViewModelProvider(this)[SearchViewModel::class.java] searchView.setOnSearchClickListener { if (navController.currentDestination?.id != R.id.searchResultFragment) { + searchViewModel.setQuery(null) navController.navigate(R.id.searchFragment) } } @@ -208,6 +210,7 @@ class MainActivity : AppCompatActivity() { searchView.setOnCloseListener { if (navController.currentDestination?.id == R.id.searchFragment) { + searchViewModel.setQuery(null) onBackPressed() } false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 11d755b8d..9fac8f143 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,6 @@ [versions] appcompat = "1.4.1" +lifecycle = "2.5.1" constraintlayout = "2.1.3" material = "1.6.0" navigation = "2.4.2" @@ -44,4 +45,7 @@ exoplayer-extension-cronet = { group = "com.google.android.exoplayer", name = "e cronet-embedded = { group = "org.chromium.net", name = "cronet-embedded", version.ref = "cronetEmbedded" } cronet-okhttp = { group = "com.google.net.cronet", name = "cronet-okhttp", version.ref = "cronetOkHttp" } coil = { group = "io.coil-kt", name = "coil", version.ref="coil" } -square-leakcanary = { group = "com.squareup.leakcanary", name = "leakcanary-android", version.ref = "leakcanary" } \ No newline at end of file +square-leakcanary = { group = "com.squareup.leakcanary", name = "leakcanary-android", version.ref = "leakcanary" } +lifecycle-viewmodel = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "lifecycle" } +lifecycle-runtime = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "lifecycle" } +lifecycle-livedata = { group = "androidx.lifecycle", name = "lifecycle-livedata-ktx", version.ref = "lifecycle" } \ No newline at end of file