aboutsummaryrefslogtreecommitdiff
path: root/dwl.c
Commit message (Collapse)AuthorAgeFilesLines
* prevent a use-after-free at exitLeonardo Hernández Hernández2023-11-171-0/+1
|
* do not compute layout box twiceLeonardo Hernández Hernández2023-11-171-2/+2
|
* make sure fullscreen clients have the right sizeLeonardo Hernández Hernández2023-11-171-0/+3
|
* fix screen artifacts when setting gammaLeonardo Hernández Hernández2023-11-171-15/+32
| | | | | | | | | | | | | the artifacts were caused because we tried to set the gamma right after receiving the event, this resulted in two pending page-flips, which not always play well together. This also seems to fix a screen freeze when turning on a monitor that has gamma. Additionally the current method won't work once [0] is merged [0]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4423
* use wlr_scene_subsurface_tree_set_clipLeonardo Hernández Hernández2023-11-141-0/+3
| | | | | References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4131 Closes: https://github.com/djpohly/dwl/issues/411
* Revert "respect size hints"Leonardo Hernández Hernández2023-11-141-13/+3
| | | | This reverts commit 72e0a560d9836c5e8658003f548203bcd722e565.
* use newer cursor naming specLeonardo Hernández Hernández2023-11-011-5/+5
| | | | | References: https://www.freedesktop.org/wiki/Specifications/cursor-spec/ References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4416
* ignore maximize events for clients using xdg-shell v5 and newerLeonardo Hernández Hernández2023-11-011-1/+6
|
* Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández2023-10-131-1/+2
|\
| * check client is mapped before setting border colorBen Collerson2023-10-101-1/+2
| | | | | | | | | | | | | | | | | | For some reason brave configured for as a wayland client triggers this code on startup and segfaults. Checking if the client is mapped fixes this, like with the previous fix for urgent border colour. References: 887fde65a3010905aa10f373cfcfe540cfc1781e Fixes: 72a7d78a1a7926a207539eb50f44b2e1eb089d49
* | Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández2023-10-091-6/+10
|\|
| * use <xcb/xcb.h> instead of <X11/Xlib.h>Leonardo Hernández Hernández2023-10-091-5/+5
| |
| * only set border color for urgent *and* mapped X11 clientsLeonardo Hernández Hernández2023-10-091-1/+4
| | | | | | | | | | | | this fixes a segfault when the client emits .set_hints but it's not mapped Fixes: 72a7d78a1a7926a207539eb50f44b2e1eb089d49
* | Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández2023-10-091-10/+15
|\|
| * Revert "just add define"Leonardo Hernández Hernández2023-10-091-1/+1
| | | | | | | | | | | | I'm going to make some changes in the config file anyway This reverts commit e5367753bb90add013ee5d170a110064298ac2c4.
| * add [-d] flag to enable debug loggingLeonardo Hernández Hernández2023-10-091-2/+6
| |
| * simplify setting the border color of clientsLeonardo Hernández Hernández2023-10-091-13/+5
| |
| * make the borders red borders for urgent clientsLeonardo Hernández Hernández2023-10-091-0/+8
| | | | | | | | iirc this is the same behavior of dwm
| * Check if c is fullscreen before reparenting it to LyrFloatingForrest Bushstone2023-09-291-3/+4
| | | | | | | | Closes: https://github.com/djpohly/dwl/issues/487
| * make sure that fullscreen clients are on the correct screen when isfloating ↵Forrest Bushstone2023-09-291-1/+1
| | | | | | | | | | | | is true Bug: https://github.com/djpohly/dwl/issues/487
* | Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández2023-09-241-59/+59
|\|
| * call setfloating in setmonLeonardo Hernández Hernández2023-09-061-0/+1
| | | | | | | | | | since in the previous commit we may not applying floating in clients this is to make sure we do
| * return early if the client doesn't have monitor in setfloatingLeonardo Hernández Hernández2023-09-061-0/+2
| | | | | | | | | | | | there is still a bug, but for now this prevents a segfault Bug: https://github.com/djpohly/dwl/issues/472
| * just add defineBen Collerson2023-08-221-1/+1
| |
| * tagcount should have been a #defineBen Collerson2023-08-221-1/+1
| |
| * return nothing in xytonode()Leonardo Hernández Hernández2023-08-221-3/+2
| | | | | | | | we do not use the node
| * Style: use early-return to clarify codeDevin J. Pohly2023-08-221-44/+52
| | | | | | | | | | | | | | | | | | | | Use an early return to avoid indenting the main logic instead of wrapping the tail of a function in an if statement. No functional change, except for a handful of places where printstatus() was being called spuriously (tag, toggletag, toggleview). ΔSLOC: 0
| * No need to send surface.leave/enter eventsDevin J. Pohly2023-08-221-6/+2
| | | | | | | | | | | | | | | | | | The scene graph implementation sends these for us, and it does so more accurately than our overly-simplified approach. Layer shell surfaces don't appear to receive these events at all, according to my WAYLAND_DEBUG experiments with bemenu and dtao. ΔSLOC: -4
| * don't resize clients on commitLeonardo Hernández Hernández2023-08-181-6/+0
| | | | | | | | It creates an infinite commit-resize loop when scale != 1
* | add support for xdg-shell v6Leonardo Hernández Hernández2023-07-311-3/+6
| |
* | update to xdg-shell v5Leonardo Hernández Hernández2023-07-231-1/+4
| |
* | add support for cursor-shape-v1Leonardo Hernández Hernández2023-07-231-0/+20
| | | | | | | | References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4106
* | increase wl_compositor versionLeonardo Hernández Hernández2023-07-151-1/+1
| | | | | | | | | | | | Now scene will handle sending the preferred buffer scale References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4269
* | Merge branch 'main' into wlroots-nextLeonardo Hernández Hernández2023-07-131-54/+36
|\|
| * do not use wl_event_loop for signal handlingLeonardo Hernández Hernández2023-07-131-13/+10
| | | | | | | | | | | | | | ΔSLOC: -4 Fixes: https://github.com/djpohly/dwl/issues/456 Fixes: https://github.com/djpohly/dwl/issues/459
| * Remove now-unneeded call to motionnotifyDevin J. Pohly2023-07-131-1/+0
| | | | | | | | | | This appears to have been here for the side effect of updating the drag icon's position.
| * Remove unused icon variableDevin J. Pohly2023-07-131-3/+1
| |
| * Make drag_icon a persistent scene nodeDevin J. Pohly2023-07-131-7/+7
| | | | | | | | | | | | | | | | | | If there is no current drag icon, this node will be empty, but we now have `drag_icon != NULL` as an invariant. This allows us to eliminate a conditional, since there's no harm in moving an empty node's coordinates around with the pointer. ΔSLOC: -1
| * properly destroy sceneDevin J. Pohly2023-07-131-0/+1
| | | | | | | | ΔSLOC: +1
| * Unify signal handling under wl_event_loopDevin J. Pohly2023-07-031-48/+35
| | | | | | | | | | | | | | Merge our signal handlers into a single function and let Wayland deal with all the struct sigaction stuff. ΔSLOC: -3
* | chase wlroots!4220Leonardo Hernández Hernández2023-07-101-1/+1
| | | | | | | | References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4220
* | Line saver: LISTEN_STATIC macroDevin J. Pohly2023-07-081-61/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This parallels the LISTEN macro for statically allocated listeners, and it allows us to remove almost all of the global wl_listener declarations. This also fixes a bug with the axisnotify listener, which was declared with a compound literal. At block scope, these have automatic storage duration [1], so the listener was no longer valid after setup() returned. (The option to declare it static explicitly was standardized in C23, if that ever gains suckless traction.) ΔSLOC: -27 [1]: https://en.cppreference.com/w/c/language/compound_literal#Explanation
* | Line saver: follow "local = wlr->data = obj" patternDevin J. Pohly2023-07-031-8/+4
| | | | | | | | | | | | | | There were still a couple of places where we could use this handy multiple assignment to save a line. ΔSLOC = -3
* | Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández2023-06-291-73/+64
|\|
| * Separate drag icon from layers array and Lyr enumDevin J. Pohly2023-06-251-37/+32
| | | | | | | | | | | | | | | | If we treat the drag icon as distinct from other layers (it doesn't have contents that are interactive, focusable, etc.), then we can iterate over layers meaningfully with a simple for loop. ΔSLOC: -8
| * Don't bother with ignoring SIGCHLDDevin J. Pohly2023-06-161-41/+32
| | | | | | | | | | It added complexity, especially with the differences in behavior between handled and ignored signals across an exec().
| * Reset ignored signal handler in spawn() as wellDevin J. Pohly2023-06-161-0/+3
| |
| * fix startup_cmd SIGCHLD handlerDevin J. Pohly2023-06-161-0/+2
| | | | | | | | Ignored handlers are not reset by exec() calls
| * Stray whitespace fixesA Frederick Christensen2023-06-071-1/+1
| |
* | schedule a frame after commmiting gammaLeonardo Hernández Hernández2023-06-241-0/+1
| | | | | | | | | | not doing it, may freeze the output or do not actually change the gamma until creating a client