[60274] trunk/dports/x11/xorg-server/files/ afc7663f0dc4e268ba12c8065238b34add8bdcdf.patch
jeremyhu at macports.org
jeremyhu at macports.org
Sat Nov 7 13:09:04 PST 2009
Revision: 60274
http://trac.macports.org/changeset/60274
Author: jeremyhu at macports.org
Date: 2009-11-07 13:09:04 -0800 (Sat, 07 Nov 2009)
Log Message:
-----------
xorg-server: Add missign patch, sorry
Added Paths:
-----------
trunk/dports/x11/xorg-server/files/afc7663f0dc4e268ba12c8065238b34add8bdcdf.patch
Added: trunk/dports/x11/xorg-server/files/afc7663f0dc4e268ba12c8065238b34add8bdcdf.patch
===================================================================
--- trunk/dports/x11/xorg-server/files/afc7663f0dc4e268ba12c8065238b34add8bdcdf.patch (rev 0)
+++ trunk/dports/x11/xorg-server/files/afc7663f0dc4e268ba12c8065238b34add8bdcdf.patch 2009-11-07 21:09:04 UTC (rev 60274)
@@ -0,0 +1,277 @@
+diff --git a/hw/xquartz/X11Application.h b/hw/xquartz/X11Application.h
+index 5e828a4..d7e9a5f 100644
+--- a/hw/xquartz/X11Application.h
++++ b/hw/xquartz/X11Application.h
+@@ -71,6 +71,7 @@ void X11ApplicationSetFrontProcess (void);
+ void X11ApplicationSetCanQuit (int state);
+ void X11ApplicationServerReady (void);
+ void X11ApplicationShowHideMenubar (int state);
++void X11ApplicationLaunchClient (const char *cmd);
+
+ void X11ApplicationMain(int argc, char **argv, char **envp);
+
+diff --git a/hw/xquartz/X11Application.m b/hw/xquartz/X11Application.m
+index 2c95485..f3c8a30 100644
+--- a/hw/xquartz/X11Application.m
++++ b/hw/xquartz/X11Application.m
+@@ -411,6 +411,9 @@ static void message_kit_thread (SEL selector, NSObject *arg) {
+ SetSystemUIMode(kUIModeAllHidden, quartzFullscreenMenu ? kUIOptionAutoShowMenuBar : 0); // kUIModeAllSuppressed or kUIOptionAutoShowMenuBar can be used to allow "mouse-activation"
+ }
+
++- (void) launch_client:(NSString *)cmd {
++ (void)[_controller application:self openFile:cmd];
++}
+
+ /* user preferences */
+
+@@ -856,6 +859,16 @@ void X11ApplicationShowHideMenubar (int state) {
+ [n release];
+ }
+
++void X11ApplicationLaunchClient (const char *cmd) {
++ NSString *string;
++
++ string = [[NSString alloc] initWithUTF8String:cmd];
++
++ message_kit_thread (@selector (launch_client:), string);
++
++ [string release];
++}
++
+ static void check_xinitrc (void) {
+ char *tem, buf[1024];
+ NSString *msg;
+@@ -961,12 +974,6 @@ void X11ApplicationMain (int argc, char **argv, char **envp) {
+ /* not reached */
+ }
+
+-void launch_client(const char *cmd) {
+- NSString *string = [[NSString alloc] initWithUTF8String:cmd];
+- [[X11App controller] launch_client:string];
+- [string release];
+-}
+-
+ @implementation X11Application (Private)
+
+ #ifdef NX_DEVICELCMDKEYMASK
+diff --git a/hw/xquartz/X11Controller.h b/hw/xquartz/X11Controller.h
+index 3d8e007..bb28447 100644
+--- a/hw/xquartz/X11Controller.h
++++ b/hw/xquartz/X11Controller.h
+@@ -55,7 +55,7 @@ typedef unsigned int NSUInteger;
+ #endif
+ #endif
+
+- at interface X11Controller : NSObject
++ at interface X11Controller : NSObject <NSTableViewDataSource>
+ {
+ IBOutlet NSPanel *prefs_panel;
+
+@@ -120,6 +120,7 @@ typedef unsigned int NSUInteger;
+ #endif
+ - (void) set_can_quit:(OSX_BOOL)state;
+ - (void) server_ready;
++- (OSX_BOOL) application:(NSApplication *)app openFile:(NSString *)filename;
+
+ - (IBAction) apps_table_show:(id)sender;
+ - (IBAction) apps_table_done:(id)sender;
+@@ -144,6 +145,5 @@ typedef unsigned int NSUInteger;
+ #endif /* __OBJC__ */
+
+ void X11ControllerMain(int argc, char **argv, char **envp);
+-void launch_client(const char *cmd);
+
+ #endif /* X11CONTROLLER_H */
+diff --git a/hw/xquartz/X11Controller.m b/hw/xquartz/X11Controller.m
+index 1191547..b28f4d3 100644
+--- a/hw/xquartz/X11Controller.m
++++ b/hw/xquartz/X11Controller.m
+@@ -426,8 +426,8 @@
+ [[columns objectAtIndex:2] setIdentifier:@"2"];
+
+ [apps_table setDataSource:self];
+- [apps_table selectRow:0 byExtendingSelection:NO];
+-
++ [apps_table selectRowIndexes:[NSIndexSet indexSetWithIndex:0] byExtendingSelection:NO];
++
+ [[apps_table window] makeKeyAndOrderFront:sender];
+ [apps_table reloadData];
+ if(oldapps != nil)
+@@ -474,7 +474,7 @@
+ [item release];
+
+ [apps_table reloadData];
+- [apps_table selectRow:row byExtendingSelection:NO];
++ [apps_table selectRowIndexes:[NSIndexSet indexSetWithIndex:row] byExtendingSelection:NO];
+ }
+
+ - (IBAction) apps_table_duplicate:sender
+@@ -497,7 +497,7 @@
+ [item release];
+
+ [apps_table reloadData];
+- [apps_table selectRow:row+1 byExtendingSelection:NO];
++ [apps_table selectRowIndexes:[NSIndexSet indexSetWithIndex:row+1] byExtendingSelection:NO];
+ }
+
+ - (IBAction) apps_table_delete:sender
+@@ -519,10 +519,10 @@
+
+ row = MIN (row, [table_apps count] - 1);
+ if (row >= 0)
+- [apps_table selectRow:row byExtendingSelection:NO];
++ [apps_table selectRowIndexes:[NSIndexSet indexSetWithIndex:row] byExtendingSelection:NO];
+ }
+
+-- (int) numberOfRowsInTableView:(NSTableView *)tableView
++- (NSInteger) numberOfRowsInTableView:(NSTableView *)tableView
+ {
+ if (table_apps == nil) return 0;
+
+@@ -530,7 +530,7 @@
+ }
+
+ - (id) tableView:(NSTableView *)tableView
+-objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row
++objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
+ {
+ NSArray *item;
+ int col;
+@@ -547,7 +547,7 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row
+ }
+
+ - (void) tableView:(NSTableView *)tableView setObjectValue:(id)object
+- forTableColumn:(NSTableColumn *)tableColumn row:(int)row
++ forTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
+ {
+ NSMutableArray *item;
+ int col;
+diff --git a/hw/xquartz/applewm.c b/hw/xquartz/applewm.c
+index d2cca13..d1a6175 100644
+--- a/hw/xquartz/applewm.c
++++ b/hw/xquartz/applewm.c
+@@ -213,10 +213,11 @@ static int
+ WMFreeClient (pointer data, XID id) {
+ WMEventPtr pEvent;
+ WMEventPtr *pHead, pCur, pPrev;
++ int i;
+
+ pEvent = (WMEventPtr) data;
+- pHead = (WMEventPtr *) LookupIDByType(eventResource, EventType);
+- if (pHead) {
++ i = dixLookupResourceByType((pointer *)&pHead, eventResource, EventType, serverClient, DixReadAccess | DixWriteAccess | DixDestroyAccess);
++ if (i == Success && pHead) {
+ pPrev = 0;
+ for (pCur = *pHead; pCur && pCur != pEvent; pCur=pCur->next)
+ pPrev = pCur;
+@@ -254,12 +255,12 @@ ProcAppleWMSelectInput (register ClientPtr client)
+ REQUEST(xAppleWMSelectInputReq);
+ WMEventPtr pEvent, pNewEvent, *pHead;
+ XID clientResource;
++ int i;
+
+ REQUEST_SIZE_MATCH (xAppleWMSelectInputReq);
+- pHead = (WMEventPtr *)SecurityLookupIDByType(client,
+- eventResource, EventType, DixWriteAccess);
++ i = dixLookupResourceByType((pointer *)&pHead, eventResource, EventType, client, DixWriteAccess);
+ if (stuff->mask != 0) {
+- if (pHead) {
++ if (i == Success && pHead) {
+ /* check for existing entry. */
+ for (pEvent = *pHead; pEvent; pEvent = pEvent->next)
+ {
+@@ -293,7 +294,7 @@ ProcAppleWMSelectInput (register ClientPtr client)
+ * the list may be arbitrarily rearranged which cannot be
+ * done through the resource database.
+ */
+- if (!pHead)
++ if (i != Success || !pHead)
+ {
+ pHead = (WMEventPtr *) xalloc (sizeof (WMEventPtr));
+ if (!pHead ||
+@@ -309,7 +310,7 @@ ProcAppleWMSelectInput (register ClientPtr client)
+ updateEventMask (pHead);
+ } else if (stuff->mask == 0) {
+ /* delete the interest */
+- if (pHead) {
++ if (i == Success && pHead) {
+ pNewEvent = 0;
+ for (pEvent = *pHead; pEvent; pEvent = pEvent->next) {
+ if (pEvent->client == client)
+@@ -342,9 +343,10 @@ AppleWMSendEvent (int type, unsigned int mask, int which, int arg) {
+ WMEventPtr *pHead, pEvent;
+ ClientPtr client;
+ xAppleWMNotifyEvent se;
++ int i;
+
+- pHead = (WMEventPtr *) LookupIDByType(eventResource, EventType);
+- if (!pHead)
++ i = dixLookupResourceByType((pointer *)&pHead, eventResource, EventType, serverClient, DixReadAccess);
++ if (i != Success || !pHead)
+ return;
+ for (pEvent = *pHead; pEvent; pEvent = pEvent->next) {
+ client = pEvent->client;
+diff --git a/hw/xquartz/quartzKeyboard.c b/hw/xquartz/quartzKeyboard.c
+index 5bbb9c9..90f6610 100644
+--- a/hw/xquartz/quartzKeyboard.c
++++ b/hw/xquartz/quartzKeyboard.c
+@@ -387,6 +387,7 @@ void DarwinKeyboardReloadHandler(void) {
+ keySyms.minKeyCode = MIN_KEYCODE;
+ keySyms.maxKeyCode = MAX_KEYCODE;
+
++ // TODO: We should build the entire XkbDescRec and use XkbCopyKeymap
+ /* Apply the mappings to darwinKeyboard */
+ XkbApplyMappingChange(darwinKeyboard, &keySyms, keySyms.minKeyCode,
+ keySyms.maxKeyCode - keySyms.minKeyCode + 1,
+@@ -408,7 +409,7 @@ void DarwinKeyboardReloadHandler(void) {
+ if (access(xmodmap, F_OK) == 0) {
+ if (access(sysmodmap, F_OK) == 0) {
+ snprintf (cmd, sizeof(cmd), "%s %s", xmodmap, sysmodmap);
+- launch_client(cmd);
++ X11ApplicationLaunchClient(cmd);
+ }
+ }
+
+@@ -417,7 +418,7 @@ void DarwinKeyboardReloadHandler(void) {
+ snprintf (usermodmap, sizeof(usermodmap), "%s/.Xmodmap", homedir);
+ if (access(usermodmap, F_OK) == 0) {
+ snprintf (cmd, sizeof(cmd), "%s %s", xmodmap, usermodmap);
+- launch_client(cmd);
++ X11ApplicationLaunchClient(cmd);
+ }
+ }
+ }
+@@ -767,9 +768,12 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
+ #endif
+ }
+
+- if (k[3] == k[2]) k[3] = NoSymbol;
+- if (k[1] == k[0]) k[1] = NoSymbol;
+- if (k[0] == k[2] && k[1] == k[3]) k[2] = k[3] = NoSymbol;
++ // There seems to be an issue with this in 1.5+, shift-space is not
++ // producing space, it's sending NoSymbol... ?
++ //if (k[3] == k[2]) k[3] = NoSymbol;
++ //if (k[1] == k[0]) k[1] = NoSymbol;
++ //if (k[0] == k[2] && k[1] == k[3]) k[2] = k[3] = NoSymbol;
++ //if (k[3] == k[0] && k[2] == k[1] && k[2] == NoSymbol) k[3] = NoSymbol;
+ }
+
+ /* Fix up some things that are normally missing.. */
+@@ -780,7 +784,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
+
+ if (k[0] == NoSymbol && k[1] == NoSymbol
+ && k[2] == NoSymbol && k[3] == NoSymbol)
+- k[0] = known_keys[i].keysym;
++ k[0] = k[1] = k[2] = k[3] = known_keys[i].keysym;
+ }
+ }
+
+@@ -793,7 +797,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info) {
+ k = info->keyMap + known_numeric_keys[i].keycode * GLYPHS_PER_KEY;
+
+ if (k[0] == known_numeric_keys[i].normal)
+- k[0] = known_numeric_keys[i].keypad;
++ k[0] = k[1] = k[2] = k[3] = known_numeric_keys[i].keypad;
+ }
+ }
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091107/c3ccf9c8/attachment.html>
More information about the macports-changes
mailing list