Commit Graph

8 Commits

Author SHA1 Message Date
Levi Neely 2afbf97b4c fix build 2026-06-08 16:10:59 +02:00
lkn 874f9b1ae0 fix popup reopen: shrink view size on 1x1 unmap; fix cascade commit target
Two concrete bugs fixed:

1. Popup reopen with 1x1 buffer: W_ResizeView returns early when view size
matches requested size. After 1x1 unmap, view->size.width/height was still the
original correct size, so resizeMenu never triggered wl_client_toplevel_resize.
Fix: set view size to 1x1 after replacing the buffer.

2. Selected item not updating button display: render_wl_pixmap_copy cascade
walks up to rootView (no WLClientToplevel) and commits it (no-op). After
paintPopUpButton, the mainAppView backing is updated but never committed.
Fix: when the cascade reaches rootView, fall back to committing the first
topLevel child that has a client backing.
2026-06-07 17:32:44 +02:00
Window Maker b5cc53a8a8 .gitignore: exclude generated wmaker-popup-v1 files; keep protocols/
Generated *-protocol.c and *-server-protocol.h files were accidentally
committed in the previous commit. The .gitignore was also excluding
the protocols/ source directory (where the XML lives). Fix both.
2026-05-24 18:28:51 +02:00
Window Maker 12ae1e48fb gitignore: WINGs scanner-generated xdg-shell, drop stray +cmd
The previous commit accidentally swept in a personal scratch file (+cmd)
and the auto-generated xdg-shell-protocol.c.  Both are now ignored.
Generated files come from $(WAYLAND_SCANNER) at build time.
2026-05-24 10:20:42 +02:00
Window Maker 16561778a4 drop configure~ backup file; ignore in future 2026-05-24 08:55:51 +02:00
Window Maker 1c1f261fb2 arch: eliminate _x11_raw escapes from event.c
Five _x11_raw accesses in shared event.c (the worst architectural leak)
removed by widening vtable signatures and moving X11-only logic into
the X11 backend:

  WME_SELECTION_REQUEST / WME_SELECTION_CLEAR
    * handle_selection_request/clear functions deleted from event.c
    * Reimplemented in x11_backend.c as x11_handle_selection_request/clear
      where they read _x11_raw internally and call XChangeProperty etc.
    * New vtable slots handle_selection_request / handle_selection_clear
      (WMEvent*).  Wayland: no-ops (wmaker UI does not own a WM_Sn
      selection on the X server).

  WME_CONFIGURE
    * event_randr_update vtable widened to (WMEvent*).
    * Root-window check (DefaultRootWindow) moved into x11 impl.

  WME_MAPPING
    * Dropped the if (xev) guard — keyboard_mapping_refresh already
      took WMEvent*.

  WME_SELECTION
    * xdnd_process_selection vtable widened to (WMEvent*).

Net: event.c is X11-free except for DefaultRootWindow uses elsewhere
that will be cleaned up in subsequent tasks.
2026-05-24 08:37:50 +02:00
Levi Neely b671f385ac gitignore: stop tracking all generated build outputs
Untrack and ignore all autotools-generated files (Makefile.in, configure,
config.h.in, compile, config.guess, config.sub, depcomp, install-sh,
missing, ltmain.sh, m4/libtool.m4, INSTALL), generated Makefiles,
compiled binaries, object files, libtool artifacts, generated headers,
man pages, and Wayland protocol headers.

Run `autoreconf -i && ./configure` to regenerate before building.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 13:36:58 +02:00
Levi Neely d468c95b09 add .gitignore for build artifacts and autotools output
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 13:34:52 +02:00