diff options
| author | 2020-08-11 15:35:43 +0000 | |
|---|---|---|
| committer | 2020-08-11 15:35:43 +0000 | |
| commit | c421452ce824fbf7f7f200db5985f965141f413e (patch) | |
| tree | 7e3ccf9957ce1d73de023ab8d7ad806b2f95d0ba | |
| parent | 7bdd9fbd7f447401beb40c3b457a59219e0a13ed (diff) | |
| parent | 05afc4f43bd92c5136dcfcade964240268eaff03 (diff) | |
Merge "Add EBS interface to BatteryController" into rvc-qpr-dev am: 05afc4f43b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12333942
Change-Id: I5d2e8d98aef1137d57136dd10af9ffbe07ea3f2a
5 files changed, 49 insertions, 3 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java b/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java index f2495048bf26..7150e4350304 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/tiles/BatterySaverTile.java @@ -111,6 +111,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(); diff --git a/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContentResolverProvider.kt b/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContentResolverProvider.kt new file mode 100644 index 000000000000..9d05843b42bf --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContentResolverProvider.kt @@ -0,0 +1,24 @@ +/* + * 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 diff --git a/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt b/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt index 825a7f3dbadb..d7c4caaa4f9d 100644 --- a/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt +++ b/packages/SystemUI/src/com/android/systemui/settings/CurrentUserContextTracker.kt @@ -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 @@ -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 @@ -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) { @@ -54,8 +58,8 @@ class CurrentUserContextTracker internal constructor( fun initialize() { initialized = true - _curUserContext = makeUserContext(userTracker.currentUserId) userTracker.startTracking() + _curUserContext = makeUserContext(userTracker.currentUserId) } @VisibleForTesting diff --git a/packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java b/packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java index 2c5c3ceb6e66..eb5bd5c01a78 100644 --- a/packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java +++ b/packages/SystemUI/src/com/android/systemui/settings/dagger/SettingsModule.java @@ -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; @@ -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 @@ -45,4 +47,9 @@ public interface SettingsModule { tracker.initialize(); return tracker; } + + @Binds + @Singleton + abstract CurrentUserContentResolverProvider bindCurrentUserContentResolverTracker( + CurrentUserContextTracker tracker); } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java index 673549ab589f..e5a46797d035 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java @@ -79,6 +79,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. */ @@ -92,6 +99,9 @@ public interface BatteryController extends DemoMode, Dumpable, default void onReverseChanged(boolean isReverse, int level, String name) { } + + default void onExtremeBatterySaverChanged(boolean isExtreme) { + } } /** |