[gnome-shell] endSessionDialog: Immediately add buttons to the dialog



commit 9d4a3a614dbb5fe8202883bb31251c3c7321462b
Author: Hans de Goede <hdegoede redhat com>
Date:   Wed Aug 15 14:26:19 2018 +0200

    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 | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
---
diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js
index b936352f48..cd8aeb55da 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),
+        this.clearButtons();
+
+        this.addButton({ action: this.cancel.bind(this),
                          label: _("Cancel"),
-                         key: Clutter.KEY_Escape }];
+                         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) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]