aboutsummaryrefslogtreecommitdiffstats
path: root/dwl.c
AgeCommit message (Collapse)AuthorLines
2023-08-22No need to send surface.leave/enter eventsDevin J. Pohly-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
2023-08-18don't resize clients on commitLeonardo Hernández Hernández-6/+0
It creates an infinite commit-resize loop when scale != 1
2023-07-31add support for xdg-shell v6Leonardo Hernández Hernández-3/+6
2023-07-23update to xdg-shell v5Leonardo Hernández Hernández-1/+4
2023-07-23add support for cursor-shape-v1Leonardo Hernández Hernández-0/+20
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4106
2023-07-15increase wl_compositor versionLeonardo Hernández Hernández-1/+1
Now scene will handle sending the preferred buffer scale References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4269
2023-07-13Merge branch 'main' into wlroots-nextLeonardo Hernández Hernández-54/+36
2023-07-13do not use wl_event_loop for signal handlingLeonardo Hernández Hernández-13/+10
ΔSLOC: -4 Fixes: https://github.com/djpohly/dwl/issues/456 Fixes: https://github.com/djpohly/dwl/issues/459
2023-07-13Remove now-unneeded call to motionnotifyDevin J. Pohly-1/+0
This appears to have been here for the side effect of updating the drag icon's position.
2023-07-13Remove unused icon variableDevin J. Pohly-3/+1
2023-07-13Make drag_icon a persistent scene nodeDevin J. Pohly-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
2023-07-13properly destroy sceneDevin J. Pohly-0/+1
ΔSLOC: +1
2023-07-10chase wlroots!4220Leonardo Hernández Hernández-1/+1
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4220
2023-07-08Line saver: LISTEN_STATIC macroDevin J. Pohly-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
2023-07-03Unify signal handling under wl_event_loopDevin J. Pohly-48/+35
Merge our signal handlers into a single function and let Wayland deal with all the struct sigaction stuff. ΔSLOC: -3
2023-07-03Line saver: follow "local = wlr->data = obj" patternDevin J. Pohly-8/+4
There were still a couple of places where we could use this handy multiple assignment to save a line. ΔSLOC = -3
2023-06-29Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández-73/+64
2023-06-25Separate drag icon from layers array and Lyr enumDevin J. Pohly-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
2023-06-24schedule a frame after commmiting gammaLeonardo Hernández Hernández-0/+1
not doing it, may freeze the output or do not actually change the gamma until creating a client
2023-06-23use detached output states to set gammaLeonardo Hernández Hernández-4/+9
2023-06-23Revert "use wlr_scene_output_build_state() to set gamma"Leonardo Hernández Hernández-15/+4
This reverts commit 65f68e76437275a0c1c25279af646f726e213b6d.
2023-06-16Don't bother with ignoring SIGCHLDDevin J. Pohly-41/+32
It added complexity, especially with the differences in behavior between handled and ignored signals across an exec().
2023-06-16Reset ignored signal handler in spawn() as wellDevin J. Pohly-0/+3
2023-06-16fix startup_cmd SIGCHLD handlerDevin J. Pohly-0/+2
Ignored handlers are not reset by exec() calls
2023-06-15drop KDE idle supportLeonardo Hernández Hernández-9/+4
use ext-idle-notify-v1 instead
2023-06-15drop support for wlr-input-inhibitor-unstable-v1Leonardo Hernández Hernández-5/+1
deprecated in favor of ext-session-lock-v1 References: https://gitlab.freedesktop.org/wlroots/wlr-protocols/-/commit/4aa366e3ddf5e9b67950a94b9fb299bbfe05eef8 References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3848
2023-06-15use wlr_scene_output_build_state() to set gammaLeonardo Hernández Hernández-4/+15
2023-06-15use wlr_cursor_set_xcursor()Leonardo Hernández Hernández-7/+5
This avoids re-upload the cursor image in each motion event Managing the scale is done by the function itself References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4170
2023-06-15Revert "avoid setting duplicate cursor image"Leonardo Hernández Hernández-12/+8
This reverts commit b5776e5180010ead5232efb36b2490f4fc9e1366. See next commit for details
2023-06-08handle gamma-control-v1 set_gamma eventLeonardo Hernández Hernández-1/+21
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4046
2023-06-07Stray whitespace fixesA Frederick Christensen-1/+1
2023-06-02use the new {a,di}ssociate events to handle xwayland commit listenerLeonardo Hernández Hernández-7/+5
2023-06-02chase wlroots map logic unificationLeonardo Hernández Hernández-14/+39
Signed-off-by: Leonardo Hernández Hernández <leohdz172@proton.me>
2023-06-02Merge branch 'main' into wlroots-nextLeonardo Hernández Hernández-13/+25
2023-06-02activate lock surface in updatemonsLeonardo Hernández Hernández-1/+4
Fixes an issue when swaylock does not receive input after turn off and then turn on the outputs
2023-06-02send frame done even if output commit failsLeonardo Hernández Hernández-2/+2
Bug: https://github.com/djpohly/dwl/issues/420 Fixes: https://github.com/djpohly/dwl/issues/353
2023-06-01Set XCURSOR_SIZENikita Ivanov-0/+1
2023-05-27destroy old client popups when focusing another clientLeonardo Hernández Hernández-9/+15
Closes: https://github.com/djpohly/dwl/issues/408
2023-05-25Prevent using a wlr_layer_surface after destroying it, due to no available ↵Micah Gorrell-1/+3
outputs
2023-04-14pass version to wlr_compositor_create()Leonardo Hernández Hernández-1/+1
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3696 Signed-off-by: Leonardo Hernández Hernández <leohdz172@proton.me>
2023-04-14Merge remote-tracking branch 'upstream/main' into wlroots-nextLeonardo Hernández Hernández-38/+43
2023-04-13correctly check if a scene node is enabledLeonardo Hernández Hernández-4/+4
checking only wlr_scene_node.enabled may result in a false positive because it does not consider if its ancestors are enabled as well.
2023-04-13remove unneeded check of `m` in arrange()Leonardo Hernández Hernández-3/+3
arrange must never be called with a NULL argument
2023-04-09Use uint32_t for ui ArgBen Collerson-1/+1
2023-04-08use fixed-size type for client tagsLeonardo Hernández Hernández-9/+9
while the size of `int` in most compilers is 32-bits, the size of int and all other integer types are implementation defined, so make sure we can use up to 32-bits
2023-04-08remove tag labels from dwlBen Collerson-4/+1
Tag labels are not used in dwl. Only the number of tags is important. Tag labels should be defined for each tag in whatever status bar is used.
2023-03-16display clients count in monocle symbolYves Zoundi-2/+10
- Replicate missing functionality from dwl to display the client count in monocle mode - Add ltsymbol field to Monitor struct - Display client count in monocle mode when greater than zero - Tested with somebar and dwlb
2023-03-07Missing apostropheA Frederick Christensen-1/+1
2023-03-07do not call dmabuf_create twiceLeonardo Hernández Hernández-4/+14
it is called automatically by `wlr_renderer_init_wl_display()` but since we need a pointer to wlr_linux_dmabuf_v1 to integrate it with scene API we need to recreate that function. Bug: https://github.com/emersion/xdg-desktop-portal-wlr/issues/216 Fixes: https://github.com/djpohly/dwl/issues/398
2023-02-20add support for linux-dmabuf-unstable-v1Leonardo Hernández Hernández-0/+4
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3726 References: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/main/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml