summaryrefslogtreecommitdiffstats
path: root/macosx/tkMacOSXWm.c
diff options
context:
space:
mode:
authordas <das>2006-08-18 07:47:25 (GMT)
committerdas <das>2006-08-18 07:47:25 (GMT)
commitdc316587c0b9053c09dfb532523bcdfd73169adc (patch)
treef254078a6fbdec5ff6dc35a289513a269d6227f6 /macosx/tkMacOSXWm.c
parent5ee6ad27caa9604bea6497f069083d463a106d80 (diff)
downloadtk-dc316587c0b9053c09dfb532523bcdfd73169adc.zip
tk-dc316587c0b9053c09dfb532523bcdfd73169adc.tar.gz
tk-dc316587c0b9053c09dfb532523bcdfd73169adc.tar.bz2
* unix/tcl.m4 (Darwin): add support for --enable-64bit on x86_64, for
universal builds including x86_64, for 64-bit CoreFoundation on Leopard and for use of -mmacosx-version-min instead of MACOSX_DEPLOYMENT_TARGET. * unix/configure.in (Darwin): remove 64-bit arch flags from CFLAGS for combined 32-bit and 64-bit universal builds, as neither TkAqua nor TkX11 can be built for 64-bit at present. * unix/configure: autoconf-2.13 * macosx/README: updates for x86_64 support in Tcl. * macosx/tkMacOSXInit.c (TkpInit): when available, use public TransformProcessType() API instead of CPSEnableForegroundOperation() SPI to notify the window server that we are a GUI application. * macosx/tkMacOSXWm.c (WmAttrGetTitlePath): use HIWindow API on >=Tiger. * macosx/tkMacOSXMouseEvent.c (GenerateToolbarButtonEvent): * macosx/tkMacOSXMenus.c (GenerateEditEvent): * macosx/tkMacOSXMenu.c (MenuSelectEvent): bzero XVirtualEvent structure before use to ensure all fields are initialized. [Bug 1542205]
Diffstat (limited to 'macosx/tkMacOSXWm.c')
-rw-r--r--macosx/tkMacOSXWm.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/macosx/tkMacOSXWm.c b/macosx/tkMacOSXWm.c
index 6a6bf38..b005143 100644
--- a/macosx/tkMacOSXWm.c
+++ b/macosx/tkMacOSXWm.c
@@ -13,7 +13,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tkMacOSXWm.c,v 1.7.2.30 2006/08/17 01:07:11 hobbs Exp $
+ * RCS: @(#) $Id: tkMacOSXWm.c,v 1.7.2.31 2006/08/18 07:47:25 das Exp $
*/
#include "tkMacOSXInt.h"
@@ -963,14 +963,21 @@ static Tcl_Obj *
WmAttrGetTitlePath(WindowRef macWindow)
{
FSRef ref;
- AliasHandle alias;
Boolean wasChanged;
UInt8 path[2048];
- OSStatus err;
+ OSStatus err = fnfErr;
- err = GetWindowProxyAlias(macWindow, &alias);
- if (err == noErr) {
- err = FSResolveAlias(NULL, alias, &ref, &wasChanged);
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040
+ if (HIWindowGetProxyFSRef != NULL) {
+ err = HIWindowGetProxyFSRef(macWindow, &ref);
+ }
+#endif
+ if (err != noErr) {
+ AliasHandle alias;
+ err = GetWindowProxyAlias(macWindow, &alias);
+ if (err == noErr) {
+ err = FSResolveAlias(NULL, alias, &ref, &wasChanged);
+ }
}
if (err == noErr) {
err = FSRefMakePath(&ref, path, 2048);