Loading packages/SystemUI/res/layout/status_bar.xml +10 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,16 @@ android:layout_marginBottom="2px" android:layout_marginStart="4dip" /> <com.android.systemui.statusbar.policy.CircleBattery android:id="@+id/circle_battery" android:layout_width="16dp" android:layout_height="16dp" android:layout_marginStart="4dip" android:layout_marginBottom="2px" android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:singleLine="true" android:gravity="bottom" /> </LinearLayout> <com.android.systemui.statusbar.policy.Clock Loading packages/SystemUI/res/values/styles.xml +7 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,13 @@ <item name="android:textColor">#FFFFFFFF</item> </style> <style name="TextAppearance.StatusBar.Battery" parent="@*android:style/TextAppearance.StatusBar.Icon"> <!-- Note: must be dp to fit in status bar --> <item name="android:textSize">12dp</item> <item name="android:textStyle">normal</item> <item name="android:textColor">@color/status_bar_clock_color</item> </style> <style name="TextAppearance.StatusBar.Clock" parent="@*android:style/TextAppearance.StatusBar.Icon"> <!-- Note: must be dp to fit in status bar --> <item name="android:textSize">16dp</item> Loading packages/SystemUI/src/com/android/systemui/quicksettings/BatteryTile.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ public class BatteryTile extends QuickSettingsTile implements BatteryStateChange } @Override public void onBatteryLevelChanged(int level, boolean pluggedIn) { public void onBatteryLevelChanged(int level, boolean pluggedIn, int status) { mBatteryLevel = level; mPluggedIn = pluggedIn; updateResources(); Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +38 −11 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.internal.statusbar.StatusBarIcon; import com.android.systemui.DemoMode; import com.android.systemui.EventLogTags; import com.android.systemui.R; import com.android.systemui.BatteryMeterView; import com.android.systemui.statusbar.BaseStatusBar; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.GestureRecorder; Loading @@ -103,6 +104,7 @@ import com.android.systemui.statusbar.SignalClusterView; import com.android.systemui.statusbar.StatusBarIconView; import com.android.systemui.statusbar.policy.BatteryController; import com.android.systemui.statusbar.policy.BluetoothController; import com.android.systemui.statusbar.policy.CircleBattery; import com.android.systemui.statusbar.policy.DateView; import com.android.systemui.statusbar.policy.HeadsUpNotificationView; import com.android.systemui.statusbar.policy.LocationController; Loading Loading @@ -153,6 +155,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { private static final int BRIGHTNESS_CONTROL_LONG_PRESS_TIMEOUT = 750; // ms private static final int BRIGHTNESS_CONTROL_LINGER_THRESHOLD = 20; private static final int BATTERY_STYLE_NORMAL = 0; private static final int BATTERY_STYLE_CIRCLE = 2; private static final int BATTERY_STYLE_CIRCLE_PERCENT = 3; private static final int BATTERY_STYLE_GONE = 4; // fling gesture tuning parameters, scaled to display density private float mSelfExpandVelocityPx; // classic value: 2000px/s private float mSelfCollapseVelocityPx; // classic value: 2000px/s (will be negated to collapse "up") Loading Loading @@ -246,6 +253,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { private boolean mShowCarrierInPanel = false; private BatteryMeterView mBatteryView; private CircleBattery mCircleBatteryView; // position int[] mPositionTmp = new int[2]; boolean mExpandedVisible; Loading Loading @@ -348,21 +358,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL), false, this); resolver.registerContentObserver(Settings.System.getUriFor( Settings.System.SCREEN_BRIGHTNESS_MODE), false, this); update(); resolver.registerContentObserver(Settings.System.getUriFor( Settings.System.STATUS_BAR_BATTERY), false, this); updateSettings(); } @Override public void onChange(boolean selfChange) { update(); } public void update() { ContentResolver resolver = mContext.getContentResolver(); boolean autoBrightness = Settings.System.getInt( resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, 0) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; mBrightnessControl = !autoBrightness && Settings.System.getInt( resolver, Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL, 0) == 1; updateSettings(); } } Loading Loading @@ -680,6 +683,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { final SignalClusterView signalCluster = (SignalClusterView)mStatusBarView.findViewById(R.id.signal_cluster); mBatteryView = (BatteryMeterView) mStatusBarView.findViewById(R.id.battery); mCircleBatteryView = (CircleBattery) mStatusBarView.findViewById(R.id.circle_battery); mBatteryController.addStateChangedCallback(mCircleBatteryView); mNetworkController.addSignalCluster(signalCluster); signalCluster.setNetworkController(mNetworkController); Loading Loading @@ -2825,12 +2831,33 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { animateCollapsePanels(); updateNotificationIcons(); resetUserSetupObserver(); updateSettings(); if (mNavigationBarView != null) { mNavigationBarView.updateSettings(); } super.userSwitched(newUserId); } private void updateSettings() { ContentResolver resolver = mContext.getContentResolver(); //XXX: multi-user correct? boolean autoBrightness = Settings.System.getInt( resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, 0) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; mBrightnessControl = !autoBrightness && Settings.System.getInt( resolver, Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL, 0) == 1; int batteryStyle = Settings.System.getInt(resolver, Settings.System.STATUS_BAR_BATTERY, BATTERY_STYLE_NORMAL); boolean meterVisible = batteryStyle == BATTERY_STYLE_NORMAL; boolean circleVisible = batteryStyle == BATTERY_STYLE_CIRCLE || batteryStyle == BATTERY_STYLE_CIRCLE_PERCENT; mBatteryView.setVisibility(meterVisible ? View.VISIBLE : View.GONE); mCircleBatteryView.setVisibility(circleVisible ? View.VISIBLE : View.GONE); mCircleBatteryView.setShowPercent(batteryStyle == BATTERY_STYLE_CIRCLE_PERCENT); } private void resetUserSetupObserver() { mContext.getContentResolver().unregisterContentObserver(mUserSetupObserver); mUserSetupObserver.onChange(false); Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarTransitions.java +6 −2 Original line number Diff line number Diff line Loading @@ -32,7 +32,8 @@ public final class PhoneStatusBarTransitions extends BarTransitions { private final PhoneStatusBarView mView; private final float mIconAlphaWhenOpaque; private View mLeftSide, mStatusIcons, mSignalCluster, mBattery, mClock; private View mLeftSide, mStatusIcons, mSignalCluster, mClock; private View mBattery, mCircleBattery; private Animator mCurrentAnimation; public PhoneStatusBarTransitions(PhoneStatusBarView view) { Loading @@ -47,6 +48,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { mStatusIcons = mView.findViewById(R.id.statusIcons); mSignalCluster = mView.findViewById(R.id.signal_cluster); mBattery = mView.findViewById(R.id.battery); mCircleBattery = mView.findViewById(R.id.circle_battery); mClock = mView.findViewById(R.id.clock); applyModeBackground(-1, getMode(), false /*animate*/); applyMode(getMode(), false /*animate*/); Loading Loading @@ -91,6 +93,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { animateTransitionTo(mStatusIcons, newAlpha), animateTransitionTo(mSignalCluster, newAlpha), animateTransitionTo(mBattery, newAlphaBC), animateTransitionTo(mCircleBattery, newAlphaBC), animateTransitionTo(mClock, newAlphaBC) ); if (mode == MODE_LIGHTS_OUT) { Loading @@ -103,6 +106,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { mStatusIcons.setAlpha(newAlpha); mSignalCluster.setAlpha(newAlpha); mBattery.setAlpha(newAlphaBC); mCircleBattery.setAlpha(newAlphaBC); mClock.setAlpha(newAlphaBC); } } Loading Loading
packages/SystemUI/res/layout/status_bar.xml +10 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,16 @@ android:layout_marginBottom="2px" android:layout_marginStart="4dip" /> <com.android.systemui.statusbar.policy.CircleBattery android:id="@+id/circle_battery" android:layout_width="16dp" android:layout_height="16dp" android:layout_marginStart="4dip" android:layout_marginBottom="2px" android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:singleLine="true" android:gravity="bottom" /> </LinearLayout> <com.android.systemui.statusbar.policy.Clock Loading
packages/SystemUI/res/values/styles.xml +7 −0 Original line number Diff line number Diff line Loading @@ -52,6 +52,13 @@ <item name="android:textColor">#FFFFFFFF</item> </style> <style name="TextAppearance.StatusBar.Battery" parent="@*android:style/TextAppearance.StatusBar.Icon"> <!-- Note: must be dp to fit in status bar --> <item name="android:textSize">12dp</item> <item name="android:textStyle">normal</item> <item name="android:textColor">@color/status_bar_clock_color</item> </style> <style name="TextAppearance.StatusBar.Clock" parent="@*android:style/TextAppearance.StatusBar.Icon"> <!-- Note: must be dp to fit in status bar --> <item name="android:textSize">16dp</item> Loading
packages/SystemUI/src/com/android/systemui/quicksettings/BatteryTile.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ public class BatteryTile extends QuickSettingsTile implements BatteryStateChange } @Override public void onBatteryLevelChanged(int level, boolean pluggedIn) { public void onBatteryLevelChanged(int level, boolean pluggedIn, int status) { mBatteryLevel = level; mPluggedIn = pluggedIn; updateResources(); Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +38 −11 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ import com.android.internal.statusbar.StatusBarIcon; import com.android.systemui.DemoMode; import com.android.systemui.EventLogTags; import com.android.systemui.R; import com.android.systemui.BatteryMeterView; import com.android.systemui.statusbar.BaseStatusBar; import com.android.systemui.statusbar.CommandQueue; import com.android.systemui.statusbar.GestureRecorder; Loading @@ -103,6 +104,7 @@ import com.android.systemui.statusbar.SignalClusterView; import com.android.systemui.statusbar.StatusBarIconView; import com.android.systemui.statusbar.policy.BatteryController; import com.android.systemui.statusbar.policy.BluetoothController; import com.android.systemui.statusbar.policy.CircleBattery; import com.android.systemui.statusbar.policy.DateView; import com.android.systemui.statusbar.policy.HeadsUpNotificationView; import com.android.systemui.statusbar.policy.LocationController; Loading Loading @@ -153,6 +155,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { private static final int BRIGHTNESS_CONTROL_LONG_PRESS_TIMEOUT = 750; // ms private static final int BRIGHTNESS_CONTROL_LINGER_THRESHOLD = 20; private static final int BATTERY_STYLE_NORMAL = 0; private static final int BATTERY_STYLE_CIRCLE = 2; private static final int BATTERY_STYLE_CIRCLE_PERCENT = 3; private static final int BATTERY_STYLE_GONE = 4; // fling gesture tuning parameters, scaled to display density private float mSelfExpandVelocityPx; // classic value: 2000px/s private float mSelfCollapseVelocityPx; // classic value: 2000px/s (will be negated to collapse "up") Loading Loading @@ -246,6 +253,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { private boolean mShowCarrierInPanel = false; private BatteryMeterView mBatteryView; private CircleBattery mCircleBatteryView; // position int[] mPositionTmp = new int[2]; boolean mExpandedVisible; Loading Loading @@ -348,21 +358,14 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL), false, this); resolver.registerContentObserver(Settings.System.getUriFor( Settings.System.SCREEN_BRIGHTNESS_MODE), false, this); update(); resolver.registerContentObserver(Settings.System.getUriFor( Settings.System.STATUS_BAR_BATTERY), false, this); updateSettings(); } @Override public void onChange(boolean selfChange) { update(); } public void update() { ContentResolver resolver = mContext.getContentResolver(); boolean autoBrightness = Settings.System.getInt( resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, 0) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; mBrightnessControl = !autoBrightness && Settings.System.getInt( resolver, Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL, 0) == 1; updateSettings(); } } Loading Loading @@ -680,6 +683,9 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { final SignalClusterView signalCluster = (SignalClusterView)mStatusBarView.findViewById(R.id.signal_cluster); mBatteryView = (BatteryMeterView) mStatusBarView.findViewById(R.id.battery); mCircleBatteryView = (CircleBattery) mStatusBarView.findViewById(R.id.circle_battery); mBatteryController.addStateChangedCallback(mCircleBatteryView); mNetworkController.addSignalCluster(signalCluster); signalCluster.setNetworkController(mNetworkController); Loading Loading @@ -2825,12 +2831,33 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode { animateCollapsePanels(); updateNotificationIcons(); resetUserSetupObserver(); updateSettings(); if (mNavigationBarView != null) { mNavigationBarView.updateSettings(); } super.userSwitched(newUserId); } private void updateSettings() { ContentResolver resolver = mContext.getContentResolver(); //XXX: multi-user correct? boolean autoBrightness = Settings.System.getInt( resolver, Settings.System.SCREEN_BRIGHTNESS_MODE, 0) == Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC; mBrightnessControl = !autoBrightness && Settings.System.getInt( resolver, Settings.System.STATUS_BAR_BRIGHTNESS_CONTROL, 0) == 1; int batteryStyle = Settings.System.getInt(resolver, Settings.System.STATUS_BAR_BATTERY, BATTERY_STYLE_NORMAL); boolean meterVisible = batteryStyle == BATTERY_STYLE_NORMAL; boolean circleVisible = batteryStyle == BATTERY_STYLE_CIRCLE || batteryStyle == BATTERY_STYLE_CIRCLE_PERCENT; mBatteryView.setVisibility(meterVisible ? View.VISIBLE : View.GONE); mCircleBatteryView.setVisibility(circleVisible ? View.VISIBLE : View.GONE); mCircleBatteryView.setShowPercent(batteryStyle == BATTERY_STYLE_CIRCLE_PERCENT); } private void resetUserSetupObserver() { mContext.getContentResolver().unregisterContentObserver(mUserSetupObserver); mUserSetupObserver.onChange(false); Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBarTransitions.java +6 −2 Original line number Diff line number Diff line Loading @@ -32,7 +32,8 @@ public final class PhoneStatusBarTransitions extends BarTransitions { private final PhoneStatusBarView mView; private final float mIconAlphaWhenOpaque; private View mLeftSide, mStatusIcons, mSignalCluster, mBattery, mClock; private View mLeftSide, mStatusIcons, mSignalCluster, mClock; private View mBattery, mCircleBattery; private Animator mCurrentAnimation; public PhoneStatusBarTransitions(PhoneStatusBarView view) { Loading @@ -47,6 +48,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { mStatusIcons = mView.findViewById(R.id.statusIcons); mSignalCluster = mView.findViewById(R.id.signal_cluster); mBattery = mView.findViewById(R.id.battery); mCircleBattery = mView.findViewById(R.id.circle_battery); mClock = mView.findViewById(R.id.clock); applyModeBackground(-1, getMode(), false /*animate*/); applyMode(getMode(), false /*animate*/); Loading Loading @@ -91,6 +93,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { animateTransitionTo(mStatusIcons, newAlpha), animateTransitionTo(mSignalCluster, newAlpha), animateTransitionTo(mBattery, newAlphaBC), animateTransitionTo(mCircleBattery, newAlphaBC), animateTransitionTo(mClock, newAlphaBC) ); if (mode == MODE_LIGHTS_OUT) { Loading @@ -103,6 +106,7 @@ public final class PhoneStatusBarTransitions extends BarTransitions { mStatusIcons.setAlpha(newAlpha); mSignalCluster.setAlpha(newAlpha); mBattery.setAlpha(newAlphaBC); mCircleBattery.setAlpha(newAlphaBC); mClock.setAlpha(newAlphaBC); } } Loading