f78b12e570284aa8291f4ca1add24937fd107403vboxsync/*
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * Copyright © 2008 Red Hat, Inc.
f78b12e570284aa8291f4ca1add24937fd107403vboxsync *
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * Permission is hereby granted, free of charge, to any person obtaining a
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * copy of this software and associated documentation files (the "Software"),
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * to deal in the Software without restriction, including without limitation
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * the rights to use, copy, modify, merge, publish, distribute, sublicense,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * and/or sell copies of the Software, and to permit persons to whom the
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * Software is furnished to do so, subject to the following conditions:
f78b12e570284aa8291f4ca1add24937fd107403vboxsync *
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * The above copyright notice and this permission notice (including the next
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * paragraph) shall be included in all copies or substantial portions of the
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * Software.
f78b12e570284aa8291f4ca1add24937fd107403vboxsync *
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * DEALINGS IN THE SOFTWARE.
f78b12e570284aa8291f4ca1add24937fd107403vboxsync *
f78b12e570284aa8291f4ca1add24937fd107403vboxsync * Authors: Peter Hutterer
f78b12e570284aa8291f4ca1add24937fd107403vboxsync *
f78b12e570284aa8291f4ca1add24937fd107403vboxsync */
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#ifdef HAVE_DIX_CONFIG_H
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#include <dix-config.h>
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#endif
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#ifndef ENTERLEAVE_H
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#define ENTERLEAVE_H
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void DoEnterLeaveEvents(
f78b12e570284aa8291f4ca1add24937fd107403vboxsync DeviceIntPtr pDev,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int sourceid,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr fromWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr toWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode
f78b12e570284aa8291f4ca1add24937fd107403vboxsync);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void DoFocusEvents(
f78b12e570284aa8291f4ca1add24937fd107403vboxsync DeviceIntPtr pDev,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr fromWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr toWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode
f78b12e570284aa8291f4ca1add24937fd107403vboxsync);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void EnterLeaveEvent(
f78b12e570284aa8291f4ca1add24937fd107403vboxsync DeviceIntPtr mouse,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int type,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int detail,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr pWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync Window child);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern WindowPtr CommonAncestor(
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr a,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr b);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void CoreEnterLeaveEvent(DeviceIntPtr mouse,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int type,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int detail,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr pWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync Window child);
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void DeviceEnterLeaveEvent(DeviceIntPtr mouse,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int sourceid,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int type,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int detail,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr pWin,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync Window child);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void EnterWindow(DeviceIntPtr dev,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr win,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void LeaveWindow(DeviceIntPtr dev);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void CoreFocusEvent(DeviceIntPtr kbd,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int type,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int detail,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr pWin);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void DeviceFocusEvent(DeviceIntPtr kbd,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int type,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int mode,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync int detail,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr pWin);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void SetFocusIn(DeviceIntPtr kbd,
f78b12e570284aa8291f4ca1add24937fd107403vboxsync WindowPtr win);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync
f78b12e570284aa8291f4ca1add24937fd107403vboxsyncextern void SetFocusOut(DeviceIntPtr dev);
f78b12e570284aa8291f4ca1add24937fd107403vboxsync#endif /* _ENTERLEAVE_H_ */