summaryrefslogtreecommitdiffstats
path: root/macosx/tkMacOSXWm.c
diff options
context:
space:
mode:
authordas <das>2006-08-18 07:47:10 (GMT)
committerdas <das>2006-08-18 07:47:10 (GMT)
commitecf66721e647c1669971b9507bb69112bb7a6595 (patch)
treee626c7bc622c86f7865d10e09338df5200f7f124 /macosx/tkMacOSXWm.c
parent5fd4bcf187894f2923bb2b01b8d08f9b47e0544d (diff)
downloadtk-ecf66721e647c1669971b9507bb69112bb7a6595.zip
tk-ecf66721e647c1669971b9507bb69112bb7a6595.tar.gz
tk-ecf66721e647c1669971b9507bb69112bb7a6595.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.59 * unix/tkConfig.h.in: autoheader-2.59 * macosx/Wish.xcodeproj/project.pbxproj: switch native release targets to use DWARF with dSYM, Xcode 3.0 changes. * macosx/README: updates for x86_64 and Xcode 2.3. * 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 a9b5b47..34f23b0 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.39 2006/08/17 01:10:21 hobbs Exp $
+ * RCS: @(#) $Id: tkMacOSXWm.c,v 1.40 2006/08/18 07:47:11 das Exp $
*/
#include "tkMacOSXInt.h"
@@ -986,14 +986,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);