Leksykon IT › Programowanie › AllowEvents

AllowEvents

Programowanie Svenska → Zaktualizowano: 2026-10-11

Żądanie X odmrażające wskaźnik lub klawiaturę zamrożone przez synchroniczny grab — i pozwalające w trybie ReplayPointer dostarczyć kliknięcie drugi raz, jakby nikt go nie przechwycił.

Grab w trybie GrabModeSync zamraża urządzenie po pierwszym zdarzeniu: serwer kolejkuje wszystko, co następuje, dopóki klient nie zdecyduje i nie wywoła XAllowEvents. Tryby to AsyncPointer (zwolnij kolejkę i przestań zamrażać), SyncPointer (przepuść jeszcze jedno zdarzenie i zamroź ponownie) oraz ReplayPointer, a do tego odpowiedniki dla klawiatury i SyncBoth/AsyncBoth.

ReplayPointer to powód, dla którego w ogóle działa fokus po kliknięciu w X. Menedżer okien zakłada pasywny, synchroniczny grab na przycisk myszy nad każdym oknem klienta. Przy kliknięciu widzi zdarzenie pierwszy, ustawia fokus i podnosi okno, po czym odtwarza kliknięcie — już poza własnym grabem, więc aplikacja też je dostaje. Menedżer, który zapomni o wywołaniu, zostawia wskaźnik zamrożony aż do końca grabu, co użytkownik odbiera jako zawieszenie całego ekranu.

← Wróć do leksykonu