Commit 1510d25
committed
Cache GUIVM keyboard layout in
On XFCE systems with multiple keyboard layouts and with XFCE Keyboard
Layout widget, X raises two `XKLAVIER_ALLOW_SECONDARY` events shortly
after each other (see 1st issue).
The current intended behaviour is to ignore the 2nd event by checking if
the GUIVMs current layout is similar to the new requested layout.
Unfortunately, after setting the GUIVM's keyboard layout, Qubes Core
goes to this loop to propagate the new layout to all child qubes:
https://github.com/QubesOS/qubes-core-admin/blob/main/qubes/ext/gui.py#L162-L170
And even if we move the condition after that loop just before it, it is
still too slow to report back the new layout via qubesdb for
`qvm-stat-daemon` use.
In order to avoid this race condition, it would be better to cache the
layout within `qvm-start-daemon` itself.
fixes: QubesOS/qubes-issues#8441
fixes: QubesOS/qubes-issues#6517qvm-start-daemon
1 parent f9eb4a5 commit 1510d25
1 file changed
Lines changed: 3 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
363 | 363 | | |
364 | 364 | | |
365 | 365 | | |
| 366 | + | |
366 | 367 | | |
367 | 368 | | |
368 | 369 | | |
| |||
449 | 450 | | |
450 | 451 | | |
451 | 452 | | |
452 | | - | |
453 | | - | |
454 | | - | |
| 453 | + | |
455 | 454 | | |
| 455 | + | |
456 | 456 | | |
457 | 457 | | |
458 | 458 | | |
| |||
0 commit comments