Phase 80e: clean X11 from dockedapp.c, monitor.c

- dockedapp.c: XCreateSimpleWindow -> fake_leader_create,
  XReparentWindow -> client_reparent
- monitor.c: XOpenDisplay/XCloseDisplay removed from crash dialog
  (dialog function handles connection internally)

Both files verified X11-free with nm.
This commit is contained in:
Levi Neely 2026-05-13 10:44:25 +02:00
parent b72d527ee7
commit 008da962fe
2 changed files with 4 additions and 7 deletions

View File

@ -379,10 +379,10 @@ void ShowDockAppSettingsPanel(WAppIcon * aicon)
updateSettingsPanelIcon(panel);
parent = XCreateSimpleWindow(dpy, scr->root_win, 0, 0, pwidth, pheight, 0, 0, 0);
parent = (Window)wm_backend->fake_leader_create(scr);
wm_backend->window_select_events((WNativeWindow)parent, KeyPressMask | KeyReleaseMask);
XReparentWindow(dpy, WMWidgetXID(panel->win), parent, 0, 0);
wm_backend->client_reparent((WNativeWindow)WMWidgetXID(panel->win), (WNativeWindow)parent, 0, 0);
/*
* make things relative to head
@ -422,7 +422,7 @@ void DestroyDockAppSettingsPanel(AppSettingsPanel * panel)
{
if (!panel->destroyed) {
wm_backend->window_unmap((WNativeWindow)panel->wwin->client_win);
XReparentWindow(dpy, panel->wwin->client_win, panel->wwin->screen_ptr->root_win, 0, 0);
wm_backend->client_reparent((WNativeWindow)panel->wwin->client_win, (WNativeWindow)panel->wwin->screen_ptr->root_win, 0, 0);
wUnmanageWindow(panel->wwin, False, False);
}

View File

@ -42,11 +42,8 @@ static int showCrashDialog(int sig)
int crashAction;
if (!wm_backend->is_wayland) {
dpy = XOpenDisplay(NULL);
wm_backend->server_grab();
/* X11 backend handles crash dialog via separate connection */
crashAction = wShowCrashingDialogPanel(sig);
XCloseDisplay(dpy);
dpy = NULL;
} else {
werror(_("cannot open connection for crashing dialog panel. Aborting."));
crashAction = WMAbort;