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

Commit 54ff81b8 authored by Evan Laird's avatar Evan Laird
Browse files

Add config to disallow the battery % option

This config will be respected and override the value found in Settings
if a user restores from a device which had SHOW_BATTERY_PERCENTAGE set
to true. It is also respceted on the keyguard where we would typically
show the battery percent if the device is charging.

Percentage is still shown above QS though.

Test: visual
Change-Id: I1f59b68097ffcbb7dda9d2ec99ea0ba9062c6dff
Bug: 80129194
parent c6c9a78b
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -3447,4 +3447,6 @@
    <!-- Whether or not swipe up gesture's opt-in setting is available on this device -->
    <bool name="config_swipe_up_gesture_setting_available">false</bool>

    <!-- Whether or not we should show the option to show battery percentage -->
    <bool name="config_battery_percentage_setting_available">true</bool>
</resources>
+1 −0
Original line number Diff line number Diff line
@@ -2193,6 +2193,7 @@
  <java-symbol type="string" name="ext_media_move_failure_message" />
  <java-symbol type="style" name="Animation.RecentApplications" />
  <java-symbol type="integer" name="dock_enter_exit_duration" />
  <java-symbol type="bool" name="config_battery_percentage_setting_available" />

  <!-- ImfTest -->
  <java-symbol type="layout" name="auto_complete_list" />
+10 −2
Original line number Diff line number Diff line
@@ -55,6 +55,7 @@ import com.android.systemui.statusbar.policy.IconLogger;
import com.android.systemui.tuner.TunerService;
import com.android.systemui.tuner.TunerService.Tunable;
import com.android.systemui.util.Utils.DisableStateTracker;
import com.android.systemui.R;

import java.text.NumberFormat;

@@ -72,6 +73,7 @@ public class BatteryMeterView extends LinearLayout implements
    private int mTextColor;
    private int mLevel;
    private boolean mForceShowPercent;
    private boolean mShowPercentAvailable;

    private int mDarkModeBackgroundColor;
    private int mDarkModeFillColor;
@@ -111,6 +113,9 @@ public class BatteryMeterView extends LinearLayout implements
        atts.recycle();

        mSettingObserver = new SettingObserver(new Handler(context.getMainLooper()));
        mShowPercentAvailable = context.getResources().getBoolean(
                com.android.internal.R.bool.config_battery_percentage_setting_available);


        addOnAttachStateChangeListener(
                new DisableStateTracker(DISABLE_NONE, DISABLE2_SYSTEM_ICONS));
@@ -259,8 +264,11 @@ public class BatteryMeterView extends LinearLayout implements

    private void updateShowPercent() {
        final boolean showing = mBatteryPercentView != null;
        if (0 != Settings.System.getIntForUser(getContext().getContentResolver(),
                SHOW_BATTERY_PERCENT, 0, mUser) || mForceShowPercent) {
        final boolean systemSetting = 0 != Settings.System
                .getIntForUser(getContext().getContentResolver(),
                SHOW_BATTERY_PERCENT, 0, mUser);

        if ((mShowPercentAvailable && systemSetting) || mForceShowPercent) {
            if (!showing) {
                mBatteryPercentView = loadPercentView();
                if (mTextColor != 0) mBatteryPercentView.setTextColor(mTextColor);
+4 −1
Original line number Diff line number Diff line
@@ -67,6 +67,7 @@ public class KeyguardStatusBarView extends RelativeLayout
    private static final int LAYOUT_CUTOUT = 1;
    private static final int LAYOUT_NO_CUTOUT = 2;

    private boolean mShowPercentAvailable;
    private boolean mBatteryCharging;
    private boolean mKeyguardUserSwitcherShowing;
    private boolean mBatteryListening;
@@ -165,6 +166,8 @@ public class KeyguardStatusBarView extends RelativeLayout
                R.dimen.system_icons_super_container_avatarless_margin_end);
        mCutoutSideNudge = getResources().getDimensionPixelSize(
                R.dimen.display_cutout_margin_consumption);
        mShowPercentAvailable = getContext().getResources().getBoolean(
                com.android.internal.R.bool.config_battery_percentage_setting_available);
    }

    private void updateVisibilities() {
@@ -186,7 +189,7 @@ public class KeyguardStatusBarView extends RelativeLayout
                mMultiUserSwitch.setVisibility(View.GONE);
            }
        }
        mBatteryView.setForceShowPercent(mBatteryCharging);
        mBatteryView.setForceShowPercent(mBatteryCharging && mShowPercentAvailable);
    }

    private void updateSystemIconsLayoutParams() {