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

Commit c4004377 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "[Catalyst] Update PreferenceLifecycleContext.notifyPreferenceChange" into main

parents 770df52e 83708d44
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ class DataSaverMainSwitchPreference(context: Context) :
    private var dataSaverBackendListener: DataSaverBackend.Listener? = null

    override val key
        get() = "use_data_saver"
        get() = KEY

    override val title
        get() = R.string.data_saver_switch_title
@@ -46,7 +46,7 @@ class DataSaverMainSwitchPreference(context: Context) :
        ReadWritePermit.ALLOW

    override fun onStart(context: PreferenceLifecycleContext) {
        val listener = DataSaverBackend.Listener { context.notifyPreferenceChange(this) }
        val listener = DataSaverBackend.Listener { context.notifyPreferenceChange(KEY) }
        dataSaverBackendListener = listener
        dataSaverBackend.addListener(listener)
    }
@@ -71,4 +71,8 @@ class DataSaverMainSwitchPreference(context: Context) :
            dataSaverBackend.isDataSaverEnabled = value as Boolean
        }
    }

    companion object {
        const val KEY = "use_data_saver"
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -71,7 +71,7 @@ class DataSaverScreen :
    override fun hasCompleteHierarchy() = false

    override fun onStart(context: PreferenceLifecycleContext) {
        val listener = DataSaverBackend.Listener { context.notifyPreferenceChange(this) }
        val listener = DataSaverBackend.Listener { context.notifyPreferenceChange(KEY) }
        dataSaverBackendListener = listener
        dataSaverBackend = DataSaverBackend(context).apply { addListener(listener) }
    }
+2 −2
Original line number Diff line number Diff line
@@ -101,7 +101,7 @@ class AdaptiveSleepPreference :
        val receiver =
            object : BroadcastReceiver() {
                override fun onReceive(receiverContext: Context, intent: Intent) {
                    context.notifyPreferenceChange(this@AdaptiveSleepPreference)
                    context.notifyPreferenceChange(KEY)
                }
            }
        context.registerReceiver(
@@ -111,7 +111,7 @@ class AdaptiveSleepPreference :
        broadcastReceiver = receiver

        val listener = OnSensorPrivacyChangedListener { _, _ ->
            context.notifyPreferenceChange(this)
            context.notifyPreferenceChange(KEY)
        }
        SensorPrivacyManager.getInstance(context).addSensorPrivacyListener(CAMERA, listener)
        sensorPrivacyChangedListener = listener
+7 −6
Original line number Diff line number Diff line
@@ -58,7 +58,7 @@ class BrightnessLevelPreference :
    private var displayListener: DisplayListener? = null

    override val key: String
        get() = "brightness"
        get() = KEY

    override val title: Int
        get() = R.string.brightness
@@ -85,10 +85,7 @@ class BrightnessLevelPreference :
    }

    override fun onStart(context: PreferenceLifecycleContext) {
        val observer =
            KeyedObserver<String> { _, _ ->
                context.notifyPreferenceChange(this@BrightnessLevelPreference)
            }
        val observer = KeyedObserver<String> { _, _ -> context.notifyPreferenceChange(KEY) }
        brightnessObserver = observer
        SettingsSystemStore.get(context)
            .addObserver(System.SCREEN_AUTO_BRIGHTNESS_ADJ, observer, HandlerExecutor.main)
@@ -100,7 +97,7 @@ class BrightnessLevelPreference :
                override fun onDisplayRemoved(displayId: Int) {}

                override fun onDisplayChanged(displayId: Int) {
                    context.notifyPreferenceChange(this@BrightnessLevelPreference)
                    context.notifyPreferenceChange(KEY)
                }
            }
        displayListener = listener
@@ -162,5 +159,9 @@ class BrightnessLevelPreference :
            value < GAMMA_SPACE_MIN -> 0.0
            else -> (value - GAMMA_SPACE_MIN) / (GAMMA_SPACE_MAX - GAMMA_SPACE_MIN)
        }

    companion object {
        const val KEY = "brightness"
    }
}
// LINT.ThenChange(BrightnessLevelPreferenceController.java)
+9 −9
Original line number Diff line number Diff line
@@ -39,7 +39,7 @@ import kotlin.math.roundToInt

// LINT.IfChange
class PeakRefreshRateSwitchPreference :
    SwitchPreference(PEAK_REFRESH_RATE, R.string.peak_refresh_rate_title),
    SwitchPreference(KEY, R.string.peak_refresh_rate_title),
    PreferenceAvailabilityProvider,
    PreferenceSummaryProvider,
    PreferenceLifecycleProvider {
@@ -69,7 +69,7 @@ class PeakRefreshRateSwitchPreference :
                // KEY_PEAK_REFRESH_RATE_DEFAULT value could be added, changed, removed or
                // unchanged.
                // Just force a UI update for any case.
                context.notifyPreferenceChange(this)
                context.notifyPreferenceChange(KEY)
            }

        propertiesChangedListener = listener
@@ -97,14 +97,13 @@ class PeakRefreshRateSwitchPreference :
        override fun contains(key: String) = settingsStore.contains(key)

        override fun <T : Any> getDefaultValue(key: String, valueType: Class<T>): T? {
            if (key != PEAK_REFRESH_RATE) return super.getDefaultValue(key, valueType)
            if (key != KEY) return super.getDefaultValue(key, valueType)
            return context.defaultPeakRefreshRate.refreshRateAsBoolean(context) as T
        }

        override fun <T : Any> getValue(key: String, valueType: Class<T>): T? {
            if (key != PEAK_REFRESH_RATE) return null
            val refreshRate =
                settingsStore.getFloat(PEAK_REFRESH_RATE) ?: context.defaultPeakRefreshRate
            if (key != KEY) return null
            val refreshRate = settingsStore.getFloat(KEY) ?: context.defaultPeakRefreshRate
            return refreshRate.refreshRateAsBoolean(context) as T
        }

@@ -113,12 +112,12 @@ class PeakRefreshRateSwitchPreference :

        override fun <T : Any> setValue(key: String, valueType: Class<T>, value: T?) =
            when {
                key != PEAK_REFRESH_RATE -> {}
                value == null -> settingsStore.setFloat(PEAK_REFRESH_RATE, null)
                key != KEY -> {}
                value == null -> settingsStore.setFloat(KEY, null)
                else -> {
                    val peakRefreshRate =
                        if (value as Boolean) context.refreshRateIfON() else DEFAULT_REFRESH_RATE
                    settingsStore.setFloat(PEAK_REFRESH_RATE, peakRefreshRate)
                    settingsStore.setFloat(KEY, peakRefreshRate)
                }
            }

@@ -130,6 +129,7 @@ class PeakRefreshRateSwitchPreference :
    }

    companion object {
        const val KEY = PEAK_REFRESH_RATE
        private const val INVALIDATE_REFRESH_RATE: Float = -1f

        private val Context.peakRefreshRate: Float
Loading