From 9d4a3a614dbb5fe8202883bb31251c3c7321462b Mon Sep 17 00:00:00 2001 From: Hans de Goede Date: Wed, 15 Aug 2018 14:26:19 +0200 Subject: [PATCH] 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. https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/199 --- js/ui/endSessionDialog.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js index b936352f4..cd8aeb55d 100644 --- a/js/ui/endSessionDialog.js +++ b/js/ui/endSessionDialog.js @@ -364,15 +364,17 @@ class EndSessionDialog extends ModalDialog.ModalDialog { } _updateButtons() { - let dialogContent = DialogContent[this._type]; - let buttons = [{ action: this.cancel.bind(this), - label: _("Cancel"), - key: Clutter.KEY_Escape }]; + this.clearButtons(); + this.addButton({ action: this.cancel.bind(this), + label: _("Cancel"), + key: Clutter.KEY_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({ + let button = this.addButton({ action: () => { this.close(true); let signalId = this.connect('closed', () => { @@ -383,8 +385,6 @@ class EndSessionDialog extends ModalDialog.ModalDialog { label, }); } - - this.setButtons(buttons); } close(skipSignal) {