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

Commit 4d1a8699 authored by LuK1337's avatar LuK1337 Committed by Bruno Martins
Browse files

fixup! BatteryMeterView: Hide icon on battery-less devices

Change-Id: I66eab030f69412def09a4e324f9b3bda74736b6d
parent 5d4cdbf7
Loading
Loading
Loading
Loading
+7 −4
Original line number Diff line number Diff line
@@ -102,6 +102,13 @@ public class BatteryMeterViewController extends ViewController<BatteryMeterView>
                public void onIsOverheatedChanged(boolean isOverheated) {
                    mView.onIsOverheatedChanged(isOverheated);
                }

                @Override
                public void onBatteryPresentChanged(boolean batteryPresent) {
                    mView.setBatteryPresence(batteryPresent);
                    mView.setVisibility(!batteryPresent || mBatteryHidden
                            ? View.GONE : View.VISIBLE);
                }
            };

    private final UserTracker.Callback mUserChangedCallback =
@@ -139,11 +146,7 @@ public class BatteryMeterViewController extends ViewController<BatteryMeterView>
        mBatteryController = batteryController;

        mView.setBatteryEstimateFetcher(mBatteryController::getEstimatedTimeRemainingString);
        mView.setBatteryPresence(mBatteryController.isPresent());
        mView.setDisplayShieldEnabled(featureFlags.isEnabled(Flags.BATTERY_SHIELD_ICON));
        if (!mBatteryController.isPresent()) {
            mView.setVisibility(View.GONE);
        }

        mSlotBattery = getResources().getString(com.android.internal.R.string.status_bar_battery);
        mSettingObserver = new SettingObserver(mMainHandler);
+3 −0
Original line number Diff line number Diff line
@@ -163,6 +163,9 @@ public interface BatteryController extends DemoMode,

        default void onIsOverheatedChanged(boolean isOverheated) {
        }

        default void onBatteryPresentChanged(boolean batteryPresent) {
        }
    }

    /**
+16 −1
Original line number Diff line number Diff line
@@ -197,6 +197,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
        cb.onBatteryUnknownStateChanged(mStateUnknown);
        cb.onWirelessChargingChanged(mWirelessCharging);
        cb.onIsOverheatedChanged(mIsOverheated);
        cb.onBatteryPresentChanged(mPresent);
    }

    @Override
@@ -228,7 +229,12 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
                fireWirelessChargingChanged();
            }

            mPresent = intent.getBooleanExtra(EXTRA_PRESENT, true);
            boolean present = intent.getBooleanExtra(EXTRA_PRESENT, true);
            if (present != mPresent) {
                mPresent = present;
                fireBatteryPresentChanged();
            }

            boolean unknown = !mPresent;
            if (unknown != mStateUnknown) {
                mStateUnknown = unknown;
@@ -441,6 +447,15 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
        }
    }

    private void fireBatteryPresentChanged() {
        synchronized (mChangeCallbacks) {
            final int n = mChangeCallbacks.size();
            for (int i = 0; i < n; i++) {
                mChangeCallbacks.get(i).onBatteryPresentChanged(mPresent);
            }
        }
    }

    @Override
    public void dispatchDemoCommand(String command, Bundle args) {
        if (!mDemoModeController.isInDemoMode()) {