~ruther/dwl

ref: patch/foreign-toplevel-management dwl/client.h -rw-r--r-- 10.1 KiB
c3d9f264 — wochap 11 months ago
implement foreign toplevel management
dd00d994 — Leonardo Hernández Hernández 1 year, 15 days ago
do not set withdrawn state for xwayland clients

Closes: https://codeberg.org/dwl/dwl/issues/573
298949bb — Guido Cella 1 year, 2 months ago
place child clients above fullscreen clients

When a child window of a fullscreen client is mapped, the fullscreen is
disabled, and if the previously fullscreen client is floating the child
window is rendered below it and cannot be seen, causing confusion,
though it is still focused and interactable.

Fix this by putting children of fullscreen clients in LyrFS instead of
LyrFloat, and by returning before the unset_fullscreen code is called
when they are mapped.

focusstack() now lets you switch focus from a fullscreen client to its
child windows, otherwise if you switch focus from the child window to
the fullscreen client you could not focus the child window again and the
fullscreen client would stay unresponsive.

Child clients are not reparented to LyrFloat after leaving fullscreen,
so you could spawn a child window, focus back the fullscreen client,
unfullscreen it, and the child window would still be drawn above other
floating clients. Avoid dealing with this edge case to keep the line
count low.

These cases can be tested by pressing Ctrl+o in applications with an
open file dialog.
17c5cbbf — Guido Cella 1 year, 2 months ago
make XWayland clients inherit tags and monitors

Revert 3213088 because the linked bug can no longer be reproduced with
wlroots 0.17, and update client_get_parent() so it doesn't segfault with
XWayland surfaces. This also allows reusing the p variable in the next
commit.
0151bd48 — Leonardo Hernández Hernández 2 years ago
turn on -Wsign-compare
fa660fb6 — Leonardo Hernández Hernández 1 year, 4 months ago
check toplevel resources

it's just a aesthetic change
49bfe927 — Leonardo Hernández Hernández 1 year, 4 months ago
merge X11Managed and X11Unmanaged into X11

now that client_is_unmanaged() checks the wlr struct we don't need to keep
track of it ourselves
c8896075 — Leonardo Hernández Hernández 1 year, 4 months ago
check if a client is unmanaged checking the o-r flag

it may change at any moment and I don't really want to add a listener for it
7ac76219 — Leonardo Hernández Hernández 1 year, 4 months ago
Merge branch 'wlroots-next'
a0e79d81 — Leonardo Hernández Hernández 1 year, 4 months ago
Do not send repeated xdg_toplevel.configure_bounds

Fixes: 32e66f45827cc8016ca2cef65ba61840f43fcc85
7bdbab04 — Leonardo Hernández Hernández 1 year, 4 months ago
check toplevel resource instead of client's xdg_shell to set bounds
dd25cdb5 — Leonardo Hernández Hernández 1 year, 4 months ago
use the new wlroots function to get a toplevel from a wlr_surface

References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4419
caac2d66 — Leonardo Hernández Hernández 1 year, 4 months ago
explicitly return -1 in the first check in toplevel_from_wlr_surface
b1740056 — Leonardo Hernández Hernández 1 year, 4 months ago
do not use #ifdef -> #else -> #endif in client_is_x11

all other funcions use #ifdef -> #endif
0067c76c — Leonardo Hernández Hernández 1 year, 4 months ago
delete unused functions
22d21676 — Leonardo Hernández Hernández 1 year, 4 months ago
style fixes in client_is_float_type
d6c102d9 — Leonardo Hernández Hernández 1 year, 4 months ago
correctly check if the scene node is enabled in client_is_rendered_on_mon
0e897608 — Leonardo Hernández Hernández 1 year, 4 months ago
do not use magical numbers to check edges

the interface is declared stable, which means we could just use 0 anyway
6d0ec595 — Leonardo Hernández Hernández 1 year, 4 months ago
simplify client_get_clip

the clips for xwayland and xdg clients are pretty similar, after all we only
need to adjust x and y for xdg clients
e1f3983b — Leonardo Hernández Hernández 1 year, 9 months ago
use wlr_scene_subsurface_tree_set_clip

References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4131
Closes: https://github.com/djpohly/dwl/issues/411
Next
Do not follow this link