mutter/debian/patches/screenshot-Cache-ScreencastSupported-property.patch
Ward Nakchbandi f8fb05fbbb first commit
2023-03-09 20:20:19 +03:00

48 lines
1.8 KiB
Diff

From: =?utf-8?q?Florian_M=C3=BCllner?= <fmuellner@gnome.org>
Date: Sun, 6 Nov 2022 13:06:44 +0100
Subject: screenshot: Cache ScreencastSupported property
The screencast service shuts down when not in use, so it is almost
certainly not running when handling the screencast shortcut.
Instead of making sure the service is restarted, just cache the
property when initializing the proxy.
Origin: https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2533
Applied-upstream: 43.2, commit:b23de7f5309dcff34b2245d3797bb39381dff60c
---
js/ui/screenshot.js | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/js/ui/screenshot.js b/js/ui/screenshot.js
index a01fbe3..b2ea6fa 100644
--- a/js/ui/screenshot.js
+++ b/js/ui/screenshot.js
@@ -1017,6 +1017,7 @@ var ScreenshotUI = GObject.registerClass({
});
this._screencastInProgress = false;
+ this._screencastSupported = false;
this._screencastProxy = new ScreencastProxy(
Gio.DBus.session,
@@ -1028,7 +1029,8 @@ var ScreenshotUI = GObject.registerClass({
return;
}
- this._castButton.visible = this._screencastProxy.ScreencastSupported;
+ this._screencastSupported = this._screencastProxy.ScreencastSupported;
+ this._castButton.visible = this._screencastSupported;
});
this._lockdownSettings = new Gio.Settings({ schema_id: 'org.gnome.desktop.lockdown' });
@@ -1450,7 +1452,7 @@ var ScreenshotUI = GObject.registerClass({
if (this._screencastInProgress)
return;
- if (mode === UIMode.SCREENCAST && !this._screencastProxy.ScreencastSupported)
+ if (mode === UIMode.SCREENCAST && !this._screencastSupported)
return;
this._castButton.checked = mode === UIMode.SCREENCAST;