mirror of
https://github.com/morgan9e/dash-to-panel
synced 2026-04-14 00:04:17 +09:00
15
panel.js
15
panel.js
@@ -134,8 +134,11 @@ export const Panel = GObject.registerClass({
|
||||
['activities', systemMenuInfo.name, 'dateMenu'].forEach(b => {
|
||||
let container = this.statusArea[b].container;
|
||||
let parent = container.get_parent();
|
||||
let siblings = parent.get_children();
|
||||
let index = siblings.indexOf(container);
|
||||
|
||||
container._dtpOriginalParent = parent;
|
||||
container._dtpOriginalIndex = index && index == siblings.length - 1 ? -1: index;
|
||||
parent ? parent.remove_child(container) : null;
|
||||
this.panel.add_child(container);
|
||||
});
|
||||
@@ -360,13 +363,19 @@ export const Panel = GObject.registerClass({
|
||||
['vertical', 'horizontal', 'dashtopanelMainPanel'].forEach(c => this.panel.remove_style_class_name(c));
|
||||
|
||||
if (!Main.sessionMode.isLocked) {
|
||||
[['activities', 0], [systemMenuName, -1], ['dateMenu', 0]].forEach(b => {
|
||||
let container = this.statusArea[b[0]].container;
|
||||
['activities', systemMenuName, 'dateMenu'].forEach(b => {
|
||||
let container = this.statusArea[b].container;
|
||||
let originalParent = container._dtpOriginalParent;
|
||||
|
||||
this.panel.remove_child(container);
|
||||
originalParent ? originalParent.insert_child_at_index(container, b[1]) : null;
|
||||
|
||||
originalParent && originalParent.insert_child_at_index(
|
||||
container,
|
||||
Math.min(container._dtpOriginalIndex, originalParent.get_children().length - 1)
|
||||
);
|
||||
|
||||
delete container._dtpOriginalParent;
|
||||
delete container._dtpOriginalIndex;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user