[Xquartz-changes] xserver: Branch 'master' - 2 commits
Jeremy Huddleston
jeremyhu at freedesktop.org
Sat Mar 20 16:37:21 PDT 2010
Rebased ref, commits from common ancestor:
commit 2e438ffd7e05a7539dcd283baabdd57fbf90c8dc
Author: Jeremy Huddleston <jeremyhu at apple.com>
Date: Fri Mar 19 17:24:27 2010 -0700
XQuartz: Constrain the pointer to the updated display bounds on display reconfigure.
http://xquartz.macosforge.org/trac/ticket/346
diff --git a/hw/xquartz/quartz.c b/hw/xquartz/quartz.c
index 3c04205..59107be 100644
--- a/hw/xquartz/quartz.c
+++ b/hw/xquartz/quartz.c
@@ -241,6 +241,7 @@ void QuartzUpdateScreens(void) {
WindowPtr pRoot;
int x, y, width, height, sx, sy;
xEvent e;
+ BoxRec bounds;
if (noPseudoramiXExtension || screenInfo.numScreens != 1)
{
@@ -277,8 +278,16 @@ void QuartzUpdateScreens(void) {
//pScreen->PaintWindowBackground (pRoot, &pRoot->borderClip, PW_BACKGROUND);
miPaintWindow(pRoot, &pRoot->borderClip, PW_BACKGROUND);
-// TODO: This is a noop in 1.6 and nuked in master... we may need to do something else now to handle it
-// DefineInitialRootWindow(pRoot);
+ /* <rdar://problem/7770779> pointer events are clipped to old display region after display reconfiguration
+ * http://xquartz.macosforge.org/trac/ticket/346
+ */
+ bounds.x1 = 0;
+ bounds.x2 = width;
+ bounds.y1 = 0;
+ bounds.y2 = height;
+ pScreen->ConstrainCursor(inputInfo.pointer, pScreen, &bounds);
+ inputInfo.pointer->spriteInfo->sprite->physLimits = bounds;
+ inputInfo.pointer->spriteInfo->sprite->hotLimits = bounds;
DEBUG_LOG("Root Window: %dx%d @ (%d, %d) darwinMainScreen (%d, %d) xy (%d, %d) dixScreenOrigins (%d, %d)\n", width, height, x - sx, y - sy, darwinMainScreenX, darwinMainScreenY, x, y, dixScreenOrigins[pScreen->myNum].x, dixScreenOrigins[pScreen->myNum].y);
commit 38215cc43e4c012588c7a50344b8fe368d1252cc
Author: Jeremy Huddleston <jeremyhu at freedesktop.org>
Date: Sat Mar 20 11:03:28 2010 -0700
XQuartz: pbproxy: Make standalone xpbproxy respect the launchd prefix
Signed-off-by: Jeremy Huddleston <jeremyhu at freedesktop.org>
diff --git a/hw/xquartz/pbproxy/Makefile.am b/hw/xquartz/pbproxy/Makefile.am
index 02da6b2..1886642 100644
--- a/hw/xquartz/pbproxy/Makefile.am
+++ b/hw/xquartz/pbproxy/Makefile.am
@@ -1,5 +1,7 @@
-AM_CPPFLAGS=-F/System/Library/Frameworks/ApplicationServices.framework/Frameworks
-AM_CFLAGS=$(XPBPROXY_CFLAGS)
+AM_CPPFLAGS=-F/System/Library/Frameworks/ApplicationServices.framework/Frameworks \
+ -DLAUNCHD_ID_PREFIX=\"$(LAUNCHD_ID_PREFIX)\"
+
+AM_CFLAGS=$(XPBPROXY_CFLAGS)
noinst_LTLIBRARIES = libxpbproxy.la
libxpbproxy_la_SOURCES = \
diff --git a/hw/xquartz/pbproxy/app-main.m b/hw/xquartz/pbproxy/app-main.m
index b30dfb8..b00e90a 100644
--- a/hw/xquartz/pbproxy/app-main.m
+++ b/hw/xquartz/pbproxy/app-main.m
@@ -34,7 +34,7 @@
#include <unistd.h> /*for getpid*/
#include <Cocoa/Cocoa.h>
-static const char *app_prefs_domain = "org.x.X11";
+static const char *app_prefs_domain = LAUNCHD_ID_PREFIX".xpbproxy";
CFStringRef app_prefs_domain_cfstr;
/* Stubs */
@@ -73,7 +73,7 @@ int main (int argc, const char *argv[]) {
printf("usage: xpbproxy OPTIONS\n"
"Pasteboard proxying for X11.\n\n"
"--prefs-domain <domain> Change the domain used for reading preferences\n"
- " (default: org.x.X11)\n");
+ " (default: %s)\n", app_prefs_domain);
return 0;
} else {
fprintf(stderr, "usage: xpbproxy OPTIONS...\n"
More information about the Xquartz-changes
mailing list