-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprefs.js
42 lines (35 loc) · 1.49 KB
/
prefs.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/* exported init, buildPrefsWidget */
import Adw from 'gi://Adw';
import Clutter from 'gi://Clutter';
import Gtk from 'gi://Gtk';
import {ExtensionPreferences, gettext as _} from 'resource:///org/gnome/Shell/Extensions/js/extensions/prefs.js';
export default class HistoryManagerPrefixSearchExtensionPreferences extends ExtensionPreferences {
fillPreferencesWindow(window) {
const settings = this.getSettings();
const page = new Adw.PreferencesPage();
window.add(page);
const group = new Adw.PreferencesGroup();
page.add(group);
const controlKeysOptions = new Gtk.StringList();
controlKeysOptions.append(_('PageUp + PageDown'));
controlKeysOptions.append(_('KeyUp + KeyDown'));
const controlKeysComboRow = new Adw.ComboRow({
title: _('Control keys'),
model: controlKeysOptions,
selected: settings.get_int('key-previous') === Clutter.KEY_Page_Up ? 0 : 1,
});
controlKeysComboRow.connect(
'notify::selected',
comboRow => {
if (comboRow.selected === 0) {
settings.set_int('key-previous', Clutter.KEY_Page_Up);
settings.set_int('key-next', Clutter.KEY_Page_Down);
} else {
settings.set_int('key-previous', Clutter.KEY_Up);
settings.set_int('key-next', Clutter.KEY_Down);
}
}
);
group.add(controlKeysComboRow);
}
}