Review of "Gtk4 Desktop Icons NG (DING)" version 48

Details Page Preview

Gtk4-DING Libadwaita/Gtk4 port of Desktop Icons NG with multiple fixes and new features. Icons can be positioned anywhere on desktop or are snapped to a grid. Can make links on the Desktop. GSconnect Integration, can send files to connected devices. Drag and Drop support on to Dock, Dash, or from Dock, Dash to the Desktop. Updated and modified code base, uses Gio menus, all translations on Weblate. All functions are asynchronous where possible. It is ported to ESM modules, supports Gnome 45 and higher. Multiple fixes and new features- * Allow setting any user folder as the Desktop folder following xdg-sepecifications and updating the xdg-files and vice versa in the running program. * Proper app icon, image and app name in Notifications. * Proper integration for AppImage files, treat them like .desktop files. Integration with AppImageLauncher. Prefer that to open AppImage files if available. * For Gnome 47, change highlighting and rubber band selection colors with accent-colors in Gnome Settings. * Selection rectangle with rounded corners, similar to Gnome Files aesthetic. * The stock gnome shell background menu can now be shown from the Gtk4 DING desktop right click menu. All shell settings can be accessed from that menu. * Icons can be placed on any arbitrary position. Make a mess! - icons can overlap each other etc. Neat people can keep the default behavior and have the icons always snapped to a grid. Controlled in preferences, tweaks, 'Snap to grid'. Affects the shape of icons and drag and drop behavior as well. Free positioning has trapezoidal icons, drop only works with direct overlap. Grid positioning has rectangular icons, and drag and drop works on overlap with the grid holding the icon. This behavior is consistent with other desktop environments. * Icons on background on overview, improved gesture switching icons appear to be on all work spaces on the background with workspace switching, with no flashing. * Support for dragging icons onto the dock - Drag icons from desktop to and drop over application icon to open them with the app. Works with Dash to Dock and Dash to Panel. * Support for dragging icons from desktop directly to Trash on Dash to Dock, or to mounted volumes on the dock, to copy them directly. * Set the correct cursor with proposed action on drop on dock. * Drag Navigation on Dock - dragging an icon over the Gnome Files icon on the dock or mounted drives, and hovering over it for 1/2 seconds will open a Gnome Files Window. Behavior can be changed in preferences. * Drag Navigation - dragging an icon over a folder icon or a drive icon, and then hovering over it for one and half seconds will open that location in Gnome Files. * Sets correct hovering behavior during drag and drop on the Dock, enables scrolling in the dock to icons when they are hidden. * Drag and drop Favorite apps from Dash to Dock, Dash to Panel directly to Desktop. Pressing shift, ctr or alt while doing this will copy or move the app to Desktop, allowing launching from the desktop. Just dropping an app from the dock to the desktop will remove from Dash/Dock. * Follows xdg-terminal-exec to display the correct terminal in right click menus, and will launch the correct terminal, even if xdg-terminal-exec is not installed. * Shows the correct file manager in the right click menu and give the user the option to change the file manager. * Gio menus, menus display all keyboard shortcuts. * Uses Gtk4 AlertDialog, uses asynchronous promises for dialog's, shows button to launch URL for help and troubleshooting information. * Automatically zip Folders if mailing them. * Tool tips are now positioned correctly to not go under the dash or make it auto hide, or go over/under any gnome shell actors on the edge of the screen. * Right Click Menus will not go under the dock. * Make Links on Desktop with Alt button on Wayland. Shift, Ctr or Alt button control the effect, move, copy, drop or link. (Linking may not work on X11) * Copied/dropped/pasted files retain dropped position. Undo action after trashing or moving files puts icons back in the old position. * Better multi monitor support, preference to place icons on non primary monitor. * GSconnect extension integration, can send files from desktop directly to connected mobile device. * Accessibility support with screen readers * Deals correctly with appimage files on desktop. * Display GIMP thumbnails, even for snap and flatpack installs. Please see Readme for full details of new features. Works best on Wayland. However your mileage may vary on X11. Multiple bugs fixed on X11. Please report all issues on the Gitlab link below, this page is not monitored. All known issues as well as all the features are detailed there.

Extension Homepage
https://gitlab.com/smedius/desktop-icons-ng

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

All Versions

Version Status
88 (91) Active
87 (90) Active
86 (89) Active
85 (88) Active
84 (87) Active
83 (86) Active
82 (85) Active
81 (84) Inactive
80 (83) Active
79 (82) Active
78 (81) Active
77 (80) Active
76 (79) Active
75 (78) Inactive
74 (77) Inactive
74 (76) Inactive
74 (75) Rejected
74 (74) Rejected
73 (73) Active
72 (72) Active
71 (71) Active
70 (70) Active
69 (69) Active
68 Active
67 Active
66 Active
65 Rejected
64 Rejected
63 Active
62 Active
61 Active
60 Active
59 Active
58 Inactive
57 Active
56 Active
55 Active
54 Active
53 Rejected
52 Rejected
51 Rejected
50 Rejected
49 Active
48 Rejected
47 Active
46 Active
45 Active
44 Rejected
43 Active
42 Active
41 Active
40 Active
39 Active
38 Active
37 Active
36 Active
35 Active
34 Active
33 Active
32 Active
31 Active
30 Active
29 Rejected
28 Active
27 Active
26 Active
25 Active
24 Active
23 Active
22 Active
21 Active
20 Active
19 Rejected
18 Active
17 Active
16 Active
15 Active
14 Active
13 Active
12 Active
11 Active
10 Active
9 Active
8 Active
7 Active
6 Active
5 Active
4 Rejected
3 Active
2 Active
1 Rejected

Previous Reviews on this Version

smedius auto- rejected
Auto-rejected because of new version 50 was uploaded
JustPerfection rejected
You are using `gjs -m`. what's the reason for using `imports.` in `/app` modules? and your extension still using `imports.` for gi.
smedius posted a review
Is there a hard requirement for only using ESM imports for everything? It is my understanding that only the gnome shell has moved to ESM and only using explicit export and import, so that is the only place that it is absolutely neccessary. The imports is only being used for introspection libraries, not for local files in the app, or for gnome shell files in the extension. Is there reasonable case that ESM imports are better for the introspection libraries as well? Are they mutually exclusive? Is there any reason not to use imports - it seems to be working fine. The -m is not giving errors. If imports are not allowed, then it is a GJS bug. In the extensions matrix chat room, I made the same inquiry. If you would do a search in the extensions matrix chat room, I believe Fred Mullner clearly stated that imports are allowed in apps and any other projects.
JustPerfection posted a review
Well, your app can still do that but not your extension. For example, you are doing this in `extension.js`: ```js const {GLib, Gio, Meta, Clutter} = imports.gi; ``` The question is, why you are doing that when GNOME Shell moved to ESM and monkey patching GNOME Shell? And about what Florian mentioned in the GNOME Matrix channel: That was about `signalTracker`'s global availability. so, yes. you can still use `imports` **only when there isn't other way**.