sway/sway
Kenny Levinsen b23e670824 tree/view: Send estimated configure before mapping
Sending 0,0 as configure dimensions indicate that the client is free to
pick its own dimensions. When tiling, the client needs to strictly
adhere to the tile dimensions. Sway's handling of this has been to send
a the appropriate dimensions in a new configure when the surface is
mapped, leading to the first buffer most likely being incorrectly sized.

Introduce a view_premap which goes through part of the mapping dance,
calculating what the container dimensions would be at this time and
sending it as a configure. This is only an estimate and inherently
racey if the user very quickly changes focused workspace between surface
role commit and first attached buffer, but when it works the client has
a chance of getting the first buffer right, when it doesn't it is no
worse than it would have been otherwise.

Fixes: https://github.com/swaywm/sway/issues/2176
2024-08-24 23:43:12 +02:00
..
commands commands/output/color_profile: allows use of relative path for ICC profile 2024-08-14 11:03:53 +02:00
config config/output: Skip search if config has a mode 2024-08-19 12:03:48 -04:00
desktop tree/view: Send estimated configure before mapping 2024-08-24 23:43:12 +02:00
input Chase wlroots!2434 2024-07-14 23:19:19 +02:00
tree tree/view: Send estimated configure before mapping 2024-08-24 23:43:12 +02:00
commands.c Add support for tearing-control-v1 2024-08-05 02:13:49 +02:00
config.c Drop server.h include from input/input-manager.h 2024-05-27 09:28:43 -04:00
criteria.c Drop server.h include from input/input-manager.h 2024-05-27 09:28:43 -04:00
decoration.c Fix double free when unmapping any view 2018-11-15 15:22:09 +10:00
ipc-json.c Add null-safety check for virtual keyboard keymaps 2024-08-09 22:03:41 +02:00
ipc-server.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
lock.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
main.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
meson.build Add support for tearing-control-v1 2024-08-05 02:13:49 +02:00
realtime.c realtime: request SCHED_RR using CAP_SYS_NICE 2022-05-18 11:20:17 +02:00
scene_descriptor.c scene_graph: Introduce sway_scene_descriptor 2024-01-18 18:36:54 +03:00
server.c output: Use wlr_scene_set_gamma_control_manager_v1 2024-08-14 20:45:04 +03:00
sway-bar.5.scd man: update Pango font description URL 2021-08-04 02:15:04 +02:00
sway-input.5.scd Implement clickfinger_button_map support. 2024-07-04 22:47:46 +02:00
sway-ipc.7.scd Implement clickfinger_button_map support. 2024-07-04 22:47:46 +02:00
sway-output.5.scd Add support for tearing-control-v1 2024-08-05 02:13:49 +02:00
sway.1.scd man: update maintainer 2021-01-08 09:33:51 +01:00
sway.5.scd Add support for tearing-control-v1 2024-08-05 02:13:49 +02:00
sway_text_node.c sway_text_node: avoid unnecessary redraws 2024-07-03 18:30:08 -04:00
swaynag.c Define _POSIX_C_SOURCE globally 2024-02-23 17:43:19 +03:00
xdg_activation_v1.c xdg-activation: launcher tokens are activation requests 2024-07-06 16:12:27 +02:00
xdg_decoration.c xdg-shell: chase events update 2023-11-23 19:41:57 +01:00