power: Use more fine-grained battery levels
Adwaita-icon-theme added new battery icons which represent battery levels in 10% steps[0]. Use these if they are available, otherwise fall back to the existing icon names for compatibility with older icon themes. [0] https://gitlab.gnome.org/GNOME/adwaita-icon-theme/issues/6 https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/561
This commit is contained in:
parent
2ff7a78b56
commit
bd18313d12
@ -107,10 +107,20 @@ var Indicator = class extends PanelMenu.SystemIndicator {
|
||||
}
|
||||
|
||||
// The icons
|
||||
let icon = this._proxy.IconName;
|
||||
let chargingState = this._proxy.State == UPower.DeviceState.CHARGING
|
||||
? '-charging' : '';
|
||||
let fillLevel = 10 * Math.floor(this._proxy.Percentage / 10);
|
||||
let icon = this._proxy.State == UPower.DeviceState.FULLY_CHARGED
|
||||
? 'battery-level-100-charged-symbolic'
|
||||
: `battery-level-${fillLevel}${chargingState}-symbolic`;
|
||||
|
||||
this._indicator.icon_name = icon;
|
||||
this._item.icon.icon_name = icon;
|
||||
|
||||
let fallbackIcon = this._proxy.IconName;
|
||||
this._indicator.fallback_icon_name = fallbackIcon;
|
||||
this._item.icon.fallback_icon_name = fallbackIcon;
|
||||
|
||||
// The icon label
|
||||
let label;
|
||||
if (this._proxy.State == UPower.DeviceState.FULLY_CHARGED)
|
||||
|
Loading…
Reference in New Issue
Block a user