mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-22 20:35:43 +00:00
Enable event delivery for multiple heads.
Requires moving the spriteTrace into the DeviceIntRec and adjusting a few functions to take in device argument, most notably XYToWindow(). Cursor rendering on the second screen is busted.
This commit is contained in:
parent
d61ed6c8a2
commit
82f97e1c0c
16 changed files with 143 additions and 100 deletions
|
|
@ -357,7 +357,7 @@ extern Bool IsParent(
|
|||
WindowPtr /* maybeparent */,
|
||||
WindowPtr /* child */);
|
||||
|
||||
extern WindowPtr GetCurrentRootWindow(void);
|
||||
extern WindowPtr GetCurrentRootWindow(DeviceIntPtr pDev);
|
||||
|
||||
extern WindowPtr GetSpriteWindow(DeviceIntPtr pDev);
|
||||
|
||||
|
|
|
|||
|
|
@ -287,6 +287,18 @@ typedef struct {
|
|||
WindowPtr windows[MAXSCREENS];
|
||||
WindowPtr confineWin; /* confine window */
|
||||
#endif
|
||||
/* The window trace information is used at dix/events.c to avoid having
|
||||
* to compute all the windows between the root and the current pointer
|
||||
* window each time a button or key goes down. The grabs on each of those
|
||||
* windows must be checked.
|
||||
* spriteTraces should only be used at dix/events.c! */
|
||||
WindowPtr *spriteTrace;
|
||||
int spriteTraceSize;
|
||||
int spriteTraceGood;
|
||||
|
||||
ScreenPtr pEnqueueScreen; /* screen events are being delivered to */
|
||||
ScreenPtr pDequeueScreen; /* screen events are being dispatched to */
|
||||
|
||||
} SpriteRec, *SpritePtr;
|
||||
|
||||
/* states for devices */
|
||||
|
|
|
|||
Loading…
Reference in a new issue