wayland: update terminals (fonts etc) on xdg_output_handle_done()

Monitor DPI depends on information from both the wl_output and the
xdg_output interfaces.

Before this patch, terminals were only updated after changes to the
wl_output interfaces (thus depending on xdg output changes being
pushed by the compositor before wl_output changes).

That assumption (xdg_output happening before wl_output) isn’t always
true.

This patch fixes the issue by updating the terminals in the
xdg_output’s “done” event.

Closes #1431
This commit is contained in:
Daniel Eklöf 2023-07-23 20:03:31 +02:00
parent 57d8f74554
commit 0a61cfc3be
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
2 changed files with 4 additions and 0 deletions

View file

@ -52,8 +52,10 @@
### Fixed
* Crash when copying text that contains invalid UTF-8 ([#1423][1423]).
* Wrong font size after suspending the monitor ([#1431][1431]).
[1423]: https://codeberg.org/dnkl/foot/issues/1423
[1431]: https://codeberg.org/dnkl/foot/issues/1431
### Security

View file

@ -620,6 +620,8 @@ xdg_output_handle_logical_size(void *data, struct zxdg_output_v1 *xdg_output,
static void
xdg_output_handle_done(void *data, struct zxdg_output_v1 *xdg_output)
{
struct monitor *mon = data;
update_terms_on_monitor(mon);
}
static void