From dbaf396f810bf269bc0a3100df5990d6040ddecd Mon Sep 17 00:00:00 2001 From: Prathamesh More Date: Sat, 18 Mar 2023 15:56:18 +0530 Subject: [PATCH] fix: Remove Album art on lock screen setting on A13+ devices --- .../fragments/settings/PersonalizeSettingsFragment.kt | 3 +++ .../code/name/monkey/retromusic/service/MusicService.kt | 9 ++++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/settings/PersonalizeSettingsFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/settings/PersonalizeSettingsFragment.kt index f02727d20..f796d40e4 100644 --- a/app/src/main/java/code/name/monkey/retromusic/fragments/settings/PersonalizeSettingsFragment.kt +++ b/app/src/main/java/code/name/monkey/retromusic/fragments/settings/PersonalizeSettingsFragment.kt @@ -19,6 +19,7 @@ import android.view.View import code.name.monkey.appthemehelper.common.prefs.supportv7.ATEListPreference import code.name.monkey.appthemehelper.common.prefs.supportv7.ATESwitchPreference import code.name.monkey.appthemehelper.util.VersionUtils +import code.name.monkey.retromusic.ALBUM_ART_ON_LOCK_SCREEN import code.name.monkey.retromusic.APPBAR_MODE import code.name.monkey.retromusic.BLURRED_ALBUM_ART import code.name.monkey.retromusic.HOME_ALBUM_GRID_STYLE @@ -40,6 +41,8 @@ class PersonalizeSettingsFragment : AbsSettingsFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + val albumArtOnLockscreen: ATESwitchPreference? = findPreference(ALBUM_ART_ON_LOCK_SCREEN) + albumArtOnLockscreen?.isVisible = !VersionUtils.hasT() val homeArtistStyle: ATEListPreference? = findPreference(HOME_ARTIST_GRID_STYLE) homeArtistStyle?.setOnPreferenceChangeListener { preference, newValue -> 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 bb3ad50d2..a800f5322 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 @@ -38,6 +38,7 @@ import android.support.v4.media.session.PlaybackStateCompat import android.util.Log import android.widget.Toast import androidx.core.app.ServiceCompat +import androidx.core.content.ContextCompat import androidx.core.content.edit import androidx.core.content.getSystemService import androidx.core.os.BundleCompat @@ -289,8 +290,8 @@ class MusicService : MediaBrowserServiceCompat(), setupMediaSession() uiThreadHandler = Handler(Looper.getMainLooper()) - registerReceiver(widgetIntentReceiver, IntentFilter(APP_WIDGET_UPDATE)) - registerReceiver(updateFavoriteReceiver, IntentFilter(FAVORITE_STATE_CHANGED)) + ContextCompat.registerReceiver(this, widgetIntentReceiver, IntentFilter(APP_WIDGET_UPDATE), ContextCompat.RECEIVER_NOT_EXPORTED) + ContextCompat.registerReceiver(this, updateFavoriteReceiver, IntentFilter(FAVORITE_STATE_CHANGED), ContextCompat.RECEIVER_NOT_EXPORTED) registerReceiver(lockScreenReceiver, IntentFilter(Intent.ACTION_SCREEN_ON)) sessionToken = mediaSession?.sessionToken notificationManager = getSystemService() @@ -1048,7 +1049,9 @@ class MusicService : MediaBrowserServiceCompat(), .putBitmap(MediaMetadataCompat.METADATA_KEY_ALBUM_ART, null) .putLong(MediaMetadataCompat.METADATA_KEY_NUM_TRACKS, playingQueue.size.toLong()) - if (isAlbumArtOnLockScreen) { + // We must send the album art in METADATA_KEY_ALBUM_ART key on A13+ or + // else album art is blurry in notification + if (isAlbumArtOnLockScreen || VersionUtils.hasT()) { // val screenSize: Point = RetroUtil.getScreenSize(this) val request = Glide.with(this) .asBitmap()