window: Move icon management to X11 implementation

It's still used by e.g. GNOME Shell to produce fallback icons for X11
applications that doesn't come with a .desktop file. Geometry stays in
the generic class because it's used for minimize animations and is
configured by the panel (e.g. the one in gnome-shell-extensions).

Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2264>
This commit is contained in:
Jonas Ådahl
2022-01-29 00:02:24 +01:00
committed by Marge Bot
parent 35ac3a096d
commit aeae90d5d9
6 changed files with 155 additions and 138 deletions

View File

@ -72,6 +72,10 @@ struct _MetaWindowX11Private
Pixmap wm_hints_pixmap;
Pixmap wm_hints_mask;
cairo_surface_t *icon;
cairo_surface_t *mini_icon;
guint update_icon_handle_id;
/* Freeze/thaw on resize (for Xwayland) */
gboolean thaw_after_paint;
@ -84,6 +88,8 @@ MetaWindowX11Private * meta_window_x11_get_private (MetaWindowX11 *window_x11);
void meta_window_x11_set_bypass_compositor_hint (MetaWindowX11 *window_x11,
MetaBypassCompositorHint requested_value);
void meta_window_x11_queue_update_icon (MetaWindowX11 *window_x11);
G_END_DECLS
#endif