diff --git a/src/appicon.c b/src/appicon.c index 3c62117..078310a 100644 --- a/src/appicon.c +++ b/src/appicon.c @@ -207,6 +207,10 @@ void paint_app_icon(WApplication *wapp) if (!wapp || !wapp->app_icon || !wapp->main_window_desc) return; + /* Phase 79: Wayland — no X11 window system for icon display */ + if (!dpy) + return; + icon = wapp->app_icon->icon; scr = wapp->main_window_desc->screen_ptr; wapp->app_icon->main_window = wapp->main_window; @@ -369,7 +373,8 @@ static void drawCorner(WIcon * icon) void wAppIconMove(WAppIcon * aicon, int x, int y) { - XMoveWindow(dpy, aicon->icon->core->window, x, y); + if (dpy) + XMoveWindow(dpy, aicon->icon->core->window, x, y); aicon->x_pos = x; aicon->y_pos = y; } @@ -404,6 +409,10 @@ void wAppIconPaint(WAppIcon *aicon) else wapp = NULL; + /* Phase 79: Wayland — wIconPaint and all X11 drawing are no-ops */ + if (!dpy) + return; + wIconPaint(aicon->icon); # ifdef WS_INDICATOR diff --git a/src/icon.c b/src/icon.c index 9aea33a..f8aa2d0 100644 --- a/src/icon.c +++ b/src/icon.c @@ -660,6 +660,10 @@ void wIconUpdate(WIcon *icon) void update_icon_pixmap(WIcon *icon) { + /* Phase 79: Wayland — no X11 pixmap infrastructure; skip rendering */ + if (!dpy) + return; + if (icon->pixmap != None) XFreePixmap(dpy, icon->pixmap); @@ -823,6 +827,10 @@ void wIconPaint(WIcon *icon) if (!icon || !icon->core || !icon->core->screen_ptr) return; + /* Phase 79: Wayland — no X11 rendering surface for icon */ + if (!dpy) + return; + WScreen *scr = icon->core->screen_ptr; XClearWindow(dpy, icon->core->window);