[80370] trunk/dports/x11/wine-crossover-games

jeremyhu at macports.org jeremyhu at macports.org
Sun Jul 10 11:28:46 PDT 2011


Revision: 80370
          http://trac.macports.org/changeset/80370
Author:   jeremyhu at macports.org
Date:     2011-07-10 11:28:46 -0700 (Sun, 10 Jul 2011)
Log Message:
-----------
wine-crossover-games: Build fix for newer AppleWM protocol, removes a kludgy workaround

Modified Paths:
--------------
    trunk/dports/x11/wine-crossover-games/Portfile

Added Paths:
-----------
    trunk/dports/x11/wine-crossover-games/files/no-quartz-wm-workaround.patch

Modified: trunk/dports/x11/wine-crossover-games/Portfile
===================================================================
--- trunk/dports/x11/wine-crossover-games/Portfile	2011-07-10 18:28:28 UTC (rev 80369)
+++ trunk/dports/x11/wine-crossover-games/Portfile	2011-07-10 18:28:46 UTC (rev 80370)
@@ -98,7 +98,7 @@
 # interferes with the wine build (which uses parts of them if present).
 extract.post_args-append    wine
 
-patchfiles                  sl-audio.patch
+patchfiles                  sl-audio.patch no-quartz-wm-workaround.patch
 
 configure.ldflags-append    -framework CoreServices \
                             -lz

Added: trunk/dports/x11/wine-crossover-games/files/no-quartz-wm-workaround.patch
===================================================================
--- trunk/dports/x11/wine-crossover-games/files/no-quartz-wm-workaround.patch	                        (rev 0)
+++ trunk/dports/x11/wine-crossover-games/files/no-quartz-wm-workaround.patch	2011-07-10 18:28:46 UTC (rev 80370)
@@ -0,0 +1,81 @@
+--- dlls/winex11.drv/window.c.orig	2011-07-10 11:01:56.000000000 -0700
++++ dlls/winex11.drv/window.c	2011-07-10 11:02:29.000000000 -0700
+@@ -1092,12 +1092,6 @@ static void set_size_hints( Display *dis
+             size_hints->x = data->whole_rect.left;
+             size_hints->y = data->whole_rect.top;
+             size_hints->flags |= PPosition;
+-            if (data->managed && applewm_title_height &&
+-                get_mwm_decorations( data, style, GetWindowLongW(data->hwnd,GWL_EXSTYLE) ) & MWM_DECOR_TITLE)
+-            {
+-                size_hints->y -= applewm_title_height;
+-                size_hints->win_gravity = NorthWestGravity;
+-            }
+         }
+ 
+         if (!is_window_resizable( data, style ))
+@@ -1611,10 +1605,6 @@ static void sync_window_position( Displa
+         /* and Above with a sibling doesn't work so well either, so we ignore it */
+     }
+ 
+-    if ((mask & CWY) && data->managed && applewm_title_height &&
+-        get_mwm_decorations( data, style, GetWindowLongW(data->hwnd,GWL_EXSTYLE) ) & MWM_DECOR_TITLE)
+-        changes.y -= applewm_title_height;
+-
+     wine_tsx11_lock();
+     set_size_hints( display, data, style );
+     data->configure_serial = NextRequest( display );
+@@ -1782,10 +1772,6 @@ static Window create_whole_window( Displ
+ 
+     x = data->whole_rect.left - virtual_screen_rect.left;
+     y = data->whole_rect.top - virtual_screen_rect.top;
+-    if (data->managed && applewm_title_height &&
+-        get_mwm_decorations( data, GetWindowLongW(data->hwnd,GWL_STYLE),
+-                             GetWindowLongW(data->hwnd,GWL_EXSTYLE) ) & MWM_DECOR_TITLE)
+-        y -= applewm_title_height;
+ 
+     wine_tsx11_lock();
+     data->whole_window = XCreateWindow( display, root_window, x, y,
+--- dlls/winex11.drv/x11drv_main.c.orig	2011-07-10 11:00:45.000000000 -0700
++++ dlls/winex11.drv/x11drv_main.c	2011-07-10 11:01:21.000000000 -0700
+@@ -105,7 +105,6 @@ int xrender_error_base = 0;
+ HMODULE x11drv_module = 0;
+ int applewm_event_base = 0;
+ int applewm_error_base = 0;
+-int applewm_title_height = 0;
+ int find_offscreen_formats = 0;
+ 
+ static x11drv_error_callback err_callback;   /* current callback for error */
+@@ -590,23 +589,6 @@ static BOOL process_attach(void)
+     X11DRV_XComposite_Init();
+ #endif
+ 
+-#ifdef HAVE_LIBAPPLEWM
+-    if (XAppleWMQueryExtension( display, &applewm_event_base, &applewm_error_base ))
+-    {
+-        short unused, height;
+-
+-        /* retrieve the offset that the Apple quartz-wm window manager will use to
+-         * display the title bar. This is used to compensate the fact that quartz-wm
+-         * ignores all our attempts to set the window gravity.
+-         * FIXME: the frame class is hardcoded to Document for now. */
+-        if (!XAppleWMFrameGetRect( display, AppleWMFrameClassDocument, AppleWMFrameRectTitleBar,
+-                                   0, 0, 0, 0, 0, 0, 0, 0,
+-                                   &unused, &unused, &unused, &height )) height = 0;
+-        applewm_title_height = height;
+-        TRACE( "got Apple title height %d\n", height );
+-    }
+-#endif
+-
+ #ifdef HAVE_XKB
+     if (use_xkb) use_xkb = XkbUseExtension( gdi_display, NULL, NULL );
+ #endif
+--- dlls/winex11.drv/x11drv.h.orig	2011-07-10 11:01:39.000000000 -0700
++++ dlls/winex11.drv/x11drv.h	2011-07-10 11:01:45.000000000 -0700
+@@ -612,7 +612,6 @@ extern int alloc_system_colors;
+ extern int xrender_error_base;
+ extern HMODULE x11drv_module;
+ extern int forcealtrelease;
+-extern int applewm_title_height;
+ extern int find_offscreen_formats;
+ 
+ extern BYTE key_state_table[256];
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20110710/4cd6a2b7/attachment-0001.html>


More information about the macports-changes mailing list