prefs.js 905 B

1234567891011121314151617181920212223242526272829303132
  1. // SPDX-FileCopyrightText: GSConnect Developers https://github.com/GSConnect
  2. //
  3. // SPDX-License-Identifier: GPL-2.0-or-later
  4. import Gio from 'gi://Gio';
  5. import GLib from 'gi://GLib';
  6. import Adw from 'gi://Adw';
  7. // Bootstrap
  8. import * as Setup from './utils/setup.js';
  9. import {ExtensionPreferences} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js';
  10. export default class GSConnectExtensionPreferences extends ExtensionPreferences {
  11. constructor(metadata) {
  12. super(metadata);
  13. Setup.setup(this.path);
  14. Setup.ensurePermissions();
  15. Setup.installService();
  16. }
  17. fillPreferencesWindow(window) {
  18. const widget = new Adw.PreferencesPage();
  19. window.add(widget);
  20. GLib.idle_add(GLib.PRIORITY_DEFAULT_IDLE, () => {
  21. window.close();
  22. });
  23. Gio.Subprocess.new([`${this.path}/gsconnect-preferences`], 0);
  24. }
  25. }