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

Commit 5700104b authored by Sunny Shao's avatar Sunny Shao
Browse files

[Catalyst] Implement metrics/tags for "Remove Animation"

NO_IFTTT=Catalyst only

Bug: 394002861
Flag: com.android.settings.flags.catalyst
Test: devtool
Change-Id: I2891c31de419294324e8c7e17cd191a370cfa305
parent 089e6378
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -17,9 +17,12 @@
package com.android.settings.accessibility

import android.annotation.DrawableRes
import android.app.settings.SettingsEnums.ACTION_REMOVE_ANIMATION
import android.content.Context
import android.provider.Settings
import com.android.settings.PreferenceActionMetricsProvider
import com.android.settings.R
import com.android.settings.contract.KEY_REMOVE_ANIMATION
import com.android.settingslib.datastore.HandlerExecutor
import com.android.settingslib.datastore.KeyValueStore
import com.android.settingslib.datastore.KeyedObserver
@@ -37,6 +40,7 @@ class RemoveAnimationsPreference :
        R.string.accessibility_disable_animations,
        R.string.accessibility_disable_animations_summary,
    ),
    PreferenceActionMetricsProvider,
    PreferenceLifecycleProvider {

    private var mSettingsKeyedObserver: KeyedObserver<String>? = null
@@ -44,6 +48,11 @@ class RemoveAnimationsPreference :
    override val icon: Int
        @DrawableRes get() = R.drawable.ic_accessibility_animation

    override val preferenceActionMetrics: Int
        get() = ACTION_REMOVE_ANIMATION

    override fun tags(context: Context) = arrayOf(KEY_REMOVE_ANIMATION)

    override fun onStart(context: PreferenceLifecycleContext) {
        val observer = KeyedObserver<String> { _, _ -> context.notifyPreferenceChange(KEY) }
        mSettingsKeyedObserver = observer