Launch or focus the window or define custom shortcuts in a text file
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
Version | Status |
---|---|
38 | Active |
37 | Active |
36 | Rejected |
35 | Rejected |
34 | Active |
33 | Inactive |
32 | Active |
31 | Active |
30 | Active |
29 | Active |
28 | Active |
27 | Active |
26 | Rejected |
25 | Active |
24 | Active |
23 | Active |
22 | Rejected |
21 | Rejected |
20 | Rejected |
19 | Rejected |
18 | Rejected |
17 | Active |
16 | Active |
15 | Active |
14 | Active |
13 | Active |
12 | Active |
11 | Inactive |
10 | Active |
9 | Active |
8 | Rejected |
7 | Active |
6 | Active |
5 | Active |
4 | Active |
3 | Active |
2 | Active |
1 | Rejected |
Hi, here I've implemented all the requirements imposed by the GNOME team at revision 15 https://extensions.gnome.org/review/27727 , internally logged here https://github.com/CZ-NIC/run-or-raise/issues/42
Hi, 1.You are using 40, 41 and 42 in metadata.json. You don't need to use that nested try catch in enable which seems to make it compatible with 3.x. You can check whether Wayland is running with `Meta.is_wayland_compositor()`. 2. Why don't you use `ExtensionUtils.getSettings()` instead of line 38 to 61 (convenience.js)? 3. You are overriding log with global log. Log should be only available in debug mode: https://gjs.guide/extensions/review-guidelines/review-guidelines.html#no-excessive-logging Wanna fix these and send it again?
> 1. As I have installed only one version of Ubuntu, I don't have means to test whether the code will work everywhere, that's the reason for keeping the ugly and nested try-catch block. I'll clean it up but please kick me with these answers: 1.1) Am I right in these assumptions? * We are using GDK version 3 only * Because Gnome Shell 40 runs on GTK 3 * Official API reference for that is here: https://gjs-docs.gnome.org/gdk30~3.24.31 1.2) What are the differences between `Clutter.get_default_backend().get_default_seat().get_keymap()` and `Gdk.Keymap.get_for_display(Gdk.Display.get_default())`? Both returns Keymap and both works on X11. 1.3) The latter `Gdk.Keymap.get_for_display(Gdk.Display.get_default())` does not work in Wayland. How am I supposed to know that? Where is this stated in the manual please? You'd really help me if you point me to an official reference. > 2. convenience.js Okay, cool! Convenience.js and whole ExtensionUtils are a blackbox for me. I didn't look inside before. I'll implement! > 3. log I'll get rid of the overriding. However, I've checked the whole usage of the logging and confirm that errors only will get logged, not debug information. Only in the case the user explicitly uses the `verbose` keyword, more information is logged.
You shouldn't use Gtk and Gdk in extension.js or any sub modules that are getting used inside GNOME Shell. To answer your question, yes, GNOME Shell 40 still uses Gdk 3 and Gtk 3: https://gitlab.gnome.org/GNOME/gnome-shell/-/blob/main/js/ui/environment.js but you should use Clutter instead of Gdk when you are in `extension.js`: ```js Clutter.get_default_backend().get_default_seat(); ``` I don't think you will need it here but since you are asking: When you know something doesn't work on Wayland: ```js const {Meta} = imports.gi; if (Meta.is_wayland_compositor()) { // do something that works on Wayland } else { // code that works on x11 } ``` Please send the next one with the fix. Thanks!