status/system: Add separate 'Restart' item
A side effect of removing the action buttons in favor of a regular submenu is that we are a lot less constrained by size. So instead of lumping "Restart" in with "Power Off", make it a separate menu item. https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2202
This commit is contained in:
parent
e6153bb578
commit
263320696e
@ -27,6 +27,8 @@ class Indicator extends PanelMenu.SystemIndicator {
|
|||||||
() => this._updateSessionSubMenu());
|
() => this._updateSessionSubMenu());
|
||||||
this._powerOffItem.connect('notify::visible',
|
this._powerOffItem.connect('notify::visible',
|
||||||
() => this._updateSessionSubMenu());
|
() => this._updateSessionSubMenu());
|
||||||
|
this._restartItem.connect('notify::visible',
|
||||||
|
() => this._updateSessionSubMenu());
|
||||||
// Whether shutdown is available or not depends on both lockdown
|
// Whether shutdown is available or not depends on both lockdown
|
||||||
// settings (disable-log-out) and Polkit policy - the latter doesn't
|
// settings (disable-log-out) and Polkit policy - the latter doesn't
|
||||||
// notify, so we update the menu item each time the menu opens or
|
// notify, so we update the menu item each time the menu opens or
|
||||||
@ -52,6 +54,7 @@ class Indicator extends PanelMenu.SystemIndicator {
|
|||||||
this._loginScreenItem.visible ||
|
this._loginScreenItem.visible ||
|
||||||
this._logoutItem.visible ||
|
this._logoutItem.visible ||
|
||||||
this._suspendItem.visible ||
|
this._suspendItem.visible ||
|
||||||
|
this._restartItem.visible ||
|
||||||
this._powerOffItem.visible;
|
this._powerOffItem.visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -124,6 +127,17 @@ class Indicator extends PanelMenu.SystemIndicator {
|
|||||||
this._suspendItem, 'visible',
|
this._suspendItem, 'visible',
|
||||||
bindFlags);
|
bindFlags);
|
||||||
|
|
||||||
|
item = new PopupMenu.PopupMenuItem(_('Restart…'));
|
||||||
|
item.connect('activate', () => {
|
||||||
|
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
||||||
|
this._systemActions.activateRestart();
|
||||||
|
});
|
||||||
|
this._sessionSubMenu.menu.addMenuItem(item);
|
||||||
|
this._restartItem = item;
|
||||||
|
this._systemActions.bind_property('can-restart',
|
||||||
|
this._restartItem, 'visible',
|
||||||
|
bindFlags);
|
||||||
|
|
||||||
item = new PopupMenu.PopupMenuItem(_('Power Off…'));
|
item = new PopupMenu.PopupMenuItem(_('Power Off…'));
|
||||||
item.connect('activate', () => {
|
item.connect('activate', () => {
|
||||||
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
this.menu.itemActivated(BoxPointer.PopupAnimation.NONE);
|
||||||
|
Loading…
Reference in New Issue
Block a user