Revert to Xinerama 1.1 In order to make a "quick" release it has been
decided that the priority is to preserve the server's internal API/ABI so that third-party drivers that depend on symbols like noPanoramiXExtension, etc., would not need to be recompiled. Toobad gcc on Linux doesn't support ELF's weak symbols as that would have been a reasonable solution for preserving the ABI. N.B.: While symbols, i.e. functions and variables revert to the old name, I did not revert build names, i.e. -DXINERAMA, to the old -DPANORAMIX. There was no need, and it's just a build issue that has no impact on the binary output of the build.
This commit is contained in:
parent
b052486adb
commit
cb718ce08e
|
@ -1,4 +1,4 @@
|
||||||
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/cr/crScreen.m,v 1.1.4.1 2003/12/06 13:24:23 kaleb Exp $ */
|
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/cr/crScreen.m,v 1.1.4.2 2003/12/18 19:29:13 kaleb Exp $ */
|
||||||
/*
|
/*
|
||||||
* Cocoa rootless implementation initialization
|
* Cocoa rootless implementation initialization
|
||||||
*/
|
*/
|
||||||
|
@ -68,7 +68,7 @@ CRDisplayInit(void)
|
||||||
{
|
{
|
||||||
ErrorF("Display mode: Rootless Quartz -- Cocoa implementation\n");
|
ErrorF("Display mode: Rootless Quartz -- Cocoa implementation\n");
|
||||||
|
|
||||||
if (noPseudoramaExtension) {
|
if (noPseudoramiXExtension) {
|
||||||
darwinScreensFound = [[NSScreen screens] count];
|
darwinScreensFound = [[NSScreen screens] count];
|
||||||
} else {
|
} else {
|
||||||
darwinScreensFound = 1; // only Pseudorama knows about the rest
|
darwinScreensFound = 1; // only Pseudorama knows about the rest
|
||||||
|
@ -89,7 +89,7 @@ CRScreenParams(int index, DarwinFramebufferPtr dfb)
|
||||||
dfb->bitsPerPixel = CGDisplayBitsPerPixel(kCGDirectMainDisplay);
|
dfb->bitsPerPixel = CGDisplayBitsPerPixel(kCGDirectMainDisplay);
|
||||||
dfb->colorBitsPerPixel = 3 * dfb->bitsPerComponent;
|
dfb->colorBitsPerPixel = 3 * dfb->bitsPerComponent;
|
||||||
|
|
||||||
if (noPseudoramaExtension) {
|
if (noPseudoramiXExtension) {
|
||||||
NSScreen *screen = [[NSScreen screens] objectAtIndex:index];
|
NSScreen *screen = [[NSScreen screens] objectAtIndex:index];
|
||||||
NSRect frame = [screen frame];
|
NSRect frame = [screen frame];
|
||||||
|
|
||||||
|
@ -169,7 +169,7 @@ CRScreenParams(int index, DarwinFramebufferPtr dfb)
|
||||||
ErrorF("Pseudorama screen %d placed at X11 coordinate (%d,%d).\n",
|
ErrorF("Pseudorama screen %d placed at X11 coordinate (%d,%d).\n",
|
||||||
i, (int)frame.origin.x, (int)frame.origin.y);
|
i, (int)frame.origin.x, (int)frame.origin.y);
|
||||||
|
|
||||||
PseudoramaAddScreen(frame.origin.x, frame.origin.y,
|
PseudoramiXAddScreen(frame.origin.x, frame.origin.y,
|
||||||
frame.size.width, frame.size.height);
|
frame.size.width, frame.size.height);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/pseudoramiX.h,v 1.2 2003/04/30 23:15:39 torrey Exp $ */
|
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/quartz.c,v 1.1.4.3 2003/12/18 19:29:12 kaleb Exp $ */
|
||||||
/**************************************************************
|
/**************************************************************
|
||||||
*
|
*
|
||||||
* Quartz-specific support for the Darwin X Server
|
* Quartz-specific support for the Darwin X Server
|
||||||
|
@ -61,7 +61,7 @@ int quartzServerVisible = TRUE;
|
||||||
int quartzServerQuitting = FALSE;
|
int quartzServerQuitting = FALSE;
|
||||||
int quartzScreenIndex = 0;
|
int quartzScreenIndex = 0;
|
||||||
int aquaMenuBarHeight = 0;
|
int aquaMenuBarHeight = 0;
|
||||||
int noPseudoramaExtension = TRUE;
|
int noPseudoramiXExtension = TRUE;
|
||||||
QuartzModeProcsPtr quartzProcs = NULL;
|
QuartzModeProcsPtr quartzProcs = NULL;
|
||||||
const char *quartzOpenGLBundle = NULL;
|
const char *quartzOpenGLBundle = NULL;
|
||||||
|
|
||||||
|
@ -143,8 +143,8 @@ void DarwinModeInitOutput(
|
||||||
// Init Pseudorama implementation of Xinerama.
|
// Init Pseudorama implementation of Xinerama.
|
||||||
// This should be in InitExtensions, but that causes link errors
|
// This should be in InitExtensions, but that causes link errors
|
||||||
// for servers that don't link in pseudorama.c.
|
// for servers that don't link in pseudorama.c.
|
||||||
if (!noPseudoramaExtension) {
|
if (!noPseudoramiXExtension) {
|
||||||
PseudoramaExtensionInit(argc, argv);
|
PseudoramiXExtensionInit(argc, argv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/quartzCocoa.m,v 1.1.4.2 2003/12/18 19:29:12 kaleb Exp $ */
|
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/quartzCocoa.m,v 1.1.4.3 2004/02/25 21:46:45 kaleb Exp $ */
|
||||||
/**************************************************************
|
/**************************************************************
|
||||||
*
|
*
|
||||||
* Quartz-specific support for the Darwin X Server
|
* Quartz-specific support for the Darwin X Server
|
||||||
|
@ -70,12 +70,12 @@ void QuartzReadPreferences(void)
|
||||||
if (quartzRootless) {
|
if (quartzRootless) {
|
||||||
// Use Pseudorama instead of Xinerama
|
// Use Pseudorama instead of Xinerama
|
||||||
noPanoramiXExtension = TRUE;
|
noPanoramiXExtension = TRUE;
|
||||||
noPseudoramaExtension = ![Preferences xinerama];
|
noPseudoramiXExtension = ![Preferences xinerama];
|
||||||
|
|
||||||
quartzUseAGL = [Preferences useAGL];
|
quartzUseAGL = [Preferences useAGL];
|
||||||
} else {
|
} else {
|
||||||
noPanoramiXExtension = ![Preferences xinerama];
|
noPanoramiXExtension = ![Preferences xinerama];
|
||||||
noPseudoramaExtension = TRUE;
|
noPseudoramiXExtension = TRUE;
|
||||||
|
|
||||||
// Full screen can't use AGL for GLX
|
// Full screen can't use AGL for GLX
|
||||||
quartzUseAGL = FALSE;
|
quartzUseAGL = FALSE;
|
||||||
|
|
|
@ -69,9 +69,11 @@ const static struct {
|
||||||
{57, XK_Caps_Lock},
|
{57, XK_Caps_Lock},
|
||||||
{58, XK_Alt_L},
|
{58, XK_Alt_L},
|
||||||
{59, XK_Control_L},
|
{59, XK_Control_L},
|
||||||
|
|
||||||
{60, XK_Shift_R},
|
{60, XK_Shift_R},
|
||||||
{61, XK_Alt_R},
|
{61, XK_Alt_R},
|
||||||
{62, XK_Control_R},
|
{62, XK_Control_R},
|
||||||
|
{63, XK_Meta_R},
|
||||||
|
|
||||||
{122, XK_F1},
|
{122, XK_F1},
|
||||||
{120, XK_F2},
|
{120, XK_F2},
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/xpr/xprScreen.c,v 1.1.4.1 2003/12/06 13:24:23 kaleb Exp $ */
|
/* $XdotOrg: xc/programs/Xserver/hw/darwin/quartz/xpr/xprScreen.c,v 1.1.4.2 2003/12/18 19:29:13 kaleb Exp $ */
|
||||||
/*
|
/*
|
||||||
* Xplugin rootless implementation screen functions
|
* Xplugin rootless implementation screen functions
|
||||||
*/
|
*/
|
||||||
|
@ -143,7 +143,7 @@ displayScreenBounds(CGDirectDisplayID id)
|
||||||
* Add a physical screen with Pseudorama.
|
* Add a physical screen with Pseudorama.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
addPseudoramaScreens(int *x, int *y, int *width, int *height)
|
addPseudoramiXScreens(int *x, int *y, int *width, int *height)
|
||||||
{
|
{
|
||||||
CGDisplayCount i, displayCount;
|
CGDisplayCount i, displayCount;
|
||||||
CGDirectDisplayID *displayList = NULL;
|
CGDirectDisplayID *displayList = NULL;
|
||||||
|
@ -185,7 +185,7 @@ addPseudoramaScreens(int *x, int *y, int *width, int *height)
|
||||||
ErrorF("Pseudorama screen %d placed at X11 coordinate (%d,%d).\n",
|
ErrorF("Pseudorama screen %d placed at X11 coordinate (%d,%d).\n",
|
||||||
i, (int)frame.origin.x, (int)frame.origin.y);
|
i, (int)frame.origin.x, (int)frame.origin.y);
|
||||||
|
|
||||||
PseudoramaAddScreen(frame.origin.x, frame.origin.y,
|
PseudoramiXAddScreen(frame.origin.x, frame.origin.y,
|
||||||
frame.size.width, frame.size.height);
|
frame.size.width, frame.size.height);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -209,7 +209,7 @@ xprDisplayInit(void)
|
||||||
/* With Pseudorama, the X server only sees one screen; only Pseudorama
|
/* With Pseudorama, the X server only sees one screen; only Pseudorama
|
||||||
itself knows about all of the screens. */
|
itself knows about all of the screens. */
|
||||||
|
|
||||||
if (noPseudoramaExtension)
|
if (noPseudoramiXExtension)
|
||||||
darwinScreensFound = displayCount;
|
darwinScreensFound = displayCount;
|
||||||
else
|
else
|
||||||
darwinScreensFound = 1;
|
darwinScreensFound = 1;
|
||||||
|
@ -270,7 +270,7 @@ xprAddScreen(int index, ScreenPtr pScreen)
|
||||||
dfb->colorBitsPerPixel = 8;
|
dfb->colorBitsPerPixel = 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (noPseudoramaExtension)
|
if (noPseudoramiXExtension)
|
||||||
{
|
{
|
||||||
CGDirectDisplayID dpy;
|
CGDirectDisplayID dpy;
|
||||||
CGRect frame;
|
CGRect frame;
|
||||||
|
@ -286,7 +286,7 @@ xprAddScreen(int index, ScreenPtr pScreen)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
addPseudoramaScreens(&dfb->x, &dfb->y, &dfb->width, &dfb->height);
|
addPseudoramiXScreens(&dfb->x, &dfb->y, &dfb->width, &dfb->height);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Passing zero width (pitch) makes miCreateScreenResources set the
|
/* Passing zero width (pitch) makes miCreateScreenResources set the
|
||||||
|
|
Loading…
Reference in New Issue