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