2 * Xplugin rootless implementation
4 * Copyright (c) 2003 Torrey T. Lyons. All Rights Reserved.
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the "Software"),
8 * to deal in the Software without restriction, including without limitation
9 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 * and/or sell copies of the Software, and to permit persons to whom the
11 * Software is furnished to do so, subject to the following conditions:
13 * The above copyright notice and this permission notice shall be included in
14 * all copies or substantial portions of the Software.
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 * THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
20 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 * DEALINGS IN THE SOFTWARE.
24 * Except as contained in this notice, the name(s) of the above copyright
25 * holders shall not be used in advertising or otherwise to promote the sale,
26 * use or other dealings in this Software without prior written authorization.
32 #include "windowstr.h"
33 #include "screenint.h"
36 Bool QuartzModeBundleInit(void);
38 void AppleDRIExtensionInit(void);
39 void xprAppleWMInit(void);
40 Bool xprInit(ScreenPtr pScreen);
41 Bool xprIsX11Window(void *nsWindow, int windowNumber);
42 WindowPtr xprGetXWindow(xp_window_id wid);
44 void xprHideWindows(Bool hide);
46 Bool QuartzInitCursor(ScreenPtr pScreen);
47 void QuartzSuspendXCursor(ScreenPtr pScreen);
48 void QuartzResumeXCursor(ScreenPtr pScreen);
50 /* If we are rooted, we need the root window and desktop levels to be below
51 * the menubar (24) but above native windows. Normal window level is 0.
52 * Floating window level is 3. The rest are filled in as appropriate.
56 #include <X11/extensions/applewmconst.h>
57 static const int normal_window_levels[AppleWMNumWindowLevels+1] = {
58 0, 3, 4, 5, INT_MIN + 30, INT_MIN + 29,
60 static const int rooted_window_levels[AppleWMNumWindowLevels+1] = {
61 20, 21, 22, 23, 19, 18,