mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2026-02-20 19:50:37 +01:00
Use touch state when querying pointer through core protocol
QueryPointer is part of the core protocol. As such, it knows nothing
about touch devices. Touches are converted to button 1 press, pointer
motion, and button 1 release for core clients, so we should ensure the
pointer state mask has button 1 set when XQueryPointer is used.
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
(cherry picked from commit 12188c8a8a)
This commit is contained in:
parent
50b71dcfb8
commit
3d3ed60230
1 changed files with 1 additions and 2 deletions
|
|
@ -5097,8 +5097,7 @@ ProcQueryPointer(ClientPtr client)
|
|||
memset(&rep, 0, sizeof(xQueryPointerReply));
|
||||
rep.type = X_Reply;
|
||||
rep.sequenceNumber = client->sequence;
|
||||
rep.mask = mouse->button ? (mouse->button->state) : 0;
|
||||
rep.mask |= XkbStateFieldFromRec(&keyboard->key->xkbInfo->state);
|
||||
rep.mask = event_get_corestate(mouse, keyboard);
|
||||
rep.length = 0;
|
||||
rep.root = (GetCurrentRootWindow(mouse))->drawable.id;
|
||||
rep.rootX = pSprite->hot.x;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue