summaryrefslogtreecommitdiff
path: root/dix/enterleave.h
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2008-12-19 21:05:47 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2009-01-08 11:45:22 +1000
commiteb2d7b3d700952ba88c77deacf687b251300e660 (patch)
treee79d63b2f06d33660183f9c4fb526470d60b922a /dix/enterleave.h
parent673eb23aac578dcdc04e2a99d1fa5c2987eb58b8 (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.h25
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_ */