swayfx/sway/desktop
Kenny Levinsen c8bf84c82d transactions: Amend pending transactions
The transaction system contains a necessary optimization where a popped
transaction is combined with later, similar transactions. This breaks
the chronological order of states, and can lead to desynchronized
geometries.

To fix this, we replace the queue with only 2 transactions: current and
pending. If a pending transaction exists, it is updated with new state
instead of creating additional transactions.

As we never have more than a single waiting transaction, we no longer
need the queue optimization that is causing problems.

Closes: https://github.com/swaywm/sway/issues/6012
2021-02-16 00:18:26 +01:00
..
desktop.c Stop using wlr_output->{lx,ly} 2019-03-11 12:43:01 -04:00
idle_inhibit_v1.c Add views idle inhibition status in get_tree output 2020-05-29 17:29:41 -04:00
layer_shell.c desktop/layer_shell: Fix allocation type mismatch 2021-01-30 02:28:39 -05:00
output.c desktop/output: Disable head if mode is NULL 2021-01-26 10:26:37 +01:00
render.c view: Save surface x and y on saved buffers 2021-02-09 09:37:10 +01:00
surface.c Make handle_destroy and output_repaint_timer_handler static 2020-03-04 03:09:43 +01:00
transaction.c transactions: Amend pending transactions 2021-02-16 00:18:26 +01:00
xdg_shell.c view: Read geometry directly in view_update_size 2021-02-09 09:37:10 +01:00
xwayland.c view: Read geometry directly in view_update_size 2021-02-09 09:37:10 +01:00