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

Commit bcf5c853 authored by Matt Pietal's avatar Matt Pietal
Browse files

Media - Remove before adding for config changes

Views were not properly getting reinflated due to font/display size
changes. When this happens, remove the views and recreate them.

Fixes: 168812862
Test: manual, follow bug steps
Change-Id: I1390110f33eb9ac9a7c616fbde281186c34d2f3d
parent 29bedbcd
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -274,7 +274,7 @@ class MediaCarouselController @Inject constructor(
        }
    }

    private fun removePlayer(key: String) {
    private fun removePlayer(key: String, dismissMediaData: Boolean = true) {
        val removed = MediaPlayerData.removeMediaPlayer(key)
        removed?.apply {
            mediaCarouselScrollHandler.onPrePlayerRemoved(removed)
@@ -283,13 +283,16 @@ class MediaCarouselController @Inject constructor(
            mediaCarouselScrollHandler.onPlayersChanged()
            updatePageIndicator()

            if (dismissMediaData) {
                // Inform the media manager of a potentially late dismissal
                mediaManager.dismissMediaData(key, 0L)
            }
        }
    }

    private fun recreatePlayers() {
        MediaPlayerData.mediaData().forEach { (key, data) ->
            removePlayer(key, dismissMediaData = false)
            addOrUpdatePlayer(key = key, oldKey = null, data = data)
        }
    }