From 6a48759c669cb6cc554be9ce83ad23032f794feb Mon Sep 17 00:00:00 2001 From: Georgii Iesaulov Date: Sun, 19 Nov 2017 23:00:52 -0500 Subject: [PATCH] Maintain Suspend and PowerOff buttons connect() methods for Gnome3.26 release --- extension.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/extension.js b/extension.js index d48690b..63548d3 100644 --- a/extension.js +++ b/extension.js @@ -2,18 +2,29 @@ const Main = imports.ui.main; const Lang = imports.lang; +const GObject = imports.gi.GObject; +const BoxPointer = imports.ui.boxpointer; let menu, item, suspendAction, powerOffAction; +let bindFlags = GObject.BindingFlags.DEFAULT | GObject.BindingFlags.SYNC_CREATE; function init() { menu = Main.panel.statusArea['aggregateMenu']._system; item = menu._actionsItem; suspendAction = menu._createActionButton('media-playback-pause-symbolic', _("Suspend")); - suspendAction.connect('clicked', Lang.bind(menu, menu._onSuspendClicked)); + suspendAction.connect('clicked', () => { + menu.menu.itemActivated(BoxPointer.PopupAnimation.NONE); + menu._systemActions.activateSuspend(); + }); + menu._systemActions.bind_property('can-suspend', suspendAction, 'visible', bindFlags); powerOffAction = menu._createActionButton('system-shutdown-symbolic', _("Power Off")); - powerOffAction.connect('clicked', Lang.bind(menu, menu._onPowerOffClicked)); + powerOffAction.connect('clicked', () => { + menu.menu.itemActivated(BoxPointer.PopupAnimation.NONE); + menu._systemActions.activatePowerOff(); + }); + menu._systemActions.bind_property('can-power-off', powerOffAction, 'visible', bindFlags); } function enable() {