From 68b038ba1ee10cb957eec56fec435e3cfeffd20d Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Wed, 15 Aug 2018 14:26:19 +0200 Subject: [PATCH 1/2] endSessionDialog: Immediately add buttons to the dialog Immediately add buttons to the dialog instead of first building an array of button-info structs. This is a preparation patch for adding support changing the "Reboot" button into a "Boot Options" button when Alt is pressed. --- js/ui/endSessionDialog.js | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js index 4804333d4..5657cbffd 100644 --- a/js/ui/endSessionDialog.js +++ b/js/ui/endSessionDialog.js @@ -437,25 +437,26 @@ var EndSessionDialog = new Lang.Class({ }, _updateButtons() { - let dialogContent = DialogContent[this._type]; - let buttons = [{ action: this.cancel.bind(this), + this.clearButtons(); + + this.addButton({ action: this.cancel.bind(this), label: _("Cancel"), - key: Clutter.Escape }]; + key: Clutter.Escape }); + let dialogContent = DialogContent[this._type]; for (let i = 0; i < dialogContent.confirmButtons.length; i++) { let signal = dialogContent.confirmButtons[i].signal; let label = dialogContent.confirmButtons[i].label; - buttons.push({ action: () => { + let button = this.addButton( + { action: () => { this.close(true); let signalId = this.connect('closed', () => { this.disconnect(signalId); this._confirm(signal); }); - }, - label: label }); + }, + label: label }); } - - this.setButtons(buttons); }, close(skipSignal) { -- 2.19.0