diff --git a/0001-endSessionDialog-Immediately-add-buttons-to-the-dial.patch b/0001-endSessionDialog-Immediately-add-buttons-to-the-dial.patch deleted file mode 100644 index ac470b2..0000000 --- a/0001-endSessionDialog-Immediately-add-buttons-to-the-dial.patch +++ /dev/null @@ -1,52 +0,0 @@ -From c907dbe205257d29ca74d9e30cf2e100d85f277b 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 | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js -index ff1aa0ddf..27ddf6804 100644 ---- a/js/ui/endSessionDialog.js -+++ b/js/ui/endSessionDialog.js -@@ -369,15 +369,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', () => { -@@ -388,8 +390,6 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - label, - }); - } -- -- this.setButtons(buttons); - } - - close(skipSignal) { --- -2.24.1 - diff --git a/0002-endSessionDialog-Support-rebooting-into-the-bootload.patch b/0002-endSessionDialog-Support-rebooting-into-the-bootload.patch deleted file mode 100644 index e646dff..0000000 --- a/0002-endSessionDialog-Support-rebooting-into-the-bootload.patch +++ /dev/null @@ -1,117 +0,0 @@ -From f91a2109fb139131a5f4ba5d00fca043df82ba10 Mon Sep 17 00:00:00 2001 -From: Hans de Goede -Date: Wed, 15 Aug 2018 15:03:56 +0200 -Subject: [PATCH 2/2] endSessionDialog: Support rebooting into the bootloader - menu aka ("Boot Options") - -This implements the "Alt" behavior for the "Reboot" button as outlined in -the design here: https://wiki.gnome.org/Design/OS/BootOptions - -This causes the endSessionDialog to send a ConfirmedRebootToBootOptions signal -to gnome-session instead of the normal ConfirmedReboot signal, actually -telling the boot-loader that it should show its menu the next boot is left -up to gnome-session. - -Note I've tried implemeting this with the AltSwitcher class from -js/ui/status/system.js first, but that puts the button in a St.Bin() -which causes the button to think it is the only button on the dialog -and makes it have rounded corners on both of its bottom corners. ---- - js/ui/endSessionDialog.js | 52 +++++++++++++++++++++++++++++++++++++++ - 1 file changed, 52 insertions(+) - -diff --git a/js/ui/endSessionDialog.js b/js/ui/endSessionDialog.js -index 27ddf6804..6cebf2a81 100644 ---- a/js/ui/endSessionDialog.js -+++ b/js/ui/endSessionDialog.js -@@ -239,6 +239,9 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - this._totalSecondsToStayOpen = 0; - this._applications = []; - this._sessions = []; -+ this._capturedEventId = 0; -+ this._rebootButton = null; -+ this._rebootButtonAlt = null; - - this.connect('destroy', - this._onDestroy.bind(this)); -@@ -368,6 +371,26 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - this._sessionSection.visible = hasSessions; - } - -+ _onCapturedEvent(actor, event) { -+ let altEnabled = false; -+ -+ let type = event.type(); -+ if (type != Clutter.EventType.KEY_PRESS && type != Clutter.EventType.KEY_RELEASE) -+ 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(); - -@@ -389,7 +412,34 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - }, - label, - }); -+ -+ // Add Alt "Boot Options" option to the Reboot button -+ if (signal == 'ConfirmedReboot') { -+ this._rebootButton = button; -+ this._rebootButtonAlt = this.addButton({ -+ action: () => { -+ this.close(true); -+ let signalId = this.connect('closed', () => { -+ this.disconnect(signalId); -+ this._confirm('ConfirmedRebootToBootOptions'); -+ }); -+ }, -+ label: C_("button", "Boot Options") -+ }); -+ this._rebootButtonAlt.visible = false; -+ this._capturedEventId = global.stage.connect('captured-event', -+ this._onCapturedEvent.bind(this)); -+ } -+ } -+ } -+ -+ _stopAltCapture() { -+ if (this._capturedEventId > 0) { -+ global.stage.disconnect(this._capturedEventId); -+ this._capturedEventId = 0; - } -+ this._rebootButton = null; -+ this._rebootButtonAlt = null; - } - - close(skipSignal) { -@@ -401,6 +451,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - - cancel() { - this._stopTimer(); -+ this._stopAltCapture(); - this._dbusImpl.emit_signal('Canceled', null); - this.close(); - } -@@ -409,6 +460,7 @@ class EndSessionDialog extends ModalDialog.ModalDialog { - let callback = () => { - this._fadeOutDialog(); - this._stopTimer(); -+ this._stopAltCapture(); - this._dbusImpl.emit_signal(signal, null); - }; - --- -2.24.1 - diff --git a/fix-old-style-vpn.patch b/fix-old-style-vpn.patch deleted file mode 100644 index 685b00f..0000000 --- a/fix-old-style-vpn.patch +++ /dev/null @@ -1,173 +0,0 @@ -From 112b139a9e1277a3f4e13cd8ba9f2da66babc5c7 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Florian=20M=C3=BCllner?= -Date: Thu, 13 Aug 2020 23:35:27 +0200 -Subject: [PATCH 1/2] cleanup: Remove old compatibility code - -Since gjs moved to mozjs60, return values of int8_t arrays can -no longer be treated as strings. We originally made the conversion -conditional to keep working with the (then) stable gjs release. - -That was two years ago and we require a more recent gjs nowadays, -so there's no good reason for keeping the old code path. - -https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1407 ---- - js/ui/components/networkAgent.js | 9 ++------- - js/ui/extensionSystem.js | 4 ++-- - js/ui/keyboard.js | 4 ++-- - js/ui/padOsd.js | 4 ++-- - js/ui/sessionMode.js | 4 ++-- - 5 files changed, 10 insertions(+), 15 deletions(-) - -diff --git a/js/ui/components/networkAgent.js b/js/ui/components/networkAgent.js -index 1033a6de39..32ec1da852 100644 ---- a/js/ui/components/networkAgent.js -+++ b/js/ui/components/networkAgent.js -@@ -2,6 +2,7 @@ - /* exported Component */ - - const { Clutter, Gio, GLib, GObject, NM, Pango, Shell, St } = imports.gi; -+const ByteArray = imports.byteArray; - const Signals = imports.signals; - - const Dialog = imports.ui.dialog; -@@ -522,13 +523,7 @@ var VPNRequestHandler = class { - let contentOverride; - - try { -- data = this._dataStdout.peek_buffer(); -- -- if (data instanceof Uint8Array) -- data = imports.byteArray.toGBytes(data); -- else -- data = data.toGBytes(); -- -+ data = ByteArray.toGBytes(this._dataStdout.peek_buffer()); - keyfile.load_from_bytes(data, GLib.KeyFileFlags.NONE); - - if (keyfile.get_integer(VPN_UI_GROUP, 'Version') != 2) -diff --git a/js/ui/extensionSystem.js b/js/ui/extensionSystem.js -index f0b8361714..41ef98d70e 100644 ---- a/js/ui/extensionSystem.js -+++ b/js/ui/extensionSystem.js -@@ -2,6 +2,7 @@ - /* exported init connect disconnect */ - - const { GLib, Gio, GObject, Shell, St } = imports.gi; -+const ByteArray = imports.byteArray; - const Signals = imports.signals; - - const ExtensionDownloader = imports.ui.extensionDownloader; -@@ -282,8 +283,7 @@ var ExtensionManager = class { - let metadataContents, success_; - try { - [success_, metadataContents] = metadataFile.load_contents(null); -- if (metadataContents instanceof Uint8Array) -- metadataContents = imports.byteArray.toString(metadataContents); -+ metadataContents = ByteArray.toString(metadataContents); - } catch (e) { - throw new Error('Failed to load metadata.json: %s'.format(e.toString())); - } -diff --git a/js/ui/keyboard.js b/js/ui/keyboard.js -index 90bd17b86f..a579495ad6 100644 ---- a/js/ui/keyboard.js -+++ b/js/ui/keyboard.js -@@ -2,6 +2,7 @@ - /* exported KeyboardManager */ - - const { Clutter, Gio, GLib, GObject, Meta, St } = imports.gi; -+const ByteArray = imports.byteArray; - const Signals = imports.signals; - - const InputSourceManager = imports.ui.status.keyboard; -@@ -532,8 +533,7 @@ var KeyboardModel = class { - _loadModel(groupName) { - let file = Gio.File.new_for_uri('resource:///org/gnome/shell/osk-layouts/%s.json'.format(groupName)); - let [success_, contents] = file.load_contents(null); -- if (contents instanceof Uint8Array) -- contents = imports.byteArray.toString(contents); -+ contents = ByteArray.toString(contents); - - return JSON.parse(contents); - } -diff --git a/js/ui/padOsd.js b/js/ui/padOsd.js -index 115b72be2e..9ab1cbb9df 100644 ---- a/js/ui/padOsd.js -+++ b/js/ui/padOsd.js -@@ -3,6 +3,7 @@ - - const { Atk, Clutter, GDesktopEnums, Gio, - GLib, GObject, Gtk, Meta, Pango, Rsvg, St } = imports.gi; -+const ByteArray = imports.byteArray; - const Signals = imports.signals; - - const Main = imports.ui.main; -@@ -297,8 +298,7 @@ var PadDiagram = GObject.registerClass({ - _init(params) { - let file = Gio.File.new_for_uri('resource:///org/gnome/shell/theme/pad-osd.css'); - let [success_, css] = file.load_contents(null); -- if (css instanceof Uint8Array) -- css = imports.byteArray.toString(css); -+ css = ByteArray.toString(css); - this._curEdited = null; - this._prevEdited = null; - this._css = css; -diff --git a/js/ui/sessionMode.js b/js/ui/sessionMode.js -index 454804933e..2136e948f1 100644 ---- a/js/ui/sessionMode.js -+++ b/js/ui/sessionMode.js -@@ -1,6 +1,7 @@ - // -*- mode: js; js-indent-level: 4; indent-tabs-mode: nil -*- - /* exported SessionMode, listModes */ - -+const ByteArray = imports.byteArray; - const GLib = imports.gi.GLib; - const Signals = imports.signals; - -@@ -105,8 +106,7 @@ function _loadMode(file, info) { - let fileContent, success_, newMode; - try { - [success_, fileContent] = file.load_contents(null); -- if (fileContent instanceof Uint8Array) -- fileContent = imports.byteArray.toString(fileContent); -+ fileContent = ByteArray.toString(fileContent); - newMode = JSON.parse(fileContent); - } catch (e) { - return; --- -2.26.2 - - -From 990c171bed0e052a07145ad03fae89c33d86ac17 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Florian=20M=C3=BCllner?= -Date: Thu, 13 Aug 2020 23:37:31 +0200 -Subject: [PATCH 2/2] networkAgent: Add missing Uint8Array => string conversion - -When promisifying async operations in commit 764527c8c, the -finish function for read_line_async() was sneakily changed from -read_line_finish_utf8() to read_line_finish(). - -That is, the call returns a Uint8Array now that requires an -explicit conversion to string. - -https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1407 ---- - js/ui/components/networkAgent.js | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/js/ui/components/networkAgent.js b/js/ui/components/networkAgent.js -index 32ec1da852..29565d214f 100644 ---- a/js/ui/components/networkAgent.js -+++ b/js/ui/components/networkAgent.js -@@ -494,7 +494,7 @@ var VPNRequestHandler = class { - return; - } - -- this._vpnChildProcessLineOldStyle(line); -+ this._vpnChildProcessLineOldStyle(ByteArray.toString(line)); - - // try to read more! - this._readStdoutOldStyle(); --- -2.26.2 - diff --git a/fix-x11-login.patch b/fix-x11-login.patch deleted file mode 100644 index fd483a6..0000000 --- a/fix-x11-login.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 56b6e653175bbf85261712dda96cb99bcd727482 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 20 Aug 2020 10:08:01 +0200 -Subject: [PATCH 1/2] data: Only unset environment when the service actually - ran - -ExecStopPost= is executed even if ExecCondition= fails. As such, we need -to add a guard as we would otherwise clear environment variables on X11 -sessions (rendering them utterly useless). - -https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1418 ---- - data/org.gnome.Shell@wayland.service.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/data/org.gnome.Shell@wayland.service.in b/data/org.gnome.Shell@wayland.service.in -index 427e3c8072..692d45bb37 100644 ---- a/data/org.gnome.Shell@wayland.service.in -+++ b/data/org.gnome.Shell@wayland.service.in -@@ -26,7 +26,7 @@ ExecStart=@bindir@/gnome-shell - SuccessExitStatus=1 - - # unset some environment variables that were set by the shell and won't work now that the shell is gone --ExecStopPost=-systemctl --user unset-environment GNOME_SETUP_DISPLAY WAYLAND_DISPLAY DISPLAY XAUTHORITY -+ExecStopPost=-/bin/sh -c 'test "$SERVICE_RESULT" != "exec-condition" && systemctl --user unset-environment GNOME_SETUP_DISPLAY WAYLAND_DISPLAY DISPLAY XAUTHORITY' - - # On wayland we cannot restart - Restart=no --- -GitLab - - -From 6ad9c99040cec703cec85c68d1d168d3845ceaaa Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 20 Aug 2020 10:09:00 +0200 -Subject: [PATCH 2/2] data: Fix description of org.gnome.Shell.target - -The target is generic between X11 and wayland now, so remove the -reference to wayland. - -https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1418 ---- - data/org.gnome.Shell.target | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/data/org.gnome.Shell.target b/data/org.gnome.Shell.target -index 358189f26f..55f9539e98 100644 ---- a/data/org.gnome.Shell.target -+++ b/data/org.gnome.Shell.target -@@ -1,5 +1,5 @@ - [Unit] --Description=GNOME Shell on Wayland -+Description=GNOME Shell - DefaultDependencies=no - - Requisite=gnome-session-initialized.target --- -GitLab -