Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fd1b1f83 authored by Hawkwood Glazier's avatar Hawkwood Glazier Committed by Automerger Merge Worker
Browse files

Merge "Changing the system theme no longer causes a UMO flicker" into tm-dev...

Merge "Changing the system theme no longer causes a UMO flicker" into tm-dev am: fc279777 am: 89dfd5b4 am: 34ecf02b

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18392069



Change-Id: I05cff0d8feac80ab6a8d919be50d6e96e53f06b8
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 7cc0984b 34ecf02b
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -150,12 +150,13 @@ class MediaCarouselController @Inject constructor(
        }
    private val configListener = object : ConfigurationController.ConfigurationListener {
        override fun onDensityOrFontScaleChanged() {
            recreatePlayers()
            // System font changes should only happen when UMO is offscreen or a flicker may occur
            updatePlayers(recreateMedia = true)
            inflateSettingsButton()
        }

        override fun onThemeChanged() {
            recreatePlayers()
            updatePlayers(recreateMedia = false)
            inflateSettingsButton()
        }

@@ -165,7 +166,7 @@ class MediaCarouselController @Inject constructor(
        }

        override fun onUiModeChanged() {
            recreatePlayers()
            updatePlayers(recreateMedia = false)
            inflateSettingsButton()
        }
    }
@@ -539,7 +540,7 @@ class MediaCarouselController @Inject constructor(
        }
    }

    private fun recreatePlayers() {
    private fun updatePlayers(recreateMedia: Boolean) {
        pageIndicator.tintList = ColorStateList.valueOf(
            context.getColor(R.color.media_paging_indicator)
        )
@@ -554,7 +555,9 @@ class MediaCarouselController @Inject constructor(
                }
            } else {
                val isSsReactivated = MediaPlayerData.isSsReactivated(key)
                if (recreateMedia) {
                    removePlayer(key, dismissMediaData = false, dismissRecommendation = false)
                }
                addOrUpdatePlayer(
                        key = key, oldKey = null, data = data, isSsReactivated = isSsReactivated)
            }