M build-tests.xml

- make NavigationTest not run

M build.xml

- Move Win32BrowserControlCanvas up to parent package

M classes_spec/org/mozilla/webclient/BrowserControlCanvas.java

- You can't resize until you're initialized

- pass visibility through to native layer

M classes_spec/org/mozilla/webclient/impl/BrowserControlImpl.java

- Use WrapperFactory to create the BrowserControlCanvas impl.

A classes_spec/org/mozilla/webclient/impl/wrapper_native/Win32BrowserControlCanvas.java

- moved up from child package

M classes_spec/org/mozilla/webclient/impl/wrapper_native/WindowControlImpl.java

- use the new thread model for nativeSetBounds(), nativeRealize(),
  nativeSetVisible().

M classes_spec/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImpl.java

- make this create the BrowserControlCanvas instance.

- honor the new package name for Win32BrowserControlCanvas.

R classes_spec/org/mozilla/webclient/impl/wrapper_native/win32/Win32BrowserControlCanvas.java

- moved up one level.

M src_moz/EmbedWindow.cpp
M src_moz/EmbedWindow.h

- Take size parameters to CreateWindow_

M src_moz/Makefile.in

- add WindowControlImpl.cpp

M src_moz/NativeBrowserControl.cpp
M src_moz/NativeBrowserControl.h

- add size parameters to Realize().

M src_moz/WindowControlImpl.cpp

- reactivate nativeRealize(), nativeSetVisible(), nativesetBounds(),

M src_moz/win32/Win32BrowserControlCanvas.cpp

- new package name

M test/automated/src/classes/org/mozilla/webclient/NavigationTest.java

- we have to create a Canvas to load a URL.  Mozilla limitation.

M test/automated/src/classes/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImplTest.java

- remove unneeded test metdod


git-svn-id: svn://10.0.0.236/trunk@155219 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
edburns%acm.org
2004-04-20 16:17:43 +00:00
parent f441c02895
commit c1919441ed
16 changed files with 262 additions and 139 deletions

File diff suppressed because one or more lines are too long

View File

@@ -93,7 +93,7 @@
</patternset>
<patternset>
<include name="org/mozilla/webclient/impl/wrapper_native/win32/*"
<include name="org/mozilla/webclient/impl/wrapper_native/Win32*"
if="build.win32.classes"/>
</patternset>
@@ -146,7 +146,7 @@
<target name="compile.win32.canvas.headers" if="build.win32.classes">
<javah destdir="${basedir}/src_moz/win32"
class="org.mozilla.webclient.impl.wrapper_native.win32.Win32BrowserControlCanvas">
class="org.mozilla.webclient.impl.wrapper_native.Win32BrowserControlCanvas">
<classpath refid="compile.classpath"/>
</javah>

View File

@@ -52,7 +52,7 @@ import java.awt.*;
* See concrete subclasses for scope info.
* @version $Id: BrowserControlCanvas.java,v 1.6 2003-09-06 06:26:45 edburns%acm.org Exp $
* @version $Id: BrowserControlCanvas.java,v 1.7 2004-04-20 16:17:41 edburns%acm.org Exp $
* @see org.mozilla.webclient.win32.Win32BrowserControlCanvas
@@ -227,6 +227,9 @@ protected Rectangle getBoundsRelativeToWindow ()
public void setBounds(int x, int y, int w, int h)
{
if (!initializeOK) {
throw new IllegalStateException("Can't resize canvas before adding it to parent");
}
super.setBounds(x, y, w, h);
Rectangle boundsRect = new Rectangle(0, 0, w - 1, h - 1);
if (webShell != null) {
@@ -255,6 +258,20 @@ public void setBounds(Rectangle rect)
super.setBounds(rect);
}
public void setVisible(boolean b) {
try {
WindowControl wc = (WindowControl)
webShell.queryInterface(BrowserControl.WINDOW_CONTROL_NAME);
wc.setVisible(b);
}
catch(Exception ex) {
System.out.println("Can't setVisible(" + b + ") " +
ex.getMessage());
}
super.setVisible(b);
}
} // class BrowserControlCanvas

View File

@@ -186,7 +186,12 @@ public Object queryInterface(String interfaceName) throws ClassNotFoundException
return history;
}
if (BROWSER_CONTROL_CANVAS_NAME.equals(interfaceName)) {
Assert.assert_it(null != myCanvas);
if (null == myCanvas) {
myCanvas =
(BrowserControlCanvas)
wrapperFactory.newImpl(BROWSER_CONTROL_CANVAS_NAME,
this);
}
return myCanvas;
}
if (CURRENT_PAGE_NAME.equals(interfaceName)) {

View File

@@ -1,5 +1,4 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
/*
* The contents of this file are subject to the Netscape Public
* License Version 1.1 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
@@ -20,7 +19,7 @@
* Contributor(s):
*/
package org.mozilla.webclient.impl.wrapper_native.win32;
package org.mozilla.webclient.impl.wrapper_native;
// Win32BrowserControlCanvas.java
@@ -28,6 +27,9 @@ import org.mozilla.util.Assert;
import org.mozilla.util.Log;
import org.mozilla.util.ParameterCheck;
import org.mozilla.webclient.impl.wrapper_native.WCRunnable;
import org.mozilla.webclient.impl.wrapper_native.NativeEventThread;
/**
* Win32RaptorCanvas provides a concrete realization
@@ -37,7 +39,7 @@ import org.mozilla.util.ParameterCheck;
* There is one instance of the BrowserControlCanvas per top level awt Frame.
* @version $Id: Win32BrowserControlCanvas.java,v 1.1 2003-09-28 06:29:10 edburns%acm.org Exp $
* @version $Id: Win32BrowserControlCanvas.java,v 1.1 2004-04-20 16:17:41 edburns%acm.org Exp $
*
* @see org.mozilla.webclient.BrowserControlCanvasFactory
*
@@ -64,7 +66,15 @@ public class Win32BrowserControlCanvas extends BrowserControlCanvas {
*
* @returns The native window handle.
*/
protected int getWindow() {
return this.getHandleToPeer();
}
protected int getWindow() {
Integer result = (Integer)
NativeEventThread.instance.pushBlockingWCRunnable(new WCRunnable(){
public Object run() {
Integer result =
new Integer(Win32BrowserControlCanvas.this.getHandleToPeer());
return result;
}
});
return result.intValue();
}
}

View File

@@ -1,5 +1,4 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
@@ -79,23 +78,41 @@ public WindowControlImpl(WrapperFactory yourFactory,
// Methods from WindowControl
//
public void setBounds(Rectangle newBounds)
public void setBounds(Rectangle rect)
{
ParameterCheck.nonNull(newBounds);
ParameterCheck.nonNull(rect);
getWrapperFactory().verifyInitialized();
Assert.assert_it(-1 != getNativeBrowserControl());
synchronized(getBrowserControl()) {
nativeSetBounds(getNativeBrowserControl(), newBounds.x, newBounds.y,
newBounds.width, newBounds.height);
}
final Rectangle newBounds = rect;
NativeEventThread.instance.pushBlockingWCRunnable(new WCRunnable() {
public Object run() {
nativeSetBounds(getNativeBrowserControl(),
newBounds.x, newBounds.y,
newBounds.width, newBounds.height);
return null;
}
});
}
public void createWindow(int nativeWindow, Rectangle bounds)
public void createWindow(int nativeWindow, Rectangle rect)
{
ParameterCheck.greaterThan(nativeWindow, 0);
ParameterCheck.nonNull(bounds);
ParameterCheck.nonNull(rect);
getWrapperFactory().verifyInitialized();
final int nativeWin = nativeWindow;
final int nativeBc = getNativeBrowserControl();
final BrowserControl bc = getBrowserControl();
final Rectangle bounds = rect;
NativeEventThread.instance.pushBlockingWCRunnable(new WCRunnable() {
public Object run() {
nativeRealize(nativeWin, nativeBc, bounds.x,
bounds.y, bounds.width,
bounds.height, bc);
return null;
}
});
}
public int getNativeWebShell()
@@ -134,10 +151,13 @@ public void repaint(boolean forceRepaint)
public void setVisible(boolean newState)
{
getWrapperFactory().verifyInitialized();
synchronized(getBrowserControl()) {
nativeSetVisible(getNativeBrowserControl(), newState);
}
final boolean finalBool = newState;
NativeEventThread.instance.pushBlockingWCRunnable(new WCRunnable() {
public Object run() {
nativeSetVisible(getNativeBrowserControl(), finalBool);
return null;
}
});
}
public void setFocus()
@@ -152,6 +172,11 @@ public void setFocus()
// Native methods
//
public native void nativeRealize(int nativeWindow,
int nativeBrowserControl,
int x, int y, int width, int height,
BrowserControl myBrowserControlImpl);
public native void nativeSetBounds(int webShellPtr, int x, int y,
int w, int h);
@@ -178,7 +203,7 @@ public static void main(String [] args)
Log.setApplicationName("WindowControlImpl");
Log.setApplicationVersion("0.0");
Log.setApplicationVersionDate("$Id: WindowControlImpl.java,v 1.3 2004-04-10 21:50:38 edburns%acm.org Exp $");
Log.setApplicationVersionDate("$Id: WindowControlImpl.java,v 1.4 2004-04-20 16:17:41 edburns%acm.org Exp $");
try {
org.mozilla.webclient.BrowserControlFactory.setAppData(args[0]);

View File

@@ -26,6 +26,7 @@ import org.mozilla.util.Log;
import org.mozilla.util.ParameterCheck;
import org.mozilla.webclient.BrowserControl;
import org.mozilla.webclient.BrowserControlCanvas;
import org.mozilla.webclient.impl.BrowserControlImpl;
import org.mozilla.webclient.Bookmarks;
import org.mozilla.webclient.Preferences;
@@ -201,43 +202,56 @@ public class WrapperFactoryImpl extends Object implements WrapperFactory {
public Object newImpl(String interfaceName,
BrowserControl browserControl) throws ClassNotFoundException {
Object result = null;
synchronized(this) {
if (!nativeDoesImplement(interfaceName)) {
throw new ClassNotFoundException("Can't instantiate " +
interfaceName +
": not implemented.");
if (BrowserControl.BROWSER_CONTROL_CANVAS_NAME == interfaceName) {
Class bcClass = Class.forName(getPlatformCanvasClassName());
BrowserControlCanvas canvas = null;
try {
canvas = (BrowserControlCanvas) bcClass.newInstance();
}
if (BrowserControl.WINDOW_CONTROL_NAME == interfaceName) {
result = new WindowControlImpl(this, browserControl);
catch (IllegalAccessException e) {
throw new ClassNotFoundException(e.getMessage());
}
if (BrowserControl.NAVIGATION_NAME == interfaceName) {
result = new NavigationImpl(this, browserControl);
}
if (BrowserControl.HISTORY_NAME == interfaceName) {
result = new HistoryImpl(this, browserControl);
}
if (BrowserControl.CURRENT_PAGE_NAME == interfaceName) {
result = new CurrentPageImpl(this, browserControl);
}
if (BrowserControl.EVENT_REGISTRATION_NAME == interfaceName) {
result = new EventRegistrationImpl(this, browserControl);
}
if (BrowserControl.BOOKMARKS_NAME == interfaceName) {
Assert.assert_it(null != bookmarks);
result = bookmarks;
}
if (BrowserControl.PREFERENCES_NAME == interfaceName) {
Assert.assert_it(null != prefs);
result = prefs;
}
if (BrowserControl.PROFILE_MANAGER_NAME == interfaceName) {
Assert.assert_it(null != profileManager);
result = profileManager;
catch (InstantiationException e) {
throw new ClassNotFoundException(e.getMessage());
}
canvas.initialize(browserControl);
return canvas;
}
Object result = null;
if (!nativeDoesImplement(interfaceName)) {
throw new ClassNotFoundException("Can't instantiate " +
interfaceName +
": not implemented.");
}
if (BrowserControl.WINDOW_CONTROL_NAME == interfaceName) {
result = new WindowControlImpl(this, browserControl);
}
if (BrowserControl.NAVIGATION_NAME == interfaceName) {
result = new NavigationImpl(this, browserControl);
}
if (BrowserControl.HISTORY_NAME == interfaceName) {
result = new HistoryImpl(this, browserControl);
}
if (BrowserControl.CURRENT_PAGE_NAME == interfaceName) {
result = new CurrentPageImpl(this, browserControl);
}
if (BrowserControl.EVENT_REGISTRATION_NAME == interfaceName) {
result = new EventRegistrationImpl(this, browserControl);
}
if (BrowserControl.BOOKMARKS_NAME == interfaceName) {
Assert.assert_it(null != bookmarks);
result = bookmarks;
}
if (BrowserControl.PREFERENCES_NAME == interfaceName) {
Assert.assert_it(null != prefs);
result = prefs;
}
if (BrowserControl.PROFILE_MANAGER_NAME == interfaceName) {
Assert.assert_it(null != profileManager);
result = profileManager;
}
return result;
}
@@ -379,7 +393,7 @@ protected String getPlatformCanvasClassName()
if (null != osName) {
if (-1 != osName.indexOf("indows")) {
platformCanvasClassName = "org.mozilla.webclient.impl.wrapper_native.win32.Win32BrowserControlCanvas";
platformCanvasClassName = "org.mozilla.webclient.impl.wrapper_native.Win32BrowserControlCanvas";
}
else {
platformCanvasClassName = "org.mozilla.webclient.impl.wrapper_native.gtk.GtkBrowserControlCanvas";

View File

@@ -67,10 +67,9 @@ EmbedWindow::Init(NativeBrowserControl *aOwner)
}
nsresult
EmbedWindow::CreateWindow_(void)
EmbedWindow::CreateWindow_(PRUint32 width, PRUint32 height)
{
nsresult rv;
int width, height;
#ifdef XP_UNIX
PR_ASSERT(PR_FALSE);
GtkWidget *ownerAsWidget (GTK_WIDGET(mOwner->parentHWnd));
@@ -78,25 +77,23 @@ EmbedWindow::CreateWindow_(void)
height = ownerAsWidget->allocation.height;
#else
HWND ownerAsWidget = mOwner->parentHWnd;
width = 640; // PENDING(edburns): how to get the size of the parentHwnd
height = 480;
#endif
// Get the base window interface for the web browser object and
// create the window.
mBaseWindow = do_QueryInterface(mWebBrowser);
rv = mBaseWindow->InitWindow(ownerAsWidget,
nsnull,
0, 0,
width, height);
if (NS_FAILED(rv))
// Get the base window interface for the web browser object and
// create the window.
mBaseWindow = do_QueryInterface(mWebBrowser);
rv = mBaseWindow->InitWindow(ownerAsWidget,
nsnull,
0, 0,
width, height);
if (NS_FAILED(rv))
return rv;
rv = mBaseWindow->Create();
if (NS_FAILED(rv))
return rv;
rv = mBaseWindow->Create();
if (NS_FAILED(rv))
return rv;
return NS_OK;
return NS_OK;
}

View File

@@ -56,7 +56,7 @@ public:
virtual ~EmbedWindow();
nsresult Init (NativeBrowserControl *aOwner);
nsresult CreateWindow_ (void);
nsresult CreateWindow_ (PRUint32 width, PRUint32 height);
void ReleaseChildren (void);
NS_DECL_ISUPPORTS

View File

@@ -97,7 +97,6 @@ REQUIRES = xpcom \
# NativeEventThreadActionEvents.cpp \
# NavigationActionEvents.cpp \
# InputStreamShim.cpp \
# WindowControlImpl.cpp \
# WindowControlActionEvents.cpp \
# WindowCreator.cpp \
@@ -118,6 +117,7 @@ CPPSRCS = \
PreferencesImpl.cpp \
ProfileManagerImpl.cpp \
WrapperFactoryImpl.cpp \
WindowControlImpl.cpp \
$(NULL)
ifeq ($(OS_ARCH),Linux)

View File

@@ -83,9 +83,29 @@ NativeBrowserControl::Init()
}
nsresult
NativeBrowserControl::Realize(void *parentWinPtr, PRBool *aAlreadyRealized)
NativeBrowserControl::Realize(void *parentWinPtr, PRBool *aAlreadyRealized,
PRUint32 width, PRUint32 height)
{
return NS_ERROR_NOT_IMPLEMENTED;
// Create our session history object and tell the navigation object
// to use it. We need to do this before we create the web browser
// window.
mSessionHistory = do_CreateInstance(NS_SHISTORY_CONTRACTID);
mNavigation->SetSessionHistory(mSessionHistory);
#ifdef XP_UNIX
PR_ASSERT(PR_FALSE);
GtkWidget *ownerAsWidget (GTK_WIDGET(parentWinPtr));
parentHWnd = ownerAsWidget;
width = ownerAsWidget->allocation.width;
height = ownerAsWidget->allocation.height;
#else
parentHWnd = (HWND) parentWinPtr;
#endif
// create the window
mWindow->CreateWindow_(width, height);
return NS_OK;
}
void
@@ -96,16 +116,34 @@ NativeBrowserControl::Unrealize(void)
void
NativeBrowserControl::Show(void)
{
// Get the nsIWebBrowser object for our embedded window.
nsCOMPtr<nsIWebBrowser> webBrowser;
mWindow->GetWebBrowser(getter_AddRefs(webBrowser));
// and set the visibility on the thing
nsCOMPtr<nsIBaseWindow> baseWindow = do_QueryInterface(webBrowser);
baseWindow->SetVisibility(PR_TRUE);
}
void
NativeBrowserControl::Hide(void)
{
// Get the nsIWebBrowser object for our embedded window.
nsCOMPtr<nsIWebBrowser> webBrowser;
mWindow->GetWebBrowser(getter_AddRefs(webBrowser));
// and set the visibility on the thing
nsCOMPtr<nsIBaseWindow> baseWindow = do_QueryInterface(webBrowser);
baseWindow->SetVisibility(PR_FALSE);
}
void
NativeBrowserControl::Resize(PRUint32 aWidth, PRUint32 aHeight)
NativeBrowserControl::Resize(PRUint32 x, PRUint32 y,
PRUint32 aWidth, PRUint32 aHeight)
{
mWindow->SetDimensions(nsIEmbeddingSiteWindow::DIM_FLAGS_POSITION |
nsIEmbeddingSiteWindow::DIM_FLAGS_SIZE_INNER,
x, y, aWidth, aHeight);
}
void

View File

@@ -60,11 +60,14 @@ public:
//
nsresult Init ();
nsresult Realize (void* parentWinPtr, PRBool *aAlreadyRealized);
nsresult Realize (void* parentWinPtr,
PRBool *aAlreadyRealized,
PRUint32 width, PRUint32 height);
void Unrealize (void);
void Show (void);
void Hide (void);
void Resize (PRUint32 aWidth, PRUint32 aHeight);
void Resize (PRUint32 x, PRUint32 y,
PRUint32 aWidth, PRUint32 aHeight);
void Destroy (void);
//

View File

@@ -28,35 +28,46 @@
#include "org_mozilla_webclient_impl_wrapper_0005fnative_WindowControlImpl.h"
#include "WindowControlActionEvents.h"
#include "ns_util.h"
#include "nsIThread.h" // for PRThread
#include "NativeBrowserControl.h"
#include "nsCOMPtr.h" // to get nsIBaseWindow from webshell
#include "nsIBaseWindow.h" // to get methods like SetVisibility
JNIEXPORT void JNICALL Java_org_mozilla_webclient_wrapper_1native_WindowControlImpl_nativeRealize
(JNIEnv *env, jobject obj, jint windowPtr, jint nativeBCPtr, jint x, jint y,
jint width, jint height, jobject aBrowserControlImpl)
{
NativeBrowserControl* nativeBrowserControl = (NativeBrowserControl *) nativeBCPtr;
if (nativeBrowserControl == nsnull) {
::util_ThrowExceptionToJava(env, "Exception: null passed to nativeRealize");
return;
}
PRBool alreadyRealized;
#ifdef XP_UNIX
int gtkWinPtr =
(int)::util_GetGTKWinPtrFromCanvas(env, aBrowserControlImpl);
// PENDING set this into the nativeBrowserControl for use later
#endif
nativeBrowserControl->Realize((void *) windowPtr, &alreadyRealized,
width, height);
}
JNIEXPORT void JNICALL
Java_org_mozilla_webclient_impl_wrapper_1native_WindowControlImpl_nativeSetBounds
(JNIEnv *env, jobject obj, jint webShellPtr, jint x, jint y, jint w, jint h)
(JNIEnv *env, jobject obj, jint nativeBCPtr, jint x, jint y, jint w, jint h)
{
NativeBrowserControl* initContext = (NativeBrowserControl *) webShellPtr;
if (initContext == nsnull) {
::util_ThrowExceptionToJava(env, "Exception: null webShellPtr passed to nativeSetBounds");
return;
}
if (initContext->initComplete) {
wsResizeEvent * actionEvent =
new wsResizeEvent(initContext->baseWindow, x, y, w, h);
PLEvent * event = (PLEvent*) *actionEvent;
::util_PostEvent(initContext, event);
}
NativeBrowserControl* nativeBrowserControl = (NativeBrowserControl *) nativeBCPtr;
if (nativeBrowserControl == nsnull) {
::util_ThrowExceptionToJava(env, "Exception: null passed to nativeRealize");
return;
}
nativeBrowserControl->Resize(x, y, w, h);
}
/********************
JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowControlImpl_nativeMoveWindowTo
(JNIEnv *env, jobject obj, jint webShellPtr, jint x, jint y)
{
@@ -112,23 +123,28 @@ JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowCon
}
JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowControlImpl_nativeSetVisible
(JNIEnv *env, jobject obj, jint webShellPtr, jboolean newState)
{
*********************/
NativeBrowserControl* initContext = (NativeBrowserControl *) webShellPtr;
if (initContext == nsnull) {
::util_ThrowExceptionToJava(env, "Exception: null webShellPtr passed to raptorWebShellRepaint");
return;
}
if (initContext->initComplete) {
wsShowEvent * actionEvent = new wsShowEvent(initContext->baseWindow, JNI_TRUE == newState ? PR_TRUE : PR_FALSE);
PLEvent * event = (PLEvent*) *actionEvent;
::util_PostEvent(initContext, event);
}
JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowControlImpl_nativeSetVisible
(JNIEnv *env, jobject obj, jint nativeBCPtr, jboolean newState)
{
NativeBrowserControl* nativeBrowserControl = (NativeBrowserControl *) nativeBCPtr;
if (nativeBrowserControl == nsnull) {
::util_ThrowExceptionToJava(env, "Exception: null passed to nativeRealize");
return;
}
if (newState) {
nativeBrowserControl->Show();
}
else {
nativeBrowserControl->Hide();
}
}
/******************
JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowControlImpl_nativeSetFocus
(JNIEnv *env, jobject obj, jint webShellPtr)
{
@@ -146,3 +162,4 @@ JNIEXPORT void JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_WindowCon
::util_PostEvent(initContext, event);
}
}
*********************/

View File

@@ -32,16 +32,16 @@
typedef jboolean (JNICALL *PJAWT_GETAWT)(JNIEnv*, JAWT*);
#include "org_mozilla_webclient_impl_wrapper_0005fnative_win32_Win32BrowserControlCanvas.h"
#include "org_mozilla_webclient_impl_wrapper_0005fnative_Win32BrowserControlCanvas.h"
#include "jni_util.h" //for throwing Exceptions to Java
/*
* Class: org_mozilla_webclient_impl_wrapper_0005fnative_win32_Win32BrowserControlCanvas
* Class: org_mozilla_webclient_impl_wrapper_0005fnative_Win32BrowserControlCanvas
* Method: getHandleToPeer
* Signature: ()I
*/
JNIEXPORT jint JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_win32_Win32BrowserControlCanvas_getHandleToPeer
JNIEXPORT jint JNICALL Java_org_mozilla_webclient_impl_wrapper_1native_Win32BrowserControlCanvas_getHandleToPeer
(JNIEnv *env, jobject canvas) {
JAWT awt;
JAWT_DrawingSurface* ds;

View File

@@ -1,5 +1,5 @@
/*
* $Id: NavigationTest.java,v 1.1 2004-03-05 15:34:24 edburns%acm.org Exp $
* $Id: NavigationTest.java,v 1.2 2004-04-20 16:17:42 edburns%acm.org Exp $
*/
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
@@ -30,8 +30,9 @@ import junit.framework.TestSuite;
import junit.framework.Test;
import java.util.Enumeration;
import javax.swing.tree.TreeModel;
import javax.swing.tree.TreeNode;
import java.awt.Frame;
import java.awt.BorderLayout;
import java.io.File;
@@ -60,7 +61,15 @@ public class NavigationTest extends WebclientTestCase {
BrowserControlFactory.setAppData(getBrowserBinDir());
firstBrowserControl = BrowserControlFactory.newBrowserControl();
assertNotNull(firstBrowserControl);
BrowserControlCanvas canvas = (BrowserControlCanvas)
firstBrowserControl.queryInterface(BrowserControl.BROWSER_CONTROL_CANVAS_NAME);
assertNotNull(canvas);
Frame frame = new Frame();
frame.setUndecorated(true);
frame.setBounds(0, 0, 640, 480);
frame.add(canvas, BorderLayout.CENTER);
frame.setVisible(true);
Navigation nav = (Navigation)
firstBrowserControl.queryInterface(BrowserControl.NAVIGATION_NAME);
assertNotNull(nav);

View File

@@ -1,5 +1,5 @@
/*
* $Id: WrapperFactoryImplTest.java,v 1.3 2004-04-15 22:58:08 edburns%acm.org Exp $
* $Id: WrapperFactoryImplTest.java,v 1.4 2004-04-20 16:17:43 edburns%acm.org Exp $
*/
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
@@ -67,16 +67,4 @@ public class WrapperFactoryImplTest extends WebclientTestCase {
}
}
public void testGetNativeBrowserControl() throws Exception {
assertTrue(false);
/**
WrapperFactoryImpl wrapper = new WrapperFactoryImpl();
wrapper.initialize(getBrowserBinDir());
BrowserControl bc = new BrowserControlImpl(wrapper);
assertTrue(-1 != wrapper.getNativeBrowserControl(bc));
BrowserControlFactory.deleteBrowserControl(bc);
**/
}
}