gnome-shell/0001-status-keyboard-Add-a-catch-around-reload-call.patch

90 lines
2.6 KiB
Diff
Raw Normal View History

From 01b465beae325c88fe6539303ddbdf1cc1cb80a7 Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Wed, 16 Aug 2023 18:46:54 -0400
Subject: [PATCH 1/3] status/keyboard: Add a catch around reload call
Now that system input settings can get used in the user session
they're getting seen by the tests and the tests are complaining:
Unhandled promise rejection. To suppress this warning, add an
error handler to your promise chain with .catch() or a try-catch block
around your await expression.
This commit adds the catch it's asking for.
---
js/ui/status/keyboard.js | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/js/ui/status/keyboard.js b/js/ui/status/keyboard.js
index 8d98e16de..7277c6d09 100644
--- a/js/ui/status/keyboard.js
+++ b/js/ui/status/keyboard.js
@@ -171,61 +171,63 @@ class InputSourceSettings extends Signals.EventEmitter {
get mruSources() {
return [];
}
set mruSources(sourcesList) {
// do nothing
}
get keyboardOptions() {
return [];
}
get perWindow() {
return false;
}
}
class InputSourceSystemSettings extends InputSourceSettings {
constructor() {
super();
this._BUS_NAME = 'org.freedesktop.locale1';
this._BUS_PATH = '/org/freedesktop/locale1';
this._BUS_IFACE = 'org.freedesktop.locale1';
this._BUS_PROPS_IFACE = 'org.freedesktop.DBus.Properties';
this._layouts = '';
this._variants = '';
this._options = '';
- this._reload();
+ this._reload().catch(error => {
+ logError(error, 'Could not reload system input settings');
+ });
Gio.DBus.system.signal_subscribe(this._BUS_NAME,
this._BUS_PROPS_IFACE,
'PropertiesChanged',
this._BUS_PATH,
null,
Gio.DBusSignalFlags.NONE,
this._reload.bind(this));
}
async _reload() {
let props;
try {
const result = await Gio.DBus.system.call(
this._BUS_NAME,
this._BUS_PATH,
this._BUS_PROPS_IFACE,
'GetAll',
new GLib.Variant('(s)', [this._BUS_IFACE]),
null, Gio.DBusCallFlags.NONE, -1, null);
[props] = result.deepUnpack();
} catch (e) {
log(`Could not get properties from ${this._BUS_NAME}`);
return;
}
const layouts = props['X11Layout'].unpack();
const variants = props['X11Variant'].unpack();
const options = props['X11Options'].unpack();
--
2.41.0.rc2