Commit graph

1245 commits

Author SHA1 Message Date
Leonardo Hernández Hernández 19a8a095eb
call setfullscreen() in setmon()
this will help when sending to another monitor a fullscreen client
and also will prevent a crash when a client request fullscreen when it has no monitor
2022-09-02 18:22:15 -05:00
Leonardo Hernández Hernández 1f59b76d77
prevent segfault when destroying monitors
also don't count unmapped surfaces for exclusive zone
and exclusive_focus is now of type `void *`
2022-09-02 18:17:53 -05:00
Leonardo Hernández Hernández 40b1c0b849
Revert "Revert "various improvements to layer surface""
This reverts commit c017916d35.
2022-09-02 16:54:53 -05:00
Leonardo Hernández Hernández c017916d35
Revert "various improvements to layer surface"
see https://github.com/djpohly/dwl/issues/289#issuecomment-1231287114

This reverts commit 2260519740.
2022-08-31 16:05:19 -05:00
Leonardo Hernández Hernández 2260519740 various improvements to layer surface
- remove various useless assignments of layersurface->mon
- styles changes
- do not set wlr_layer_surface->output to NULL at destroy
2022-08-29 21:32:59 -05:00
Leonardo Hernández Hernández 0e993b5fb1
conform the idle inhibitor protocol
previously we disable idle tracking simply due to the fact that it exist
2022-08-28 22:40:11 -05:00
Leonardo Hernández Hernández 83e37820d7
add support for the single pixel buffer protocol 2022-08-28 22:15:57 -05:00
Leonardo Hernández Hernández d738573e22
new function to notify keyboard enter 2022-08-27 16:34:29 -05:00
Leonardo Hernández Hernández b9295e8cee
sort client.h functions 2022-08-27 16:33:46 -05:00
Leonardo Hernández Hernández e0cc5b046c
Merge remote-tracking branch 'djpohly/main' into wlroots-next 2022-08-26 18:26:36 -05:00
Leonardo Hernández Hernández 406aebcbd2
prevent an infinite loop if try to use focusmon() with all monitors disabled 2022-08-25 00:20:21 -05:00
Leonardo Hernández Hernández dfcd142ce4
don't try to set monitor for clients in createmon()
this is done in updatemons()
2022-08-23 13:29:12 -05:00
Leonardo Hernández Hernández 07bf1832bf
set monitor for clients that don't have one in updatemons()
only if selmon is enabled and the clients are mapped
2022-08-23 13:28:01 -05:00
Leonardo Hernández Hernández 174919ec53
set monitor for clients that don't have one on monitor creation 2022-08-18 16:55:13 -05:00
Leonardo Hernández Hernández a7f77160d1
don't respect size hints for fullscreen clients
Fixes: #292
2022-08-16 21:39:42 -05:00
Leonardo Hernández Hernández 7a343b98cf
change type of c->bw: int -> unsigned int 2022-08-13 00:41:08 -05:00
Leonardo Hernández Hernández 8d2516e83c
reorder isfullscreen in Client definition 2022-08-13 00:38:08 -05:00
Leonardo Hernández Hernández f173c56c32
initialize to zero the box used in commitnotify() 2022-08-13 00:12:46 -05:00
Leonardo Hernández Hernández 28af37cd1f
handle client_from_wlr_surface() receiving a subsurface 2022-08-12 23:58:11 -05:00
Leonardo Hernández Hernández 48396a1bf8 fix crash when setting a custom mode 2022-08-12 23:21:25 -05:00
Leonardo Hernández Hernández b6e3fc1645 rework outputmgrapplyortest()
first disable requested monitors, then enable and/or change mode, x and y, etc.
This is mostly what sway does
2022-08-12 23:21:25 -05:00
Devin J. Pohly 3431ac165d 2200: let's use this wisely
Looks like [suckless-dev] was right about one thing.
2022-08-12 23:21:00 -05:00
Leonardo Hernández Hernández 6ce035303e
fix dist target 2022-08-08 21:30:37 -05:00
Leonardo Hernández Hernández 620fd9dc56
use git describe to generate version 2022-08-08 21:19:16 -05:00
Leonardo Hernández Hernández 662e06e68e
check client_from_wlr_surface() returning NULL in urgent()
fix #281
2022-07-30 14:44:17 -05:00
Dima Krasner 9d2eb8483b fix segfault if parent->mon is unset 2022-07-25 01:19:36 -05:00
Leonardo Hernández Hernández 7eee0a8229
use the layer surface to create popups 2022-07-24 16:43:13 -05:00
Leonardo Hernández Hernández b04c73be3d
make sure we do not create a double fullscreen_bg
and also make sure we do not destroy it if it does not exist
Fixes: #274
2022-07-23 13:28:15 -05:00
Leonardo Hernández Hernández 8cdb997126
conform the xdg-protocol with fullscreen translucent clients
see `setfullscreen()` for more info
2022-07-23 02:17:00 -05:00
Leonardo Hernández Hernández 90a12c90a0
always set the same monitor and tags for child clients of a client
fixes #272
2022-07-19 20:13:56 -05:00
Leonardo Hernández Hernández e082292606
do not focus clients if a layer surface is focused 2022-07-19 12:24:24 -05:00
Dima Krasner deb48ff48b force line-buffered stdout if stdout is not a tty 2022-07-19 12:18:16 -05:00
Leonardo Hernández Hernández c70db2d06a
Revert "only call wlr_seat_keyboard_notify_enter() if a keyboard is found"
This reverts commit 8e03bce621.
fixes #270
2022-07-19 11:52:42 -05:00
Leonardo Hernández Hernández e98719f552
remove a useless check
if `s->role_data == NULL`, wlr_*_surface_from_wlr_surface() will return NULL
and we are checking it
2022-07-15 00:48:28 -05:00
Leonardo Hernández Hernández 058c699ac2
only set bounds for clients that support it 2022-07-15 00:27:31 -05:00
David-Valters af12e777f2 Update README.md 2022-07-13 20:19:43 -05:00
Leonardo Hernández Hernández 8e03bce621
only call wlr_seat_keyboard_notify_enter() if a keyboard is found 2022-07-07 00:21:51 -05:00
Leonardo Hernández Hernández 87fc3a58ab
check pointer focus in arrange() 2022-07-06 23:48:53 -05:00
Leonardo Hernández Hernández 0eff78d6c2
include DWLCFLAGS into linking step 2022-07-06 23:41:42 -05:00
Leonardo Hernández Hernández c6d97f1db7
arrange client's monitor if size has change since last commit 2022-07-06 22:20:21 -05:00
Leonardo Hernández Hernández 829dec6598
resize now takes struct wlr_box as parameter 2022-07-06 22:18:46 -05:00
Leonardo Hernández Hernández ff70337c16
check current and pending geometry to set c->resize to zero
Fixes #260
2022-07-06 22:16:00 -05:00
Ben Jargowsky 7cc6c640e2 Checks for overflows for client max width and height 2022-06-29 00:35:06 +02:00
Leonardo Hernández Hernández 72e0a560d9
respect size hints 2022-06-24 19:19:20 -05:00
Leonardo Hernández Hernández 2aa391361c
inline unmaplayersurface() into unmaplayersurfacenotify()
unmap signal is guaranted to be emitted before destroy signal
so is useless checking if it is mapped at destroy
2022-06-24 15:36:13 -05:00
Leonardo Hernández Hernández 549335ae54
avoid layer surface popups appearing below x{dg,wayland} clients 2022-06-24 14:46:08 -05:00
Leonardo Hernández Hernández 097b4a30f5
unconstrain layer shell popups from monitor size
unconstrain other popups from monitor usable area
2022-06-24 14:30:52 -05:00
Leonardo Hernández Hernández 461d02d3e0
chase wlroots input_device changes 2022-06-21 16:25:18 -05:00
Leonardo Hernández Hernández c1578bc14d
use LayerSurface.mon when possible 2022-06-21 16:03:20 -05:00
Leonardo Hernández Hernández 9b84940e37
unconstrain layer shell popups
also unconstrain popups from monitor's usable area
2022-06-21 00:23:21 -05:00