gtk3: Make xdg-shell's app_id match GApplication's application-id property
How come !284 (merged) wasn't backported to gtk3?
Well, this part:
--- gdk/wayland/gdkwindow-wayland.c.orig 2020-06-05 15:15:18.619075000 +0300
+++ gdk/wayland/gdkwindow-wayland.c 2020-06-05 15:15:55.731384000 +0300
@@ -1984,7 +1984,9 @@
break;
}
- app_id = g_get_prgname ();
+ app_id = impl->application.application_id;
+ if (app_id == NULL)
+ g_get_prgname ();
if (app_id == NULL)
app_id = gdk_get_program_class ();
The documentation part says:
In order to achieve this with GTK+3 call g_set_prgname() with the application id you passed to #GtkApplication.
But practically zero applications do this. So desktop shells that use app_id to find the desktop file just fail to find any info about {gedit, eog, evince, gnome-terminal, gitg, lollypop, d-feet, dconf-editor, …} Only gtk3-demo and simple-scan were found for me — because their desktop file matches the executable name.