From 79fb88819eb06b4e4351106d91eaded382d3d3f7 Mon Sep 17 00:00:00 2001 From: "edburns%acm.org" Date: Tue, 17 May 2005 04:38:38 +0000 Subject: [PATCH] cocoa-seems-to-work git-svn-id: svn://10.0.0.236/trunk@173503 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/java/webclient/src_moz/Makefile.in | 3 ++- .../src_moz/cocoa/CocoaBrowserControlCanvas.mm | 14 +++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/mozilla/java/webclient/src_moz/Makefile.in b/mozilla/java/webclient/src_moz/Makefile.in index 0550794bd25..68914b7977d 100644 --- a/mozilla/java/webclient/src_moz/Makefile.in +++ b/mozilla/java/webclient/src_moz/Makefile.in @@ -136,7 +136,8 @@ ifeq ($(OS_ARCH),Darwin) CMMSRCS = cocoa/CocoaBrowserControlCanvas.mm CPPSRCS += cocoa/CocoaBrowserControlCanvasImpl.cpp DLL_SUFFIX = .jnilib -DSO_LDOPTS += -L/System/Library/Frameworks/JavaVM.Framework/Libraries -ljawt +#DSO_LDOPTS += -L/System/Library/Frameworks/JavaVM.Framework/Libraries -ljawt +DSO_LDOPTS += -framework JavaVM -lobjc else ifeq ($(OS_ARCH),WINNT) CPPSRCS += \ diff --git a/mozilla/java/webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm b/mozilla/java/webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm index 0fc5762ab60..2f316b842a8 100644 --- a/mozilla/java/webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm +++ b/mozilla/java/webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm @@ -29,6 +29,8 @@ #include +#import + #include "CocoaBrowserControlCanvas.h" #include "jni_util.h" //for throwing Exceptions to Java @@ -42,6 +44,8 @@ jint CocoaBrowserControlCanvas::cocoaGetHandleToPeer(JNIEnv *env, jobject canvas jboolean result = JNI_FALSE; jint lock = 0; NSView *view = NULL; + NSWindow *win = NULL; + void * windowPtr = NULL; printf("debug: edburns: about to get AWT\n"); // get the AWT @@ -98,6 +102,14 @@ jint CocoaBrowserControlCanvas::cocoaGetHandleToPeer(JNIEnv *env, jobject canvas // Get the corresponding peer from the caller canvas view = dsi_mac->cocoaViewRef; + printf("debug: edburns: view: %p\n", view); + fflush(stdout); + win = [view window]; + printf("debug: edburns: win: %p\n", win); + fflush(stdout); + windowPtr = [win windowRef]; + printf("debug: edburns: windowPtr: %p\n", windowPtr); + fflush(stdout); // Free the DrawingSurfaceInfo ds->FreeDrawingSurfaceInfo(dsi); } @@ -109,5 +121,5 @@ jint CocoaBrowserControlCanvas::cocoaGetHandleToPeer(JNIEnv *env, jobject canvas // Free the drawing surface (if not caching it) awt.FreeDrawingSurface(ds); - return (jint) view; + return (jint) windowPtr; }