parent
a8f0c2e257
commit
45add8a213
@ -0,0 +1,92 @@
|
||||
From 5b1260864b3a1a28d778a8610b4eb13c0bd52c99 Mon Sep 17 00:00:00 2001
|
||||
From: Ray Strode <rstrode@redhat.com>
|
||||
Date: Sun, 5 Mar 2023 20:00:42 -0500
|
||||
Subject: [PATCH] endSessionDialog: Don't emit 'closed' until handler is
|
||||
connected
|
||||
|
||||
Prior to commit 7bd98f3f5fb7e0d1220646b8a4ee7073534a8e8f animation
|
||||
onComplete handlers always occured at least after one main loop
|
||||
iteration.
|
||||
|
||||
Now, if animations are disabled, they can get invoked immediately.
|
||||
|
||||
That breaks the endSessionDialog button handler, which calls
|
||||
close before setting up the "closed" signal handler.
|
||||
|
||||
This commit fixes the handler to get set up first.
|
||||
---
|
||||
js/ui/endSessionDialog.js | 2 +-
|
||||
subprojects/gvc | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js
|
||||
index ca24d0698..66fc2e6f9 100644
|
||||
--- a/js/ui/endSessionDialog.js
|
||||
+++ b/js/ui/endSessionDialog.js
|
||||
@@ -420,65 +420,65 @@ class EndSessionDialog extends ModalDialog.ModalDialog {
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
let key = event.get_key_symbol();
|
||||
if (key !== Clutter.KEY_Alt_L && key !== Clutter.KEY_Alt_R)
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
|
||||
if (type === Clutter.EventType.KEY_PRESS)
|
||||
altEnabled = true;
|
||||
|
||||
this._rebootButton.visible = !altEnabled;
|
||||
this._rebootButtonAlt.visible = altEnabled;
|
||||
|
||||
return Clutter.EVENT_PROPAGATE;
|
||||
}
|
||||
|
||||
_updateButtons() {
|
||||
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;
|
||||
let button = this.addButton({
|
||||
action: () => {
|
||||
- this.close(true);
|
||||
let signalId = this.connect('closed', () => {
|
||||
this.disconnect(signalId);
|
||||
this._confirm(signal);
|
||||
});
|
||||
+ this.close(true);
|
||||
},
|
||||
label,
|
||||
});
|
||||
|
||||
// Add Alt "Boot Options" option to the Reboot button
|
||||
if (this._canRebootToBootLoaderMenu && signal === 'ConfirmedReboot') {
|
||||
this._rebootButton = button;
|
||||
this._rebootButtonAlt = this.addButton({
|
||||
action: () => {
|
||||
this.close(true);
|
||||
let signalId = this.connect('closed', () => {
|
||||
this.disconnect(signalId);
|
||||
this._confirmRebootToBootLoaderMenu();
|
||||
});
|
||||
},
|
||||
label: C_('button', 'Boot Options'),
|
||||
});
|
||||
this._rebootButtonAlt.visible = false;
|
||||
this._capturedEventId = this.connect('captured-event',
|
||||
this._onCapturedEvent.bind(this));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_stopAltCapture() {
|
||||
if (this._capturedEventId > 0) {
|
||||
global.stage.disconnect(this._capturedEventId);
|
||||
this._capturedEventId = 0;
|
||||
}
|
||||
this._rebootButton = null;
|
@ -2,7 +2,7 @@
|
||||
|
||||
Name: gnome-shell
|
||||
Version: 44~beta
|
||||
Release: 2%{?dist}
|
||||
Release: 3%{?dist}
|
||||
Summary: Window management and application launching for GNOME
|
||||
|
||||
License: GPLv2+
|
||||
@ -12,6 +12,9 @@ Source0: https://download.gnome.org/sources/gnome-shell/44/%{name}-%{tarb
|
||||
# Replace Epiphany with Firefox in the default favourite apps list
|
||||
Patch10001: gnome-shell-favourite-apps-firefox.patch
|
||||
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2174753
|
||||
Patch20001: 0001-endSessionDialog-Don-t-emit-closed-until-handler-is-.patch
|
||||
|
||||
# Some users might have a broken PAM config, so we really need this
|
||||
# downstream patch to stop trying on configuration errors.
|
||||
Patch40001: 0001-gdm-Work-around-failing-fingerprint-auth.patch
|
||||
@ -227,6 +230,10 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.Porta
|
||||
%{_mandir}/man1/gnome-shell.1*
|
||||
|
||||
%changelog
|
||||
* Sun Mar 05 2023 Ray Strode <rstrode@redhat.com> - 44~beta-3
|
||||
- Fix slowdown in at shutdown
|
||||
Resolves: #2174753
|
||||
|
||||
* Mon Feb 20 2023 Adam Williamson <awilliam@redhat.com> - 44~beta-2
|
||||
- Rebuild without changes for Bodhi reasons
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user