Update Battery preference for Instant Hotspot

- Use the static battery full icon

- Show charging status in Battery preference summary

Bug: 300559036
Test: manual test
atest -c WifiNetworkDetailsFragmentTest

Change-Id: I89e811ba0d1b715d4fff23c96bc094cd4270fef7
This commit is contained in:
Weng Su
2023-09-22 19:16:25 +08:00
parent cb624a3155
commit af77327017
5 changed files with 37 additions and 35 deletions

View File

@@ -23,7 +23,6 @@ import android.app.Dialog;
import android.app.admin.DevicePolicyManager;
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.graphics.ColorFilter;
import android.graphics.drawable.Drawable;
import android.net.ConnectivityManager;
import android.net.wifi.WifiManager;
@@ -67,7 +66,6 @@ import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.core.AbstractPreferenceController;
import com.android.settingslib.graph.ThemedBatteryDrawable;
import com.android.wifitrackerlib.NetworkDetailsTracker;
import com.android.wifitrackerlib.WifiEntry;
@@ -441,23 +439,8 @@ public class WifiNetworkDetailsFragment extends RestrictedDashboardFragment impl
@VisibleForTesting
void updateBattery(boolean isChanging, int percentage) {
Preference battery = getPreferenceScreen().findPreference(KEY_HOTSPOT_DEVICE_BATTERY);
battery.setSummary(formatPercentage(percentage));
ThemedBatteryDrawable drawable = getBatteryDrawable();
if (drawable != null) {
drawable.setCharging(isChanging);
drawable.setBatteryLevel(percentage);
}
battery.setIcon(drawable);
}
@VisibleForTesting
ThemedBatteryDrawable getBatteryDrawable() {
int frameColor = getContext()
.getColor(com.android.settingslib.R.color.meter_background_color);
ThemedBatteryDrawable drawable = new ThemedBatteryDrawable(getContext(), frameColor);
ColorFilter colorFilter = Utils.getAlphaInvariantColorFilterForColor(
Utils.getColorAttrDefaultColor(getContext(), android.R.attr.colorControlNormal));
drawable.setColorFilter(colorFilter);
return drawable;
battery.setSummary((isChanging)
? getString(R.string.hotspot_battery_charging_summary, formatPercentage(percentage))
: formatPercentage(percentage));
}
}