Xorg

xev 輸出中的“合成”是什麼意思?

  • July 6, 2020

如果執行 xev 並按 Alt,它會生成以下事件:

KeyPress event, serial 37, synthetic NO, window 0xa600001,
   root 0x5bc, subw 0x0, time 823983987, (672,346), root:(672,411),
   state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
   XLookupString gives 0 bytes: 
   XmbLookupString gives 0 bytes: 
   XFilterEvent returns: False

在這種情況下,“合成”究竟意味著什麼?

如果syntheticYES而不是NO,則表示該事件是“假”事件,由另一個 X11 客戶端生成XSendEvent(3),而不是由伺服器生成。

許多程序(例如xterm, firefox)忽略合成事件(ClientMessage 事件除外)。這比任何一種真正的安全措施都更讓人感覺良好,因為 X11 客戶端可以通過 XTest 擴展(存在並預設啟用)輕鬆生成鍵和滑鼠事件。

引用自:https://unix.stackexchange.com/questions/597036