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

Commit 8f2dccd0 authored by Steve Kondik's avatar Steve Kondik Committed by Gerrit Code Review
Browse files

Merge "immediately update the battery icon when BATTERY_PERCENTAGE_STATUS_ICON changes" into froyo

parents 41d6b0ba 82739d81
Loading
Loading
Loading
Loading
+23 −4
Original line number Original line Diff line number Diff line
@@ -29,6 +29,7 @@ import android.content.DialogInterface;
import android.content.Intent;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.IntentFilter;
import android.content.res.TypedArray;
import android.content.res.TypedArray;
import android.database.ContentObserver;
import android.graphics.PixelFormat;
import android.graphics.PixelFormat;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.Drawable;
import android.media.AudioManager;
import android.media.AudioManager;
@@ -444,6 +445,16 @@ public class StatusBarPolicy {
                Settings.System.BATTERY_PERCENTAGE_STATUS_COLOR);
                Settings.System.BATTERY_PERCENTAGE_STATUS_COLOR);
        mBatteryIcon = service.addIcon(mBatteryData, null);
        mBatteryIcon = service.addIcon(mBatteryData, null);


        mContext.getContentResolver().registerContentObserver(
                Settings.System.getUriFor(Settings.System.BATTERY_PERCENTAGE_STATUS_ICON),
                false,
                new ContentObserver(null) {
                    @Override
                    public void onChange(boolean selfChange) {
                        updateBattery(null);
                    }
                });

        // phone_signal
        // phone_signal
        mPhone = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
        mPhone = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
        mPhoneData = IconData.makeIcon("phone_signal",
        mPhoneData = IconData.makeIcon("phone_signal",
@@ -684,11 +695,19 @@ public class StatusBarPolicy {
    }
    }


    private final void updateBattery(Intent intent) {
    private final void updateBattery(Intent intent) {
        boolean plugged;
        int level;

        if(intent != null) {
            mBatteryData.iconId = intent.getIntExtra("icon-small", 0);
            mBatteryData.iconId = intent.getIntExtra("icon-small", 0);
            mBatteryData.iconLevel = intent.getIntExtra("level", 0);
            mBatteryData.iconLevel = intent.getIntExtra("level", 0);


        boolean plugged = intent.getIntExtra("plugged", 0) != 0;
            plugged = intent.getIntExtra("plugged", 0) != 0;
        int level = intent.getIntExtra("level", -1);
            level = intent.getIntExtra("level", -1);
        } else {
            plugged = mBatteryPlugged;
            level = mBatteryLevel;
        }


        //show battery percentage if not plugged in and status is enabled
        //show battery percentage if not plugged in and status is enabled
        if (plugged || level >= 100 ||
        if (plugged || level >= 100 ||