diff --git a/app/build.gradle b/app/build.gradle index fa04e160..821a4f60 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -5,7 +5,7 @@ plugins { id 'kotlin-kapt' id 'androidx.navigation.safeargs.kotlin' id 'dagger.hilt.android.plugin' - id 'com.google.android.gms.oss-licenses-plugin' + id "com.mikepenz.aboutlibraries.plugin" } android { @@ -99,8 +99,9 @@ dependencies { def timber_version = "5.0.0" implementation "com.jakewharton.timber:timber:$timber_version" - def oss_licenses_version = "17.0.0" - implementation "com.google.android.gms:play-services-oss-licenses:$oss_licenses_version" + def about_libraries_version = "8.9.1" + implementation "com.mikepenz:aboutlibraries-core:$about_libraries_version" + implementation "com.mikepenz:aboutlibraries:$about_libraries_version" // Testing testImplementation 'junit:junit:4.13.2' diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 75b71ba4..8afba6f1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -27,11 +27,6 @@ - - - diff --git a/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt b/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt index 1d74d115..ca3969bd 100644 --- a/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt +++ b/app/src/main/java/dev/jdtech/jellyfin/MainActivity.kt @@ -51,9 +51,10 @@ class MainActivity : AppCompatActivity() { navController.addOnDestinationChangedListener { _, destination, _ -> binding.navView.visibility = when (destination.id) { - R.id.settingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment -> View.GONE + R.id.settingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment, R.id.about_libraries_dest -> View.GONE else -> View.VISIBLE } + if (destination.id == R.id.about_libraries_dest) binding.mainToolbar.title = getString(R.string.app_info) } viewModel.navigateToAddServer.observe(this, { diff --git a/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt b/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt index 9fd43144..79be8b10 100644 --- a/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt +++ b/app/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt @@ -8,7 +8,6 @@ import androidx.navigation.fragment.findNavController import androidx.preference.ListPreference import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat -import com.google.android.gms.oss.licenses.OssLicensesMenuActivity import dev.jdtech.jellyfin.R class SettingsFragment : PreferenceFragmentCompat() { @@ -38,8 +37,8 @@ class SettingsFragment : PreferenceFragmentCompat() { true } - findPreference("ossLicenses")?.setOnPreferenceClickListener { - startActivity(Intent(requireContext(), OssLicensesMenuActivity::class.java)) + findPreference("appInfo")?.setOnPreferenceClickListener { + findNavController().navigate(SettingsFragmentDirections.actionSettingsFragmentToAboutLibraries()) true } } diff --git a/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt b/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt deleted file mode 100644 index 7ce9e9fc..00000000 --- a/app/src/main/java/dev/jdtech/jellyfin/utils/VersionPreference.kt +++ /dev/null @@ -1,14 +0,0 @@ -package dev.jdtech.jellyfin.utils - -import android.content.Context -import android.util.AttributeSet -import androidx.preference.Preference - -class VersionPreference(context: Context, attrs: AttributeSet): Preference(context, attrs) { - init { - val packageManager = context.packageManager - val packageInfo = packageManager.getPackageInfo(context.packageName, 0) - val versionName = packageInfo.versionName - summary = versionName - } -} \ No newline at end of file diff --git a/app/src/main/res/navigation/main_navigation.xml b/app/src/main/res/navigation/main_navigation.xml index 3f64d1d2..2807ccd7 100644 --- a/app/src/main/res/navigation/main_navigation.xml +++ b/app/src/main/res/navigation/main_navigation.xml @@ -56,10 +56,13 @@ + android:label="@string/title_settings"> + + tools:layout="@layout/fragment_search_result"> @@ -222,7 +225,7 @@ android:id="@+id/initializingFragment" android:name="dev.jdtech.jellyfin.fragments.InitializingFragment" android:label="@string/initializing" - tools:layout="@layout/fragment_initializing" > + tools:layout="@layout/fragment_initializing"> + + + \ No newline at end of file diff --git a/app/src/main/res/values/about_libraries.xml b/app/src/main/res/values/about_libraries.xml new file mode 100644 index 00000000..c34ab3d8 --- /dev/null +++ b/app/src/main/res/values/about_libraries.xml @@ -0,0 +1,8 @@ + + + true + true + @string/app_name + @string/app_description + true + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c1c8aca1..d6fb7adc 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,5 +1,6 @@ Findroid + Third-party native Jellyfin app Jellyfin banner Add server Login @@ -14,7 +15,6 @@ Are you sure you want to remove the server %1$s Remove Cancel - MainActivity Home My media Favorites @@ -50,8 +50,7 @@ Appearance Theme Error preparing player items - Version - Open source licenses About Privacy policy + App info \ No newline at end of file diff --git a/app/src/main/res/xml/fragment_settings.xml b/app/src/main/res/xml/fragment_settings.xml index dfa140bc..669c3e45 100644 --- a/app/src/main/res/xml/fragment_settings.xml +++ b/app/src/main/res/xml/fragment_settings.xml @@ -46,10 +46,8 @@ app:title="@string/privacy_policy" /> - - + app:key="appInfo" + app:title="@string/app_info" /> diff --git a/build.gradle b/build.gradle index 29d39b5e..3c49a726 100644 --- a/build.gradle +++ b/build.gradle @@ -4,6 +4,9 @@ buildscript { repositories { google() mavenCentral() + maven { + url "https://plugins.gradle.org/m2/" + } } dependencies { classpath 'com.android.tools.build:gradle:7.0.0' @@ -17,8 +20,8 @@ buildscript { def hilt_version = "2.38.1" classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version" - def oss_licenses_version = "0.10.4" - classpath "com.google.android.gms:oss-licenses-plugin:$oss_licenses_version" + def about_libraries_version = "8.9.1" + classpath "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin:$about_libraries_version" } }