From 22542614cdefa4114f242b93eaa5e71eb70378b6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 15 Apr 2023 00:43:42 +0200 Subject: [PATCH] chore(deps): update android-plugin to v8 (major) (#333) * Update android-plugin to v8 * ci: upgrade to java 17 * fix: transitive R classes and buildconfig * lint: fix ktlint issues * lint: fix ktlint issues * lint: fix ktlint issues --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: jarnedemeulemeester --- .github/workflows/build.yaml | 8 ++-- app/phone/build.gradle.kts | 4 +- .../dev/jdtech/jellyfin/BindingAdapters.kt | 11 +++--- .../java/dev/jdtech/jellyfin/MainActivity.kt | 9 +++-- .../dev/jdtech/jellyfin/PlayerActivity.kt | 5 ++- .../adapters/DownloadSeriesListAdapter.kt | 4 +- .../adapters/DownloadViewItemListAdapter.kt | 4 +- .../jellyfin/adapters/ViewItemListAdapter.kt | 4 +- .../adapters/ViewItemPagingAdapter.kt | 4 +- .../jellyfin/adapters/ViewListAdapter.kt | 4 +- .../fragments/EpisodeBottomSheetFragment.kt | 39 ++++++++++--------- .../jdtech/jellyfin/fragments/HomeFragment.kt | 14 +++---- .../jellyfin/fragments/LibraryFragment.kt | 8 ++-- .../jellyfin/fragments/LoginFragment.kt | 4 +- .../jellyfin/fragments/MediaFragment.kt | 8 ++-- .../jellyfin/fragments/MediaInfoFragment.kt | 39 ++++++++++--------- .../fragments/PersonDetailFragment.kt | 6 +-- .../fragments/SettingsAppearanceFragment.kt | 4 +- .../fragments/SettingsCacheFragment.kt | 4 +- .../fragments/SettingsDeviceFragment.kt | 4 +- .../fragments/SettingsDownloadsFragment.kt | 4 +- .../jellyfin/fragments/SettingsFragment.kt | 4 +- .../fragments/SettingsLanguageFragment.kt | 4 +- .../fragments/SettingsNetworkFragment.kt | 4 +- .../fragments/SettingsPlayerFragment.kt | 4 +- core/build.gradle.kts | 4 +- data/build.gradle.kts | 4 +- gradle.properties | 4 +- gradle/libs.versions.toml | 2 +- player/core/build.gradle.kts | 4 +- player/video/build.gradle.kts | 4 +- preferences/build.gradle.kts | 4 +- 32 files changed, 118 insertions(+), 115 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index d3de8a17..f4aea0f7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -13,10 +13,10 @@ jobs: uses: actions/checkout@v3 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: 11 + java-version: 17 distribution: temurin - name: Setup Gradle uses: gradle/gradle-build-action@v2 @@ -30,10 +30,10 @@ jobs: uses: actions/checkout@v3 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 - - name: Set up JDK 11 + - name: Set up JDK 17 uses: actions/setup-java@v3 with: - java-version: 11 + java-version: 17 distribution: temurin - name: Setup Gradle uses: gradle/gradle-build-action@v2 diff --git a/app/phone/build.gradle.kts b/app/phone/build.gradle.kts index 0adbbae6..5a6a014a 100644 --- a/app/phone/build.gradle.kts +++ b/app/phone/build.gradle.kts @@ -55,8 +55,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } buildFeatures { diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/BindingAdapters.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/BindingAdapters.kt index a7812758..71c5014e 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/BindingAdapters.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/BindingAdapters.kt @@ -11,6 +11,7 @@ import dev.jdtech.jellyfin.adapters.HomeEpisodeListAdapter import dev.jdtech.jellyfin.adapters.ServerGridAdapter import dev.jdtech.jellyfin.adapters.ViewItemListAdapter import dev.jdtech.jellyfin.api.JellyfinApi +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.models.Server import dev.jdtech.jellyfin.models.User import java.util.UUID @@ -58,7 +59,7 @@ fun bindItemBackdropById(imageView: ImageView, itemId: UUID) { @BindingAdapter("personImage") fun bindPersonImage(imageView: ImageView, person: BaseItemPerson) { imageView - .loadImage("/items/${person.id}/Images/${ImageType.PRIMARY}", placeholderId = R.drawable.person_placeholder) + .loadImage("/items/${person.id}/Images/${ImageType.PRIMARY}", placeholderId = CoreR.drawable.person_placeholder) .posterDescription(person.name) } @@ -108,13 +109,13 @@ fun bindSeasonPoster(imageView: ImageView, seasonId: UUID) { @BindingAdapter("userImage") fun bindUserImage(imageView: ImageView, user: User) { imageView - .loadImage("/users/${user.id}/Images/${ImageType.PRIMARY}", placeholderId = R.drawable.user_placeholder) + .loadImage("/users/${user.id}/Images/${ImageType.PRIMARY}", placeholderId = CoreR.drawable.user_placeholder) .posterDescription(user.name) } private fun ImageView.loadImage( url: String, - @DrawableRes placeholderId: Int = R.color.neutral_800, + @DrawableRes placeholderId: Int = CoreR.color.neutral_800, @DrawableRes errorPlaceHolderId: Int? = null ): View { val api = JellyfinApi.getInstance(context.applicationContext) @@ -131,9 +132,9 @@ private fun ImageView.loadImage( } private fun View.posterDescription(name: String?) { - contentDescription = context.resources.getString(R.string.image_description_poster, name) + contentDescription = context.resources.getString(CoreR.string.image_description_poster, name) } private fun View.backdropDescription(name: String?) { - contentDescription = context.resources.getString(R.string.image_description_backdrop, name) + contentDescription = context.resources.getString(CoreR.string.image_description_backdrop, name) } diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt index a28f4ceb..46946c0c 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt @@ -13,6 +13,7 @@ import androidx.navigation.ui.NavigationUiSaveStateControl import androidx.navigation.ui.setupActionBarWithNavController import com.google.android.material.navigation.NavigationBarView import dagger.hilt.android.AndroidEntryPoint +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.database.ServerDatabaseDao import dev.jdtech.jellyfin.databinding.ActivityMainBinding import dev.jdtech.jellyfin.utils.loadDownloadLocation @@ -39,7 +40,7 @@ class MainActivity : AppCompatActivity() { super.onCreate(savedInstanceState) if (appPreferences.amoledTheme) { - setTheme(R.style.Theme_FindroidAMOLED) + setTheme(CoreR.style.Theme_FindroidAMOLED) } binding = ActivityMainBinding.inflate(layoutInflater) @@ -81,11 +82,11 @@ class MainActivity : AppCompatActivity() { navController.addOnDestinationChangedListener { _, destination, _ -> binding.navView.visibility = when (destination.id) { - R.id.twoPaneSettingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment, R.id.about_libraries_dest, R.id.usersFragment, R.id.serverAddressesFragment -> View.GONE + R.id.twoPaneSettingsFragment, R.id.serverSelectFragment, R.id.addServerFragment, R.id.loginFragment, com.mikepenz.aboutlibraries.R.id.about_libraries_dest, R.id.usersFragment, R.id.serverAddressesFragment -> View.GONE else -> View.VISIBLE } - if (destination.id == R.id.about_libraries_dest) binding.mainToolbar.title = - getString(R.string.app_info) + if (destination.id == com.mikepenz.aboutlibraries.R.id.about_libraries_dest) binding.mainToolbar.title = + getString(CoreR.string.app_info) } loadDownloadLocation(applicationContext) diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/PlayerActivity.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/PlayerActivity.kt index 07309bea..3962ce22 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/PlayerActivity.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/PlayerActivity.kt @@ -22,6 +22,7 @@ import dev.jdtech.jellyfin.dialogs.SpeedSelectionDialogFragment import dev.jdtech.jellyfin.dialogs.TrackSelectionDialogFragment import dev.jdtech.jellyfin.mpv.MPVPlayer import dev.jdtech.jellyfin.mpv.TrackType +import dev.jdtech.jellyfin.player.video.R as PlayerVideoR import dev.jdtech.jellyfin.utils.PlayerGestureHelper import dev.jdtech.jellyfin.utils.PreviewScrubListener import dev.jdtech.jellyfin.viewmodels.PlayerActivityViewModel @@ -109,7 +110,7 @@ class PlayerActivity : BasePlayerActivity() { val trackSelectionDialogBuilder = TrackSelectionDialogBuilder( this, - resources.getString(R.string.select_audio_track), + resources.getString(PlayerVideoR.string.select_audio_track), viewModel.player, C.TRACK_TYPE_AUDIO ) @@ -142,7 +143,7 @@ class PlayerActivity : BasePlayerActivity() { val trackSelectionDialogBuilder = TrackSelectionDialogBuilder( this, - resources.getString(R.string.select_subtile_track), + resources.getString(PlayerVideoR.string.select_subtile_track), viewModel.player, C.TRACK_TYPE_TEXT ) diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadSeriesListAdapter.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadSeriesListAdapter.kt index 67993d99..650bd285 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadSeriesListAdapter.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadSeriesListAdapter.kt @@ -5,7 +5,7 @@ import android.view.ViewGroup import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.BaseItemBinding import dev.jdtech.jellyfin.models.DownloadSeriesMetadata import dev.jdtech.jellyfin.utils.downloadSeriesMetadataToBaseItemDto @@ -23,7 +23,7 @@ class DownloadSeriesListAdapter( binding.itemCount.text = item.episodes.size.toString() if (fixedWidth) { binding.itemLayout.layoutParams.width = - parent.resources.getDimension(R.dimen.overview_media_width).toInt() + parent.resources.getDimension(CoreR.dimen.overview_media_width).toInt() (binding.itemLayout.layoutParams as ViewGroup.MarginLayoutParams).bottomMargin = 0 } binding.executePendingBindings() diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadViewItemListAdapter.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadViewItemListAdapter.kt index ab629c35..d57795f3 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadViewItemListAdapter.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/DownloadViewItemListAdapter.kt @@ -6,7 +6,7 @@ import android.view.ViewGroup import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.BaseItemBinding import dev.jdtech.jellyfin.models.PlayerItem import dev.jdtech.jellyfin.utils.downloadMetadataToBaseItemDto @@ -24,7 +24,7 @@ class DownloadViewItemListAdapter( binding.itemName.text = item.name binding.itemCount.visibility = View.GONE if (fixedWidth) { - binding.itemLayout.layoutParams.width = parent.resources.getDimension(R.dimen.overview_media_width).toInt() + binding.itemLayout.layoutParams.width = parent.resources.getDimension(CoreR.dimen.overview_media_width).toInt() (binding.itemLayout.layoutParams as ViewGroup.MarginLayoutParams).bottomMargin = 0 } binding.executePendingBindings() diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemListAdapter.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemListAdapter.kt index 67c048bc..b2ff7cbd 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemListAdapter.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemListAdapter.kt @@ -6,7 +6,7 @@ import android.view.ViewGroup import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.BaseItemBinding import org.jellyfin.sdk.model.api.BaseItemDto import org.jellyfin.sdk.model.api.BaseItemKind @@ -25,7 +25,7 @@ class ViewItemListAdapter( if (item.userData?.unplayedItemCount != null && item.userData?.unplayedItemCount!! > 0) View.VISIBLE else View.GONE if (fixedWidth) { binding.itemLayout.layoutParams.width = - parent.resources.getDimension(R.dimen.overview_media_width).toInt() + parent.resources.getDimension(CoreR.dimen.overview_media_width).toInt() (binding.itemLayout.layoutParams as ViewGroup.MarginLayoutParams).bottomMargin = 0 } binding.executePendingBindings() diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemPagingAdapter.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemPagingAdapter.kt index ca8825cb..37e9705d 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemPagingAdapter.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewItemPagingAdapter.kt @@ -6,7 +6,7 @@ import android.view.ViewGroup import androidx.paging.PagingDataAdapter import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.RecyclerView -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.BaseItemBinding import org.jellyfin.sdk.model.api.BaseItemDto import org.jellyfin.sdk.model.api.BaseItemKind @@ -26,7 +26,7 @@ class ViewItemPagingAdapter( if (item.userData?.unplayedItemCount != null && item.userData?.unplayedItemCount!! > 0) View.VISIBLE else View.GONE if (fixedWidth) { binding.itemLayout.layoutParams.width = - parent.resources.getDimension(R.dimen.overview_media_width).toInt() + parent.resources.getDimension(CoreR.dimen.overview_media_width).toInt() (binding.itemLayout.layoutParams as ViewGroup.MarginLayoutParams).bottomMargin = 0 } binding.executePendingBindings() diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewListAdapter.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewListAdapter.kt index bd0b1028..75787a5d 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewListAdapter.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/adapters/ViewListAdapter.kt @@ -5,7 +5,7 @@ import android.view.ViewGroup import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.ListAdapter import androidx.recyclerview.widget.RecyclerView -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.NextUpSectionBinding import dev.jdtech.jellyfin.databinding.ViewItemBinding import dev.jdtech.jellyfin.models.HomeItem @@ -29,7 +29,7 @@ class ViewListAdapter( ) { val view = dataItem.view binding.view = view - binding.viewName.text = binding.viewName.context.resources.getString(R.string.latest_library, view.name) + binding.viewName.text = binding.viewName.context.resources.getString(CoreR.string.latest_library, view.name) binding.itemsRecyclerView.adapter = ViewItemListAdapter(onItemClickListener, fixedWidth = true) binding.viewAll.setOnClickListener { diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/EpisodeBottomSheetFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/EpisodeBottomSheetFragment.kt index 7109bece..2311a3fc 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/EpisodeBottomSheetFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/EpisodeBottomSheetFragment.kt @@ -13,12 +13,13 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs +import com.google.android.material.R as MaterialR import com.google.android.material.bottomsheet.BottomSheetBehavior import com.google.android.material.bottomsheet.BottomSheetDialog import com.google.android.material.bottomsheet.BottomSheetDialogFragment import dagger.hilt.android.AndroidEntryPoint -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.bindBaseItemImage +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.EpisodeBottomSheetBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.models.PlayerItem @@ -91,11 +92,11 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { when (viewModel.played) { true -> { viewModel.markAsUnplayed(episodeId) - binding.checkButton.setTintColorAttribute(R.attr.colorOnSecondaryContainer, requireActivity().theme) + binding.checkButton.setTintColorAttribute(MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme) } false -> { viewModel.markAsPlayed(episodeId) - binding.checkButton.setTintColor(R.color.red, requireActivity().theme) + binding.checkButton.setTintColor(CoreR.color.red, requireActivity().theme) } } } @@ -104,13 +105,13 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { when (viewModel.favorite) { true -> { viewModel.unmarkAsFavorite(episodeId) - binding.favoriteButton.setImageResource(R.drawable.ic_heart) - binding.favoriteButton.setTintColorAttribute(R.attr.colorOnSecondaryContainer, requireActivity().theme) + binding.favoriteButton.setImageResource(CoreR.drawable.ic_heart) + binding.favoriteButton.setTintColorAttribute(MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme) } false -> { viewModel.markAsFavorite(episodeId) - binding.favoriteButton.setImageResource(R.drawable.ic_heart_filled) - binding.favoriteButton.setTintColor(R.color.red, requireActivity().theme) + binding.favoriteButton.setImageResource(CoreR.drawable.ic_heart_filled) + binding.favoriteButton.setTintColor(CoreR.color.red, requireActivity().theme) } } } @@ -118,7 +119,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { binding.downloadButton.setOnClickListener { binding.downloadButton.isEnabled = false viewModel.download() - binding.downloadButton.setTintColor(R.color.red, requireActivity().theme) + binding.downloadButton.setTintColor(CoreR.color.red, requireActivity().theme) } viewModel.loadEpisode(episodeId) @@ -131,7 +132,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { binding.deleteButton.setOnClickListener { viewModel.deleteEpisode() dismiss() - findNavController().navigate(R.id.downloadFragment) + findNavController().navigate(CoreR.id.downloadFragment) } binding.checkButton.isVisible = false @@ -163,7 +164,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { val clickable = canPlay && (available || canRetry) binding.playButton.isEnabled = clickable binding.playButton.alpha = if (!clickable) 0.5F else 1.0F - binding.playButton.setImageResource(if (!canRetry) R.drawable.ic_play else R.drawable.ic_rotate_ccw) + binding.playButton.setImageResource(if (!canRetry) CoreR.drawable.ic_play else CoreR.drawable.ic_rotate_ccw) if (!(available || canRetry)) { binding.playButton.setImageResource(android.R.color.transparent) binding.progressCircular.isVisible = true @@ -171,24 +172,24 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { // Check icon when (played) { - true -> binding.checkButton.setTintColor(R.color.red, requireActivity().theme) - false -> binding.checkButton.setTintColorAttribute(R.attr.colorOnSecondaryContainer, requireActivity().theme) + true -> binding.checkButton.setTintColor(CoreR.color.red, requireActivity().theme) + false -> binding.checkButton.setTintColorAttribute(MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme) } // Favorite icon val favoriteDrawable = when (favorite) { - true -> R.drawable.ic_heart_filled - false -> R.drawable.ic_heart + true -> CoreR.drawable.ic_heart_filled + false -> CoreR.drawable.ic_heart } binding.favoriteButton.setImageResource(favoriteDrawable) - if (favorite) binding.favoriteButton.setTintColor(R.color.red, requireActivity().theme) + if (favorite) binding.favoriteButton.setTintColor(CoreR.color.red, requireActivity().theme) when (canDownload) { true -> { binding.downloadButtonWrapper.isVisible = true binding.downloadButton.isEnabled = !downloaded - if (downloaded) binding.downloadButton.setTintColor(R.color.red, requireActivity().theme) + if (downloaded) binding.downloadButton.setTintColor(CoreR.color.red, requireActivity().theme) } false -> { binding.downloadButtonWrapper.isVisible = false @@ -196,7 +197,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { } binding.episodeName.text = getString( - R.string.episode_name_extended, + CoreR.string.episode_name_extended, episode.parentIndexNumber, episode.indexNumber, episode.name @@ -233,7 +234,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { binding.playButton.setImageDrawable( ContextCompat.getDrawable( requireActivity(), - R.drawable.ic_play + CoreR.drawable.ic_play ) ) binding.progressCircular.visibility = View.INVISIBLE @@ -246,7 +247,7 @@ class EpisodeBottomSheetFragment : BottomSheetDialogFragment() { binding.playButton.setImageDrawable( ContextCompat.getDrawable( requireActivity(), - R.drawable.ic_play + CoreR.drawable.ic_play ) ) binding.progressCircular.visibility = View.INVISIBLE diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/HomeFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/HomeFragment.kt index 3e2c40a9..d39d7d15 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/HomeFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/HomeFragment.kt @@ -21,10 +21,10 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.navigation.fragment.findNavController import dagger.hilt.android.AndroidEntryPoint -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.HomeEpisodeListAdapter import dev.jdtech.jellyfin.adapters.ViewItemListAdapter import dev.jdtech.jellyfin.adapters.ViewListAdapter +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.FragmentHomeBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.utils.checkIfLoginRequired @@ -64,12 +64,12 @@ class HomeFragment : Fragment() { menuHost.addMenuProvider( object : MenuProvider { override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) { - menuInflater.inflate(R.menu.home_menu, menu) + menuInflater.inflate(CoreR.menu.home_menu, menu) - val settings = menu.findItem(R.id.action_settings) - val search = menu.findItem(R.id.action_search) + val settings = menu.findItem(CoreR.id.action_settings) + val search = menu.findItem(CoreR.id.action_search) val searchView = search.actionView as SearchView - searchView.queryHint = getString(R.string.search_hint) + searchView.queryHint = getString(CoreR.string.search_hint) search.setOnActionExpandListener( object : MenuItem.OnActionExpandListener { @@ -101,7 +101,7 @@ class HomeFragment : Fragment() { override fun onMenuItemSelected(menuItem: MenuItem): Boolean { return when (menuItem.itemId) { - R.id.action_settings -> { + CoreR.id.action_settings -> { navigateToSettingsFragment() true } @@ -148,7 +148,7 @@ class HomeFragment : Fragment() { when (item.type) { BaseItemKind.EPISODE -> navigateToEpisodeBottomSheetFragment(item) BaseItemKind.MOVIE -> navigateToMediaInfoFragment(item) - else -> Toast.makeText(requireContext(), R.string.unknown_error, LENGTH_LONG) + else -> Toast.makeText(requireContext(), CoreR.string.unknown_error, LENGTH_LONG) .show() } } diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LibraryFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LibraryFragment.kt index 4ec8fae9..086baac8 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LibraryFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LibraryFragment.kt @@ -20,8 +20,8 @@ import androidx.navigation.fragment.navArgs import androidx.paging.LoadState import dagger.hilt.android.AndroidEntryPoint import dev.jdtech.jellyfin.AppPreferences -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.ViewItemPagingAdapter +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.FragmentLibraryBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.dialogs.SortDialogFragment @@ -63,12 +63,12 @@ class LibraryFragment : Fragment() { menuHost.addMenuProvider( object : MenuProvider { override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) { - menuInflater.inflate(R.menu.library_menu, menu) + menuInflater.inflate(CoreR.menu.library_menu, menu) } override fun onMenuItemSelected(menuItem: MenuItem): Boolean { return when (menuItem.itemId) { - R.id.action_sort_by -> { + CoreR.id.action_sort_by -> { SortDialogFragment( args.libraryId, args.libraryType, @@ -80,7 +80,7 @@ class LibraryFragment : Fragment() { ) true } - R.id.action_sort_order -> { + CoreR.id.action_sort_order -> { SortDialogFragment( args.libraryId, args.libraryType, diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LoginFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LoginFragment.kt index 83ac59bb..f3b46a68 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LoginFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/LoginFragment.kt @@ -16,8 +16,8 @@ import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs import dagger.hilt.android.AndroidEntryPoint import dev.jdtech.jellyfin.AppPreferences -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.UserLoginListAdapter +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.database.ServerDatabaseDao import dev.jdtech.jellyfin.databinding.FragmentLoginBinding import dev.jdtech.jellyfin.viewmodels.LoginViewModel @@ -109,7 +109,7 @@ class LoginFragment : Fragment() { } is LoginViewModel.QuickConnectUiState.Normal -> { binding.buttonQuickconnectLayout.isVisible = true - binding.buttonQuickconnect.text = resources.getString(R.string.quick_connect) + binding.buttonQuickconnect.text = resources.getString(CoreR.string.quick_connect) binding.buttonQuickconnectProgress.isVisible = false } is LoginViewModel.QuickConnectUiState.Waiting -> { diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaFragment.kt index 0b9e5c07..55f5d39c 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaFragment.kt @@ -19,8 +19,8 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.navigation.fragment.findNavController import dagger.hilt.android.AndroidEntryPoint -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.CollectionListAdapter +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.FragmentMediaBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.utils.checkIfLoginRequired @@ -84,11 +84,11 @@ class MediaFragment : Fragment() { menuHost.addMenuProvider( object : MenuProvider { override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) { - menuInflater.inflate(R.menu.media_menu, menu) + menuInflater.inflate(CoreR.menu.media_menu, menu) - val search = menu.findItem(R.id.action_search) + val search = menu.findItem(CoreR.id.action_search) val searchView = search.actionView as SearchView - searchView.queryHint = getString(R.string.search_hint) + searchView.queryHint = getString(CoreR.string.search_hint) searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { override fun onQueryTextSubmit(p0: String?): Boolean { diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaInfoFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaInfoFragment.kt index 260c03f3..deeb145c 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaInfoFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/MediaInfoFragment.kt @@ -16,13 +16,14 @@ import androidx.lifecycle.lifecycleScope import androidx.lifecycle.repeatOnLifecycle import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs +import com.google.android.material.R as MaterialR import dagger.hilt.android.AndroidEntryPoint import dev.jdtech.jellyfin.AppPreferences -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.PersonListAdapter import dev.jdtech.jellyfin.adapters.ViewItemListAdapter import dev.jdtech.jellyfin.bindBaseItemImage import dev.jdtech.jellyfin.bindItemBackdropImage +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.FragmentMediaInfoBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.dialogs.VideoVersionDialogFragment @@ -165,14 +166,14 @@ class MediaInfoFragment : Fragment() { true -> { viewModel.markAsUnplayed(args.itemId) binding.checkButton.setTintColorAttribute( - R.attr.colorOnSecondaryContainer, + MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme ) } false -> { viewModel.markAsPlayed(args.itemId) - binding.checkButton.setTintColor(R.color.red, requireActivity().theme) + binding.checkButton.setTintColor(CoreR.color.red, requireActivity().theme) } } } @@ -181,17 +182,17 @@ class MediaInfoFragment : Fragment() { when (viewModel.favorite) { true -> { viewModel.unmarkAsFavorite(args.itemId) - binding.favoriteButton.setImageResource(R.drawable.ic_heart) + binding.favoriteButton.setImageResource(CoreR.drawable.ic_heart) binding.favoriteButton.setTintColorAttribute( - R.attr.colorOnSecondaryContainer, + MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme ) } false -> { viewModel.markAsFavorite(args.itemId) - binding.favoriteButton.setImageResource(R.drawable.ic_heart_filled) - binding.favoriteButton.setTintColor(R.color.red, requireActivity().theme) + binding.favoriteButton.setImageResource(CoreR.drawable.ic_heart_filled) + binding.favoriteButton.setTintColor(CoreR.color.red, requireActivity().theme) } } } @@ -201,7 +202,7 @@ class MediaInfoFragment : Fragment() { viewModel.download() binding.downloadButton.imageTintList = ColorStateList.valueOf( resources.getColor( - R.color.red, + CoreR.color.red, requireActivity().theme ) ) @@ -214,7 +215,7 @@ class MediaInfoFragment : Fragment() { binding.deleteButton.setOnClickListener { viewModel.deleteItem() - findNavController().navigate(R.id.downloadFragment) + findNavController().navigate(CoreR.id.downloadFragment) } } } @@ -231,7 +232,7 @@ class MediaInfoFragment : Fragment() { val clickable = canPlay && (available || canRetry) binding.playButton.isEnabled = clickable binding.playButton.alpha = if (!clickable) 0.5F else 1.0F - binding.playButton.setImageResource(if (!canRetry) R.drawable.ic_play else R.drawable.ic_rotate_ccw) + binding.playButton.setImageResource(if (!canRetry) CoreR.drawable.ic_play else CoreR.drawable.ic_rotate_ccw) if (!(available || canRetry)) { binding.playButton.setImageResource(android.R.color.transparent) binding.progressCircular.isVisible = true @@ -239,20 +240,20 @@ class MediaInfoFragment : Fragment() { // Check icon when (played) { - true -> binding.checkButton.setTintColor(R.color.red, requireActivity().theme) + true -> binding.checkButton.setTintColor(CoreR.color.red, requireActivity().theme) false -> binding.checkButton.setTintColorAttribute( - R.attr.colorOnSecondaryContainer, + MaterialR.attr.colorOnSecondaryContainer, requireActivity().theme ) } // Favorite icon val favoriteDrawable = when (favorite) { - true -> R.drawable.ic_heart_filled - false -> R.drawable.ic_heart + true -> CoreR.drawable.ic_heart_filled + false -> CoreR.drawable.ic_heart } binding.favoriteButton.setImageResource(favoriteDrawable) - if (favorite) binding.favoriteButton.setTintColor(R.color.red, requireActivity().theme) + if (favorite) binding.favoriteButton.setTintColor(CoreR.color.red, requireActivity().theme) when (canDownload) { true -> { @@ -260,7 +261,7 @@ class MediaInfoFragment : Fragment() { binding.downloadButton.isEnabled = !downloaded if (downloaded) binding.downloadButton.setTintColor( - R.color.red, + CoreR.color.red, requireActivity().theme ) } @@ -355,7 +356,7 @@ class MediaInfoFragment : Fragment() { binding.description.text = item.overview binding.nextUpLayout.isVisible = nextUp != null binding.nextUpName.text = getString( - R.string.episode_name_extended, + CoreR.string.episode_name_extended, nextUp?.parentIndexNumber, nextUp?.indexNumber, nextUp?.name @@ -391,7 +392,7 @@ class MediaInfoFragment : Fragment() { binding.playButton.setImageDrawable( ContextCompat.getDrawable( requireActivity(), - R.drawable.ic_play + CoreR.drawable.ic_play ) ) binding.progressCircular.visibility = View.INVISIBLE @@ -403,7 +404,7 @@ class MediaInfoFragment : Fragment() { binding.playButton.setImageDrawable( ContextCompat.getDrawable( requireActivity(), - R.drawable.ic_play + CoreR.drawable.ic_play ) ) binding.progressCircular.visibility = View.INVISIBLE diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/PersonDetailFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/PersonDetailFragment.kt index 10f28406..742d2899 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/PersonDetailFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/PersonDetailFragment.kt @@ -15,9 +15,9 @@ import androidx.lifecycle.repeatOnLifecycle import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs import dagger.hilt.android.AndroidEntryPoint -import dev.jdtech.jellyfin.R import dev.jdtech.jellyfin.adapters.ViewItemListAdapter import dev.jdtech.jellyfin.bindItemImage +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.databinding.FragmentPersonDetailBinding import dev.jdtech.jellyfin.dialogs.ErrorDialogFragment import dev.jdtech.jellyfin.utils.checkIfLoginRequired @@ -126,11 +126,11 @@ internal class PersonDetailFragment : Fragment() { with(binding.overview) { if (layoutParams.height == ConstraintLayout.LayoutParams.WRAP_CONTENT) { updateLayoutParams { height = ConstraintLayout.LayoutParams.MATCH_CONSTRAINT } - binding.readAll.text = getString(R.string.view_all) + binding.readAll.text = getString(CoreR.string.view_all) binding.overviewGradient.isVisible = true } else { updateLayoutParams { height = ConstraintLayout.LayoutParams.WRAP_CONTENT } - binding.readAll.text = getString(R.string.hide) + binding.readAll.text = getString(CoreR.string.hide) binding.overviewGradient.isVisible = false } } diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt index 277e779f..3913a906 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt @@ -5,12 +5,12 @@ import androidx.appcompat.app.AppCompatDelegate import androidx.preference.ListPreference import androidx.preference.PreferenceFragmentCompat import androidx.preference.SwitchPreferenceCompat -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsAppearanceFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_appearance, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_appearance, rootKey) findPreference("theme")?.setOnPreferenceChangeListener { _, newValue -> when (newValue) { diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsCacheFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsCacheFragment.kt index 09ee661f..c5c20914 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsCacheFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsCacheFragment.kt @@ -4,12 +4,12 @@ import android.os.Bundle import android.text.InputType import androidx.preference.EditTextPreference import androidx.preference.PreferenceFragmentCompat -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsCacheFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_cache, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_cache, rootKey) findPreference("pref_image_cache_size")?.setOnBindEditTextListener { editText -> editText.inputType = InputType.TYPE_CLASS_NUMBER diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDeviceFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDeviceFragment.kt index b4af947a..9eb8c4be 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDeviceFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDeviceFragment.kt @@ -5,7 +5,7 @@ import androidx.fragment.app.viewModels import androidx.preference.EditTextPreference import androidx.preference.PreferenceFragmentCompat import dagger.hilt.android.AndroidEntryPoint -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import dev.jdtech.jellyfin.viewmodels.SettingsDeviceViewModel @AndroidEntryPoint @@ -15,7 +15,7 @@ class SettingsDeviceFragment : PreferenceFragmentCompat() { private val viewModel: SettingsDeviceViewModel by viewModels() override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_device, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_device, rootKey) findPreference("deviceName")?.setOnPreferenceChangeListener { _, name -> viewModel.updateDeviceName(name.toString()) diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDownloadsFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDownloadsFragment.kt index 93d58cc1..b3b1ce2a 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDownloadsFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsDownloadsFragment.kt @@ -2,11 +2,11 @@ package dev.jdtech.jellyfin.fragments import android.os.Bundle import androidx.preference.PreferenceFragmentCompat -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsDownloadsFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_downloads, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_downloads, rootKey) } } diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt index b209e5c5..954ea187 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsFragment.kt @@ -8,7 +8,7 @@ import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import dagger.hilt.android.AndroidEntryPoint import dev.jdtech.jellyfin.AppPreferences -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR import javax.inject.Inject @AndroidEntryPoint @@ -17,7 +17,7 @@ class SettingsFragment : PreferenceFragmentCompat() { lateinit var appPreferences: AppPreferences override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings, rootKey) findPreference("switchServer")?.setOnPreferenceClickListener { findNavController().navigate(TwoPaneSettingsFragmentDirections.actionNavigationSettingsToServerSelectFragment()) diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsLanguageFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsLanguageFragment.kt index 0792803d..2f1b22dc 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsLanguageFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsLanguageFragment.kt @@ -2,11 +2,11 @@ package dev.jdtech.jellyfin.fragments import android.os.Bundle import androidx.preference.PreferenceFragmentCompat -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsLanguageFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_language, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_language, rootKey) } } diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsNetworkFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsNetworkFragment.kt index e55a4fe4..4e6ebfa2 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsNetworkFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsNetworkFragment.kt @@ -5,12 +5,12 @@ import android.text.InputType import androidx.preference.EditTextPreference import androidx.preference.PreferenceFragmentCompat import dev.jdtech.jellyfin.Constants -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsNetworkFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_network, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_network, rootKey) findPreference(Constants.PREF_NETWORK_SOCKET_TIMEOUT)?.setOnBindEditTextListener { editText -> editText.inputType = InputType.TYPE_CLASS_NUMBER diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsPlayerFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsPlayerFragment.kt index 0db0e5eb..bf087b3b 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsPlayerFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsPlayerFragment.kt @@ -7,12 +7,12 @@ import android.text.InputType import androidx.preference.EditTextPreference import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat -import dev.jdtech.jellyfin.R +import dev.jdtech.jellyfin.core.R as CoreR @Suppress("unused") class SettingsPlayerFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - setPreferencesFromResource(R.xml.fragment_settings_player, rootKey) + setPreferencesFromResource(CoreR.xml.fragment_settings_player, rootKey) findPreference("pref_player_seek_back_inc")?.setOnBindEditTextListener { editText -> editText.inputType = InputType.TYPE_CLASS_NUMBER } diff --git a/core/build.gradle.kts b/core/build.gradle.kts index c0859bd4..cac37d69 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -28,8 +28,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } } diff --git a/data/build.gradle.kts b/data/build.gradle.kts index 06d0828b..97d6f537 100644 --- a/data/build.gradle.kts +++ b/data/build.gradle.kts @@ -32,8 +32,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } } diff --git a/gradle.properties b/gradle.properties index 57aa0f4b..bd8db617 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,6 +18,4 @@ android.useAndroidX=true # Kotlin code style for this project: "official" or "obsolete": kotlin.code.style=official android.injected.testOnly=false - -# For compatibility with AGP 7.4. Should be removed when AGP 8.0 is released -android.experimental.legacyTransform.forceNonIncremental=true \ No newline at end of file +android.defaults.buildfeatures.buildconfig=true diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 6b8050e9..d2c73f9f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] aboutlibraries = "10.6.2" -android-plugin = "7.4.2" +android-plugin = "8.0.0" androidx-activity = "1.7.0" androidx-appcompat = "1.6.1" androidx-constraintlayout = "2.1.4" diff --git a/player/core/build.gradle.kts b/player/core/build.gradle.kts index 5fb841e6..ea6bc76e 100644 --- a/player/core/build.gradle.kts +++ b/player/core/build.gradle.kts @@ -26,8 +26,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } } diff --git a/player/video/build.gradle.kts b/player/video/build.gradle.kts index 992de534..17aeaffc 100644 --- a/player/video/build.gradle.kts +++ b/player/video/build.gradle.kts @@ -27,8 +27,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } } diff --git a/preferences/build.gradle.kts b/preferences/build.gradle.kts index 3d3be503..9077c2d5 100644 --- a/preferences/build.gradle.kts +++ b/preferences/build.gradle.kts @@ -24,8 +24,8 @@ android { } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } }