Loading packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java +1 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements : mPowerSave ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE; state.icon = mIcon; state.label = mContext.getString(R.string.battery_detail_switch_title); state.secondaryLabel = ""; state.contentDescription = state.label; state.value = mPowerSave; state.expandedAccessibilityClassName = Switch.class.getName(); Loading packages/SystemUI/src/com/android/systemui/settings/CurrentUserContentResolverProvider.kt 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (C) 2020 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.systemui.settings import android.content.ContentResolver interface CurrentUserContentResolverProvider { val currentUserContentResolver: ContentResolver } No newline at end of file packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt +6 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.systemui.settings import android.content.ContentResolver import android.content.Context import android.os.UserHandle import androidx.annotation.VisibleForTesting Loading @@ -31,7 +32,7 @@ import java.lang.IllegalStateException class CurrentUserContextTracker internal constructor( private val sysuiContext: Context, broadcastDispatcher: BroadcastDispatcher ) { ) : CurrentUserContentResolverProvider { private val userTracker: CurrentUserTracker private var initialized = false Loading @@ -44,6 +45,9 @@ class CurrentUserContextTracker internal constructor( return _curUserContext!! } override val currentUserContentResolver: ContentResolver get() = currentUserContext.contentResolver init { userTracker = object : CurrentUserTracker(broadcastDispatcher) { override fun onUserSwitched(newUserId: Int) { Loading @@ -54,8 +58,8 @@ class CurrentUserContextTracker internal constructor( fun initialize() { initialized = true _curUserContext = makeUserContext(userTracker.currentUserId) userTracker.startTracking() _curUserContext = makeUserContext(userTracker.currentUserId) } @VisibleForTesting Loading packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java +8 −1 Original line number Diff line number Diff line Loading @@ -19,10 +19,12 @@ package com.android.systemui.settings.dagger; import android.content.Context; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.settings.CurrentUserContentResolverProvider; import com.android.systemui.settings.CurrentUserContextTracker; import javax.inject.Singleton; import dagger.Binds; import dagger.Module; import dagger.Provides; Loading @@ -30,7 +32,7 @@ import dagger.Provides; * Dagger Module for classes found within the com.android.systemui.settings package. */ @Module public interface SettingsModule { public abstract class SettingsModule { /** * Provides and initializes a CurrentUserContextTracker Loading @@ -45,4 +47,9 @@ public interface SettingsModule { tracker.initialize(); return tracker; } @Binds @Singleton abstract CurrentUserContentResolverProvider bindCurrentUserContentResolverTracker( CurrentUserContextTracker tracker); } packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java +10 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,13 @@ public interface BatteryController extends DemoMode, Dumpable, */ default void setReverseState(boolean isReverse) {} /** * Returns {@code true} if extreme battery saver is on. */ default boolean isExtremeSaverOn() { return false; } /** * A listener that will be notified whenever a change in battery level or power save mode has * occurred. Loading @@ -92,6 +99,9 @@ public interface BatteryController extends DemoMode, Dumpable, default void onReverseChanged(boolean isReverse, int level, String name) { } default void onExtremeBatterySaverChanged(boolean isExtreme) { } } /** Loading Loading
packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java +1 −0 Original line number Diff line number Diff line Loading @@ -130,6 +130,7 @@ public class BatterySaverTile extends QSTileImpl<BooleanState> implements : mPowerSave ? Tile.STATE_ACTIVE : Tile.STATE_INACTIVE; state.icon = mIcon; state.label = mContext.getString(R.string.battery_detail_switch_title); state.secondaryLabel = ""; state.contentDescription = state.label; state.value = mPowerSave; state.expandedAccessibilityClassName = Switch.class.getName(); Loading
packages/SystemUI/src/com/android/systemui/settings/CurrentUserContentResolverProvider.kt 0 → 100644 +24 −0 Original line number Diff line number Diff line /* * Copyright (C) 2020 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.systemui.settings import android.content.ContentResolver interface CurrentUserContentResolverProvider { val currentUserContentResolver: ContentResolver } No newline at end of file
packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt +6 −2 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.systemui.settings import android.content.ContentResolver import android.content.Context import android.os.UserHandle import androidx.annotation.VisibleForTesting Loading @@ -31,7 +32,7 @@ import java.lang.IllegalStateException class CurrentUserContextTracker internal constructor( private val sysuiContext: Context, broadcastDispatcher: BroadcastDispatcher ) { ) : CurrentUserContentResolverProvider { private val userTracker: CurrentUserTracker private var initialized = false Loading @@ -44,6 +45,9 @@ class CurrentUserContextTracker internal constructor( return _curUserContext!! } override val currentUserContentResolver: ContentResolver get() = currentUserContext.contentResolver init { userTracker = object : CurrentUserTracker(broadcastDispatcher) { override fun onUserSwitched(newUserId: Int) { Loading @@ -54,8 +58,8 @@ class CurrentUserContextTracker internal constructor( fun initialize() { initialized = true _curUserContext = makeUserContext(userTracker.currentUserId) userTracker.startTracking() _curUserContext = makeUserContext(userTracker.currentUserId) } @VisibleForTesting Loading
packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java +8 −1 Original line number Diff line number Diff line Loading @@ -19,10 +19,12 @@ package com.android.systemui.settings.dagger; import android.content.Context; import com.android.systemui.broadcast.BroadcastDispatcher; import com.android.systemui.settings.CurrentUserContentResolverProvider; import com.android.systemui.settings.CurrentUserContextTracker; import javax.inject.Singleton; import dagger.Binds; import dagger.Module; import dagger.Provides; Loading @@ -30,7 +32,7 @@ import dagger.Provides; * Dagger Module for classes found within the com.android.systemui.settings package. */ @Module public interface SettingsModule { public abstract class SettingsModule { /** * Provides and initializes a CurrentUserContextTracker Loading @@ -45,4 +47,9 @@ public interface SettingsModule { tracker.initialize(); return tracker; } @Binds @Singleton abstract CurrentUserContentResolverProvider bindCurrentUserContentResolverTracker( CurrentUserContextTracker tracker); }
packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java +10 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,13 @@ public interface BatteryController extends DemoMode, Dumpable, */ default void setReverseState(boolean isReverse) {} /** * Returns {@code true} if extreme battery saver is on. */ default boolean isExtremeSaverOn() { return false; } /** * A listener that will be notified whenever a change in battery level or power save mode has * occurred. Loading @@ -92,6 +99,9 @@ public interface BatteryController extends DemoMode, Dumpable, default void onReverseChanged(boolean isReverse, int level, String name) { } default void onExtremeBatterySaverChanged(boolean isExtreme) { } } /** Loading