panel: Remove aggregate menu
The menu has served us well over the years, but it is finally time to retire it. τετέλεσται Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2408>
This commit is contained in:
parent
84c33157a2
commit
a4134e1559
@ -164,28 +164,6 @@
|
|||||||
-arrow-rise: 0px; // hide the beak on the menu
|
-arrow-rise: 0px; // hide the beak on the menu
|
||||||
}
|
}
|
||||||
|
|
||||||
// system status menu
|
|
||||||
.aggregate-menu {
|
|
||||||
min-width: 22em;
|
|
||||||
|
|
||||||
// this is unneeded at the top-level in this menu, hide it
|
|
||||||
.popup-menu-ornament { width: 0 !important; }
|
|
||||||
|
|
||||||
// lock screen, shutdown, etc. buttons
|
|
||||||
.popup-menu-icon {
|
|
||||||
-st-icon-style: symbolic;
|
|
||||||
&:ltr {margin-right: $base_margin*2;}
|
|
||||||
&:rtl {margin-left: $base_margin*2;}
|
|
||||||
}
|
|
||||||
|
|
||||||
// account for ornaments in submenus with padding
|
|
||||||
.popup-sub-menu .popup-menu-item > :first-child {
|
|
||||||
// this value is hardcoded for visual effect
|
|
||||||
&:ltr { margin-left: 1em;}
|
|
||||||
&:rtl { margin-right: 1em;}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// right-click (and panel) app menu
|
// right-click (and panel) app menu
|
||||||
.app-menu {
|
.app-menu {
|
||||||
max-width: 27.25em;
|
max-width: 27.25em;
|
||||||
|
@ -332,49 +332,6 @@ class UnsafeModeIndicator extends SystemIndicator {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
var AggregateLayout = GObject.registerClass(
|
|
||||||
class AggregateLayout extends Clutter.BoxLayout {
|
|
||||||
_init(params = {}) {
|
|
||||||
params['orientation'] = Clutter.Orientation.VERTICAL;
|
|
||||||
super._init(params);
|
|
||||||
|
|
||||||
this._sizeChildren = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
addSizeChild(actor) {
|
|
||||||
this._sizeChildren.push(actor);
|
|
||||||
this.layout_changed();
|
|
||||||
}
|
|
||||||
|
|
||||||
vfunc_get_preferred_width(container, forHeight) {
|
|
||||||
let themeNode = container.get_theme_node();
|
|
||||||
let minWidth = themeNode.get_min_width();
|
|
||||||
let natWidth = minWidth;
|
|
||||||
|
|
||||||
for (let i = 0; i < this._sizeChildren.length; i++) {
|
|
||||||
let child = this._sizeChildren[i];
|
|
||||||
let [childMin, childNat] = child.get_preferred_width(forHeight);
|
|
||||||
minWidth = Math.max(minWidth, childMin);
|
|
||||||
natWidth = Math.max(natWidth, childNat);
|
|
||||||
}
|
|
||||||
return [minWidth, natWidth];
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
var AggregateMenu = GObject.registerClass(
|
|
||||||
class AggregateMenu extends PanelMenu.Button {
|
|
||||||
_init() {
|
|
||||||
super._init(0.0, C_("System menu in the top bar", "System"), false);
|
|
||||||
this.menu.actor.add_style_class_name('aggregate-menu');
|
|
||||||
|
|
||||||
let menuLayout = new AggregateLayout();
|
|
||||||
this.menu.box.set_layout_manager(menuLayout);
|
|
||||||
|
|
||||||
this._indicators = new St.BoxLayout({ style_class: 'panel-status-indicators-box' });
|
|
||||||
this.add_child(this._indicators);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
var QuickSettings = GObject.registerClass(
|
var QuickSettings = GObject.registerClass(
|
||||||
class QuickSettings extends PanelMenu.Button {
|
class QuickSettings extends PanelMenu.Button {
|
||||||
_init() {
|
_init() {
|
||||||
@ -453,7 +410,6 @@ class QuickSettings extends PanelMenu.Button {
|
|||||||
|
|
||||||
const PANEL_ITEM_IMPLEMENTATIONS = {
|
const PANEL_ITEM_IMPLEMENTATIONS = {
|
||||||
'activities': ActivitiesButton,
|
'activities': ActivitiesButton,
|
||||||
'aggregateMenu': AggregateMenu,
|
|
||||||
'appMenu': AppMenuButton,
|
'appMenu': AppMenuButton,
|
||||||
'quickSettings': QuickSettings,
|
'quickSettings': QuickSettings,
|
||||||
'dateMenu': imports.ui.dateMenu.DateMenuButton,
|
'dateMenu': imports.ui.dateMenu.DateMenuButton,
|
||||||
|
@ -59,7 +59,7 @@ const _modes = {
|
|||||||
panel: {
|
panel: {
|
||||||
left: [],
|
left: [],
|
||||||
center: ['dateMenu'],
|
center: ['dateMenu'],
|
||||||
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings', 'aggregateMenu'],
|
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings'],
|
||||||
},
|
},
|
||||||
panelStyle: 'login-screen',
|
panelStyle: 'login-screen',
|
||||||
},
|
},
|
||||||
@ -71,7 +71,7 @@ const _modes = {
|
|||||||
panel: {
|
panel: {
|
||||||
left: [],
|
left: [],
|
||||||
center: [],
|
center: [],
|
||||||
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings', 'aggregateMenu'],
|
right: ['dwellClick', 'a11y', 'keyboard', 'quickSettings'],
|
||||||
},
|
},
|
||||||
panelStyle: 'unlock-screen',
|
panelStyle: 'unlock-screen',
|
||||||
},
|
},
|
||||||
@ -94,7 +94,7 @@ const _modes = {
|
|||||||
panel: {
|
panel: {
|
||||||
left: ['activities', 'appMenu'],
|
left: ['activities', 'appMenu'],
|
||||||
center: ['dateMenu'],
|
center: ['dateMenu'],
|
||||||
right: ['screenRecording', 'screenSharing', 'dwellClick', 'a11y', 'keyboard', 'quickSettings', 'aggregateMenu'],
|
right: ['screenRecording', 'screenSharing', 'dwellClick', 'a11y', 'keyboard', 'quickSettings'],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user