diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt b/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt index f232c6d2e..af42ef6b4 100644 --- a/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt +++ b/app/src/main/java/code/name/monkey/retromusic/activities/ShareInstagramStory.kt @@ -21,7 +21,9 @@ import android.graphics.drawable.GradientDrawable import android.os.Bundle import android.provider.MediaStore.Images.Media import android.view.MenuItem +import androidx.core.content.ContentResolverCompat import androidx.core.net.toUri +import androidx.core.os.BundleCompat import androidx.core.view.drawToBitmap import code.name.monkey.appthemehelper.util.ColorUtil import code.name.monkey.appthemehelper.util.MaterialValueHelper @@ -68,7 +70,7 @@ class ShareInstagramStory : AbsThemeActivity() { binding.toolbar.setBackgroundColor(Color.TRANSPARENT) setSupportActionBar(binding.toolbar) - val song = intent.extras?.getParcelable(EXTRA_SONG) + val song = intent.extras?.let { BundleCompat.getParcelable(it, EXTRA_SONG, Song::class.java) } song?.let { songFinal -> Glide.with(this) .asBitmapPalette() diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/WhatsNewFragment.kt b/app/src/main/java/code/name/monkey/retromusic/activities/WhatsNewFragment.kt index cc5f663cc..10be81731 100644 --- a/app/src/main/java/code/name/monkey/retromusic/activities/WhatsNewFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/activities/WhatsNewFragment.kt @@ -7,6 +7,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.core.content.PackageManagerCompat import androidx.core.content.pm.PackageInfoCompat import androidx.core.widget.NestedScrollView import androidx.fragment.app.FragmentActivity diff --git a/app/src/main/java/code/name/monkey/retromusic/adapter/album/AlbumCoverPagerAdapter.kt b/app/src/main/java/code/name/monkey/retromusic/adapter/album/AlbumCoverPagerAdapter.kt index 1295a8e31..5b371369b 100644 --- a/app/src/main/java/code/name/monkey/retromusic/adapter/album/AlbumCoverPagerAdapter.kt +++ b/app/src/main/java/code/name/monkey/retromusic/adapter/album/AlbumCoverPagerAdapter.kt @@ -19,6 +19,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ImageView +import androidx.core.os.BundleCompat import androidx.core.os.bundleOf import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentManager @@ -103,7 +104,7 @@ class AlbumCoverPagerAdapter( override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if (arguments != null) { - song = requireArguments().getParcelable(SONG_ARG)!! + song = BundleCompat.getParcelable(requireArguments(), SONG_ARG, Song::class.java)!! } } diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt index 5a5c90855..19995db30 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongDetailDialog.kt @@ -19,6 +19,7 @@ import android.content.Context import android.os.Bundle import android.text.Spanned import android.util.Log +import androidx.core.os.BundleCompat import androidx.core.os.bundleOf import androidx.core.text.parseAsHtml import androidx.fragment.app.DialogFragment @@ -38,7 +39,7 @@ class SongDetailDialog : DialogFragment() { val context: Context = requireContext() val binding = DialogFileDetailsBinding.inflate(layoutInflater) - val song = requireArguments().getParcelable(EXTRA_SONG) + val song = BundleCompat.getParcelable(requireArguments(), EXTRA_SONG, Song::class.java) with(binding) { fileName.text = makeTextWithTitle(context, R.string.label_file_name, "-") filePath.text = makeTextWithTitle(context, R.string.label_file_path, "-") diff --git a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt index fcd07664a..fcfad5a5d 100644 --- a/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt +++ b/app/src/main/java/code/name/monkey/retromusic/dialogs/SongShareDialog.kt @@ -17,6 +17,7 @@ package code.name.monkey.retromusic.dialogs import android.app.Dialog import android.content.Intent import android.os.Bundle +import androidx.core.os.BundleCompat import androidx.core.os.bundleOf import androidx.fragment.app.DialogFragment import code.name.monkey.retromusic.EXTRA_SONG @@ -29,7 +30,7 @@ import code.name.monkey.retromusic.util.MusicUtil class SongShareDialog : DialogFragment() { override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { - val song: Song? = requireArguments().getParcelable(EXTRA_SONG) + val song: Song? = BundleCompat.getParcelable(requireArguments(), EXTRA_SONG, Song::class.java) val listening: String = String.format( getString(R.string.currently_listening_to_x_by_x), diff --git a/app/src/main/java/code/name/monkey/retromusic/extensions/ActivityExtensions.kt b/app/src/main/java/code/name/monkey/retromusic/extensions/ActivityExtensions.kt index bf3d9d8cd..043bcbea5 100644 --- a/app/src/main/java/code/name/monkey/retromusic/extensions/ActivityExtensions.kt +++ b/app/src/main/java/code/name/monkey/retromusic/extensions/ActivityExtensions.kt @@ -20,6 +20,7 @@ import android.view.View import android.view.ViewGroup import androidx.annotation.DimenRes import androidx.appcompat.app.AppCompatActivity +import androidx.core.os.BundleCompat import code.name.monkey.appthemehelper.util.ToolbarContentTintHelper import com.google.android.material.appbar.MaterialToolbar diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/folder/FoldersFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/folder/FoldersFragment.kt index 6933cd183..f40e065c7 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/folder/FoldersFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/folder/FoldersFragment.kt @@ -26,6 +26,7 @@ import android.webkit.MimeTypeMap import androidx.activity.OnBackPressedCallback import androidx.appcompat.widget.PopupMenu import androidx.appcompat.widget.Toolbar +import androidx.core.os.BundleCompat import androidx.core.text.parseAsHtml import androidx.core.view.isVisible import androidx.core.view.updateLayoutParams @@ -64,6 +65,7 @@ import code.name.monkey.retromusic.util.ThemedFastScroller.create import code.name.monkey.retromusic.util.getExternalStorageDirectory import code.name.monkey.retromusic.util.getExternalStoragePublicDirectory import code.name.monkey.retromusic.views.BreadCrumbLayout.Crumb +import code.name.monkey.retromusic.views.BreadCrumbLayout.SavedStateWrapper import code.name.monkey.retromusic.views.BreadCrumbLayout.SelectionCallback import com.google.android.material.snackbar.Snackbar import com.google.android.material.transition.MaterialFadeThrough @@ -142,7 +144,7 @@ class FoldersFragment : AbsMainActivityFragment(R.layout.fragment_folder), true ) } else { - binding.breadCrumbs.restoreFromStateWrapper(savedInstanceState.getParcelable(CRUMBS)) + binding.breadCrumbs.restoreFromStateWrapper(BundleCompat.getParcelable(savedInstanceState, CRUMBS, SavedStateWrapper::class.java)) LoaderManager.getInstance(this).initLoader(LOADER_ID, null, this) } } diff --git a/app/src/main/java/code/name/monkey/retromusic/service/MediaButtonIntentReceiver.kt b/app/src/main/java/code/name/monkey/retromusic/service/MediaButtonIntentReceiver.kt index c0bb0768f..0119e9a9c 100644 --- a/app/src/main/java/code/name/monkey/retromusic/service/MediaButtonIntentReceiver.kt +++ b/app/src/main/java/code/name/monkey/retromusic/service/MediaButtonIntentReceiver.kt @@ -26,6 +26,7 @@ import android.util.Log import android.view.KeyEvent import androidx.core.content.ContextCompat import androidx.core.content.getSystemService +import androidx.core.os.BundleCompat import androidx.media.session.MediaButtonReceiver import code.name.monkey.retromusic.BuildConfig import code.name.monkey.retromusic.service.MusicService.Companion.ACTION_PAUSE @@ -91,7 +92,7 @@ class MediaButtonIntentReceiver : MediaButtonReceiver() { println("Intent Action: ${intent.action}") val intentAction = intent.action if (Intent.ACTION_MEDIA_BUTTON == intentAction) { - val event = intent.getParcelableExtra(Intent.EXTRA_KEY_EVENT) + val event = intent.extras?.let { BundleCompat.getParcelable(it, Intent.EXTRA_KEY_EVENT, KeyEvent::class.java) } ?: return false val keycode = event.keyCode diff --git a/app/src/main/java/code/name/monkey/retromusic/service/MusicService.kt b/app/src/main/java/code/name/monkey/retromusic/service/MusicService.kt index 173be0923..03493c155 100644 --- a/app/src/main/java/code/name/monkey/retromusic/service/MusicService.kt +++ b/app/src/main/java/code/name/monkey/retromusic/service/MusicService.kt @@ -40,6 +40,8 @@ import android.widget.Toast import androidx.core.app.ServiceCompat import androidx.core.content.edit import androidx.core.content.getSystemService +import androidx.core.os.BundleCompat +import androidx.core.os.ParcelCompat import androidx.media.MediaBrowserServiceCompat import androidx.preference.PreferenceManager import code.name.monkey.appthemehelper.util.VersionUtils @@ -48,6 +50,7 @@ import code.name.monkey.retromusic.activities.LockScreenActivity import code.name.monkey.retromusic.appwidgets.* import code.name.monkey.retromusic.auto.AutoMediaIDHelper import code.name.monkey.retromusic.auto.AutoMusicProvider +import code.name.monkey.retromusic.extensions.extra import code.name.monkey.retromusic.extensions.showToast import code.name.monkey.retromusic.extensions.toMediaSessionQueue import code.name.monkey.retromusic.extensions.uri @@ -1225,7 +1228,7 @@ class MusicService : MediaBrowserServiceCompat(), } private fun playFromPlaylist(intent: Intent) { - val playlist: AbsSmartPlaylist? = intent.getParcelableExtra(INTENT_EXTRA_PLAYLIST) + val playlist: AbsSmartPlaylist? = intent.extras?.let { BundleCompat.getParcelable(it, INTENT_EXTRA_PLAYLIST, AbsSmartPlaylist::class.java) } val shuffleMode = intent.getIntExtra(INTENT_EXTRA_SHUFFLE_MODE, getShuffleMode()) if (playlist != null) { val playlistSongs = playlist.songs()