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

Commit c9fad939 authored by Jacky Wang's avatar Jacky Wang
Browse files

[Catalyst] Add PreferenceLifecycleContext.requirePreference

Bug: 332201912
Flag: EXEMPT library
Test: N/A
Change-Id: Ic74bf2a0bb2aaaa333db8aa3752c33a523722217
parent 2d0e124d
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -136,6 +136,13 @@ abstract class PreferenceLifecycleContext(context: Context) : ContextWrapper(con
    /** Returns the preference widget object associated with given key. */
    abstract fun <T> findPreference(key: String): T?

    /**
     * Returns the preference widget object associated with given key.
     *
     * @throws NullPointerException if preference is not found
     */
    abstract fun <T : Any> requirePreference(key: String): T

    /** Notifies that preference state of given key is changed and updates preference widget UI. */
    abstract fun notifyPreferenceChange(key: String)

+2 −0
Original line number Diff line number Diff line
@@ -60,6 +60,8 @@ class PreferenceScreenBindingHelper(
            override fun <T> findPreference(key: String) =
                preferenceScreen.findPreference(key) as T?

            override fun <T : Any> requirePreference(key: String) = findPreference<T>(key)!!

            override fun notifyPreferenceChange(key: String) =
                notifyChange(key, CHANGE_REASON_STATE)