diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2008-12-19 21:05:47 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2009-01-08 11:45:22 +1000 |
commit | eb2d7b3d700952ba88c77deacf687b251300e660 (patch) | |
tree | e79d63b2f06d33660183f9c4fb526470d60b922a /dix/enterleave.h | |
parent | 673eb23aac578dcdc04e2a99d1fa5c2987eb58b8 (diff) |
dix: move focus handling into enterleave.c.
This commit moves the focus handling from events.c into enterleave.c and
implements a model similar to the core enter/leave model.
For a full description of the model, see:
http://lists.freedesktop.org/archives/xorg/2008-December/041740.html
This commit also gets rid of the focusinout array in the WindowRec, ditching
it in favour of a local array that keeps the current focus window for each
device.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'dix/enterleave.h')
-rw-r--r-- | dix/enterleave.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/dix/enterleave.h b/dix/enterleave.h index 99e2e46c9..edca38664 100644 --- a/dix/enterleave.h +++ b/dix/enterleave.h @@ -38,6 +38,13 @@ extern void DoEnterLeaveEvents( int mode ); +extern void DoFocusEvents( + DeviceIntPtr pDev, + WindowPtr fromWin, + WindowPtr toWin, + int mode +); + extern void EnterLeaveEvent( DeviceIntPtr mouse, int type, @@ -67,4 +74,22 @@ extern void EnterWindow(DeviceIntPtr dev, WindowPtr win, int mode); + +extern void CoreFocusEvent(DeviceIntPtr kbd, + int type, + int mode, + int detail, + WindowPtr pWin); + +extern void DeviceFocusEvent(DeviceIntPtr kbd, + int type, + int mode, + int detail, + WindowPtr pWin); + +extern void SetFocusIn(DeviceIntPtr kbd, + WindowPtr win); + +extern void SetFocusOut(DeviceIntPtr dev, + WindowPtr win); #endif /* _ENTERLEAVE_H_ */ |