зеркало из https://github.com/mozilla/gecko-dev.git
r=edburns
Author: Ron Capelli <capelli@acm.org> The following files are updated to allow use of IBM Java 1.3.x JVMs on Linux. Instead of statically linking libjawt.lib, the code now dynamically links libjawt.so and then libawt.so only if needed (similar to previous change for win32). It should work on Solaris, but we couldn't test that here. mozilla/java/webclient/src_moz/Makefile.in mozilla/java/webclient/src_moz/gtk/GtkBrowserControlCanvas.cpp The following files are changed to support the ant 'clean' target for src_ie. mozilla/java/webclient/build.xml mozilla/java/webclient/src_ie/Makefile.in The following files are changed to disable the CurrentPage(2) interface for IE, since it will be a while before that can be made to work. With these changes, IE embeds smoothly with Navigation and History interfaces working nicely to some degree. mozilla/java/webclient/src_ie/WrapperFactoryImpl.cpp mozilla/java/webclient/classes_spec/org/mozilla/webclient/test/EMWindow.java The following file is changed so that it does not depend on Mozilla, allowing it to be shared cleanly for IE. mozilla/java/webclient/src_moz/win32/Win32BrowserControlCanvas.cpp The following file is changed to correct the list of makefiles that need to be configured for Webclient. mozilla/java/makefiles Finally, please delete the following files from CVS. mozilla/java/webclient/src_ie/build.xml mozilla/java/webclient/src_ie/Makefile.win
This commit is contained in:
Родитель
463e26cdb0
Коммит
393a1b0ed0
|
@ -1,8 +1,6 @@
|
|||
java/build/Makefile
|
||||
java/dom/Makefile
|
||||
java/dom/classes/Makefile
|
||||
java/dom/jni/Makefile
|
||||
java/dom/src/Makefile
|
||||
java/webclient/src_share/Makefile
|
||||
java/webclient/src_moz/Makefile
|
||||
java/webclient/src_moz/gtk/Makefile
|
||||
java/webclient/src_moz/Makefile
|
||||
java/webclient/src_ie/Makefile
|
||||
java/webclient/src_share/Makefile
|
||||
|
|
|
@ -304,6 +304,12 @@ ${myenv.MOZ_JDKHOME}/bin/java ${debug.options} org.mozilla.webclient.test.Embedd
|
|||
|
||||
<delete dir="${build.home}/org/mozilla/webclient"/>
|
||||
|
||||
<delete >
|
||||
<fileset dir="${basedir}/src_ie">
|
||||
<include name="*.ilk"/>
|
||||
</fileset>
|
||||
</delete>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="run.test" depends="main" description="Run unit tests">
|
||||
|
|
|
@ -59,7 +59,7 @@ import java.io.FileInputStream;
|
|||
* This is a test application for using the BrowserControl.
|
||||
|
||||
*
|
||||
* @version $Id: EMWindow.java,v 1.42 2003/05/13 15:21:54 edburns%acm.org Exp $
|
||||
* @version $Id: EMWindow.java,v 1.43 2003/05/13 20:22:07 edburns%acm.org Exp $
|
||||
*
|
||||
* @see org.mozilla.webclient.BrowserControlFactory
|
||||
|
||||
|
@ -196,10 +196,25 @@ public EMWindow (String title, String binDir, String url, int winnum, EmbeddedMo
|
|||
navigation = (Navigation2)
|
||||
browserControl.queryInterface(BrowserControl.NAVIGATION_NAME);
|
||||
navigation.setPrompt(this);
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println(e.toString());
|
||||
}
|
||||
try {
|
||||
currentPage = (CurrentPage2)
|
||||
browserControl.queryInterface(BrowserControl.CURRENT_PAGE_NAME);
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println(e.toString());
|
||||
}
|
||||
try {
|
||||
history = (History)
|
||||
browserControl.queryInterface(BrowserControl.HISTORY_NAME);
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println(e.toString());
|
||||
}
|
||||
try {
|
||||
prefs = (Preferences)
|
||||
browserControl.queryInterface(BrowserControl.PREFERENCES_NAME);
|
||||
prefs.registerPrefChangedCallback(this,
|
||||
|
@ -216,9 +231,6 @@ public EMWindow (String title, String binDir, String url, int winnum, EmbeddedMo
|
|||
System.setProperty("http.proxyHost", proxyHost);
|
||||
System.setProperty("http.proxyPort", proxyPort);
|
||||
}
|
||||
|
||||
//prefsProps = prefs.getPrefs();
|
||||
//prefsProps.list(System.out); // This works, try it!
|
||||
}
|
||||
catch (Exception e) {
|
||||
System.out.println(e.toString());
|
||||
|
@ -723,12 +735,13 @@ public void eventDispatched(WebclientEvent event)
|
|||
populateHistoryMenu();
|
||||
statusLabel.setText("Done.");
|
||||
urlStatusLabel.setText("");
|
||||
if (null != currentPage) {
|
||||
currentDocument = currentPage.getDOM();
|
||||
// add the new document to the domViewer
|
||||
if (null != currentDocument && null != domViewer) {
|
||||
domViewer.setDocument(currentDocument);
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case ((int) DocumentLoadEvent.PROGRESS_URL_LOAD_EVENT_MASK):
|
||||
status = "Status: " + (String) event.getEventData();
|
||||
|
|
|
@ -25,8 +25,6 @@ VPATH = $(topsrcdir)/java/webclient/src_ie
|
|||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
#DIST = $(topsrcdir)/dist
|
||||
|
||||
|
||||
ifneq ($(BAL_INTERFACE),)
|
||||
LIBRARY_NAME = webclient_bal
|
||||
|
@ -34,9 +32,6 @@ else
|
|||
LIBRARY_NAME = webclient
|
||||
endif
|
||||
|
||||
DLLNAME = webclient.dll
|
||||
|
||||
PDBFILE = webclient.pdb
|
||||
|
||||
CPPSRCS = \
|
||||
ie_util.cpp \
|
||||
|
@ -56,31 +51,19 @@ CPPSRCS += \
|
|||
../src_moz/win32/Win32BrowserControlCanvas.cpp \
|
||||
$(NULL)
|
||||
|
||||
_OBJS = $(CPPSRCS:.cpp=.obj)
|
||||
OBJS = $(strip $(_OBJS))
|
||||
|
||||
EXTRA_LIBS = $(DIST)/lib/wc_share.lib
|
||||
|
||||
# Do not copy modules to mozilla/dist
|
||||
NO_DIST_INSTALL = 1
|
||||
|
||||
# include $(topsrcdir)/config/rules.mk
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
INCLUDES := -I$(MOZ_JDKHOME)/include -I$(MOZ_JDKHOME)/include/win32 \
|
||||
$(INCLUDES) \
|
||||
# Overrides eliminate dependencies on Mozilla
|
||||
|
||||
INCLUDES = -I$(MOZ_JDKHOME)/include -I$(MOZ_JDKHOME)/include/win32 \
|
||||
-I../src_share -I.
|
||||
|
||||
CPP_FLAGS = /nologo /MDd /Zi /W3 /TP /Gy /c $(INCLUDES) /Fd$(PDBFILE)
|
||||
|
||||
#MKSHLIB = link /NOLOGO /DLL /OUT:$@ /PDB:$(PDBFILE) /SUBSYSTEM:WINDOWS
|
||||
LDFLAGS = /DEBUG /DEBUGTYPE:CV
|
||||
|
||||
%.obj: %.cpp
|
||||
cl /Fo$@ $(CPP_FLAGS) $<
|
||||
|
||||
all: webclient.dll
|
||||
|
||||
$(DLLNAME): $(OBJS) Makefile Makefile.in
|
||||
rm -f $@
|
||||
$(MKSHLIB) $(OBJS) $(LDFLAGS) $(OS_LIBS) $(EXTRA_LIBS)
|
||||
DEFINES =
|
||||
OS_COMPILE_CXXFLAGS =
|
||||
|
||||
|
||||
clobber_all:: clobber
|
||||
|
|
|
@ -1,87 +0,0 @@
|
|||
#!nmake
|
||||
#
|
||||
# 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
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Sun Microsystems,
|
||||
# Inc. Portions created by Sun are
|
||||
# Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
|
||||
DEPTH=..\..\..
|
||||
IGNORE_MANIFEST=1
|
||||
|
||||
MAKE_OBJ_TYPE = DLL
|
||||
DLLNAME = webclient
|
||||
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
||||
|
||||
MODULE=webclient
|
||||
|
||||
OBJS = \
|
||||
.\$(OBJDIR)\ie_util.obj \
|
||||
.\$(OBJDIR)\ie_util_export.obj \
|
||||
.\$(OBJDIR)\CMyDialog.obj \
|
||||
.\$(OBJDIR)\BookmarksImpl.obj \
|
||||
.\$(OBJDIR)\CurrentPageImpl.obj \
|
||||
.\$(OBJDIR)\HistoryImpl.obj \
|
||||
.\$(OBJDIR)\ISupportsPeer.obj \
|
||||
.\$(OBJDIR)\NativeEventThread.obj \
|
||||
.\$(OBJDIR)\NavigationImpl.obj \
|
||||
.\$(OBJDIR)\WindowControlImpl.obj \
|
||||
.\$(OBJDIR)\WrapperFactoryImpl.obj \
|
||||
$(NULL)
|
||||
|
||||
LCFLAGS = \
|
||||
-DDEBUG_RAPTOR_CANVAS \
|
||||
$(NULL)
|
||||
|
||||
LLIBS = \
|
||||
$(DIST)\lib\wc_share.lib \
|
||||
$(NULL)
|
||||
|
||||
WIN_LIBS = \
|
||||
version.lib
|
||||
|
||||
include <$(DEPTH)\config\rules.mak>
|
||||
|
||||
INCS = \
|
||||
-I$(JDKHOME)\include \
|
||||
-I$(JDKHOME)\include\win32 \
|
||||
-I..\src_share \
|
||||
$(INCS) \
|
||||
$(NULL)
|
||||
|
||||
INCS=$(INCS) \
|
||||
-I$(WTLHOME)\include \
|
||||
$(NULL)
|
||||
|
||||
!CMDSWITCHES -S
|
||||
|
||||
buildRunems:
|
||||
!ifdef BAL_INTERFACE
|
||||
!else
|
||||
@echo +++ Creating runem.bat. Use this to run the test browser.
|
||||
rm -f runem.bat
|
||||
@echo $(PERL) ..\src_share\runem.pl $(DIST)\bin org.mozilla.webclient.test.EmbeddedMozilla $(DEPTH) %1% >> runem.bat
|
||||
!endif
|
||||
|
||||
install:: $(DLL) buildRunems
|
||||
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).dll $(DIST)\bin
|
||||
$(MAKE_INSTALL) .\$(OBJDIR)\$(DLLNAME).lib $(DIST)\lib
|
||||
|
||||
clobber_all:: clobber
|
||||
|
||||
clobber::
|
||||
rm -f runem.bat
|
||||
rm -f $(DIST)\bin\$(DLLNAME).dll
|
|
@ -32,9 +32,11 @@
|
|||
const char *gImplementedInterfaces[] = {
|
||||
"webclient.WindowControl",
|
||||
"webclient.Navigation",
|
||||
"webclient.CurrentPage",
|
||||
// "webclient.CurrentPage",
|
||||
"webclient.History",
|
||||
"webclient.EventRegistration",
|
||||
"webclient.Bookmarks",
|
||||
// "webclient.Preferences",
|
||||
0
|
||||
};
|
||||
|
||||
|
|
|
@ -1,281 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
|
||||
* 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
|
||||
* the License at http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
|
||||
* Ed Burns >edburns@acm.org<
|
||||
|
||||
|
||||
-->
|
||||
|
||||
<project name="webclient" default="main" basedir=".">
|
||||
|
||||
<property name="Name" value="webclient"/>
|
||||
<property name="name" value="webclient"/>
|
||||
<property name="version" value="20020916"/>
|
||||
|
||||
<!-- ************ Per user local properties ******************************* -->
|
||||
|
||||
<property file="${user.home}/build.properties"/> <!-- User local -->
|
||||
<property file="build.properties"/> <!-- Component local -->
|
||||
<property file="../build.properties"/> <!-- java-supplement local -->
|
||||
<property environment="myenv" />
|
||||
|
||||
<!-- ************ Compiler Defaults *************************************** -->
|
||||
|
||||
<!-- Should Java compilations set the 'debug' compiler option? -->
|
||||
<property name="compile.debug" value="true"/>
|
||||
|
||||
<!-- Should Java compilations set the 'deprecation' compiler option? -->
|
||||
<property name="compile.deprecation" value="false"/>
|
||||
|
||||
<!-- Should Java compilations set the 'optimize' compiler option? -->
|
||||
<property name="compile.optimize" value="false"/>
|
||||
|
||||
<!-- ************ Where are we building into? ***************************** -->
|
||||
|
||||
<!-- The base directory for component sources -->
|
||||
<property name="source.home" value="${basedir}/classes_spec"/>
|
||||
|
||||
<!-- Construct compile classpath -->
|
||||
<path id="compile.classpath">
|
||||
<pathelement location="${build.home}"/>
|
||||
</path>
|
||||
|
||||
<target name="main"
|
||||
depends="compile.classes_spec,compile.src_share,compile.src_moz,compile.src_ie"/>
|
||||
|
||||
<target name="compile.classes_spec">
|
||||
|
||||
<javac destdir="${build.home}"
|
||||
debug="${compile.debug}"
|
||||
deprecation="${compile.deprecation}"
|
||||
optimize="${compile.optimize}">
|
||||
<classpath refid="compile.classpath"/>
|
||||
<src path="${source.home}"/>
|
||||
<patternset>
|
||||
<include name="org/mozilla/webclient/wrapper_native/gtk/*"
|
||||
if="build.unix.classes"/>
|
||||
</patternset>
|
||||
<patternset>
|
||||
<include name="org/mozilla/webclient/wrapper_native/win32/*"
|
||||
if="build.win32.classes"/>
|
||||
</patternset>
|
||||
|
||||
<!-- PENDING(edburns): include additional patternsets for ICE,
|
||||
HotJava, etc -->
|
||||
|
||||
<include name="org/mozilla/webclient/*"/>
|
||||
<include name="org/mozilla/webclient/wrapper_native/*"/>
|
||||
<include name="org/mozilla/webclient/test/*"/>
|
||||
</javac>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="compile.src_share" depends="compile.javah.headers">
|
||||
|
||||
<exec os="SunOS" dir="${basedir}/src_share" failonerror="yes"
|
||||
executable="gmake"/>
|
||||
<exec os="Linux" dir="${basedir}/src_share" failonerror="yes"
|
||||
executable="make"/>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_share" executable="make"
|
||||
failonerror="yes"/>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="compile.javah.headers" depends="compile.javah.canvas.headers">
|
||||
|
||||
<javah outputFile="${basedir}/src_share/BookmarksImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.BookmarksImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/PreferencesImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.PreferencesImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/CurrentPageImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.CurrentPageImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/HistoryImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.HistoryImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/WrapperFactoryImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.WrapperFactoryImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/NavigationImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.NavigationImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/RDFEnumeration.h"
|
||||
class="org.mozilla.webclient.wrapper_native.RDFEnumeration">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/RDFTreeNode.h"
|
||||
class="org.mozilla.webclient.wrapper_native.RDFTreeNode">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/ISupportsPeer.h"
|
||||
class="org.mozilla.webclient.wrapper_native.ISupportsPeer">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/WindowControlImpl.h"
|
||||
class="org.mozilla.webclient.wrapper_native.WindowControlImpl">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
<javah outputFile="${basedir}/src_share/NativeEventThread.h"
|
||||
class="org.mozilla.webclient.wrapper_native.NativeEventThread">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
</target>
|
||||
|
||||
<target name="compile.javah.canvas.headers"
|
||||
depends="compile.unix.canvas.headers,compile.win32.canvas.headers"/>
|
||||
|
||||
<target name="compile.unix.canvas.headers" if="build.unix.classes">
|
||||
|
||||
<javah outputFile="${basedir}/src_moz/gtk/GtkBrowserControlCanvas.h"
|
||||
class="org.mozilla.webclient.wrapper_native.gtk.GtkBrowserControlCanvas">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="compile.win32.canvas.headers" if="build.win32.classes">
|
||||
|
||||
<javah outputFile="${basedir}/src_moz/win32/Win32BrowserControlCanvas.h"
|
||||
class="org.mozilla.webclient.wrapper_native.win32.Win32BrowserControlCanvas">
|
||||
<classpath refid="compile.classpath"/>
|
||||
</javah>
|
||||
|
||||
</target>
|
||||
|
||||
|
||||
<target name="compile.src_moz" depends="compile.src_share">
|
||||
|
||||
<exec os="SunOS" dir="${basedir}/src_moz" executable="gmake"
|
||||
failonerror="yes">
|
||||
</exec>
|
||||
<exec os="Linux" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes">
|
||||
</exec>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes"/>
|
||||
|
||||
<exec os="SunOS" dir="${basedir}/src_moz" executable="gmake"
|
||||
failonerror="yes">
|
||||
<arg line="buildRunems"/>
|
||||
</exec>
|
||||
<exec os="Linux" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes">
|
||||
<arg line="buildRunems"/>
|
||||
</exec>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes"/>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="compile.src_ie" depends="compile.src_share">
|
||||
|
||||
<exec os="Windows 2000" dir="${basedir}/src_ie" executable="make"
|
||||
failonerror="yes"/>
|
||||
|
||||
<exec os="Windows 2000" dir="${basedir}/src_ie" executable="make"
|
||||
failonerror="yes"/>
|
||||
|
||||
</target>
|
||||
|
||||
|
||||
<target name="clean">
|
||||
|
||||
<ant antfile="build-tests.xml" target="clean"/>
|
||||
|
||||
<exec os="SunOS" dir="${basedir}/src_moz" executable="gmake"
|
||||
failonerror="yes">
|
||||
|
||||
<arg line="clobber_all"/>
|
||||
|
||||
</exec>
|
||||
<exec os="Linux" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes">
|
||||
|
||||
<arg line="clobber_all"/>
|
||||
|
||||
</exec>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_moz" executable="make"
|
||||
failonerror="yes">
|
||||
<arg line="clobber_all"/>
|
||||
</exec>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_ie" executable="make"
|
||||
failonerror="yes">
|
||||
<arg line="clobber_all"/>
|
||||
</exec>
|
||||
|
||||
<exec os="SunOS" dir="${basedir}/src_share" executable="gmake"
|
||||
failonerror="yes">
|
||||
|
||||
<arg line="clobber_all"/>
|
||||
|
||||
</exec>
|
||||
<exec os="Linux" dir="${basedir}/src_share" executable="make"
|
||||
failonerror="yes">
|
||||
|
||||
<arg line="clobber_all"/>
|
||||
|
||||
</exec>
|
||||
<exec os="Windows 2000" dir="${basedir}/src_share" executable="make"
|
||||
failonerror="yes">
|
||||
<arg line="clobber_all"/>
|
||||
</exec>
|
||||
|
||||
<delete >
|
||||
<fileset dir="${basedir}/src_share">
|
||||
<include name="*.h"/>
|
||||
<exclude name="bal_util.h"/>
|
||||
<exclude name="jni_util_export.h"/>
|
||||
<exclude name="jni_util.h"/>
|
||||
</fileset>
|
||||
</delete>
|
||||
|
||||
<delete >
|
||||
<fileset dir="${basedir}/src_moz">
|
||||
<include name="*.ilk"/>
|
||||
</fileset>
|
||||
</delete>
|
||||
|
||||
|
||||
<delete file="${basedir}/src_moz/gtk/GtkBrowserControlCanvas.h"/>
|
||||
<delete file="${basedir}/src_moz/win32/Win32BrowserControlCanvas.h"/>
|
||||
|
||||
|
||||
<delete dir="${build.home}/org/mozilla/webclient"/>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="run.test" depends="main" description="Run unit tests">
|
||||
|
||||
<ant antfile="build-tests.xml" target="run.test"/>
|
||||
|
||||
</target>
|
||||
|
||||
</project>
|
|
@ -155,14 +155,11 @@ ifdef MOZ_ENABLE_GTK
|
|||
ifndef MOZ_MONOLITHIC_TOOLKIT
|
||||
CXXFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
CFLAGS += $(MOZ_GTK_CFLAGS)
|
||||
# Adding $(MOZ_JDKHOME)/jre/lib/sparc because we need to link against
|
||||
# the libjawt.so shared library for the JAWT Native Interface
|
||||
# functionality to work correctly.
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L$(MOZ_JDKHOME)/jre/lib/sparc -L$(MOZ_JDKHOME)/jre/lib/i386 -ljawt -L/usr/X11R6/lib -lXt
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L/usr/X11R6/lib -lXt
|
||||
else
|
||||
CXXFLAGS += $(TK_CFLAGS)
|
||||
CFLAGS += $(TK_CFLAGS)
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L$(MOZ_JDKHOME)/jre/lib/sparc -L$(MOZ_JDKHOME)/jre/lib/i386 -ljawt -L/usr/X11R6/lib -lXt
|
||||
EXTRA_DSO_LDOPTS += -lgtkxtbin -lgtksuperwin -lwc_share -lembed_base_s -L/usr/X11R6/lib -lXt
|
||||
endif
|
||||
endif
|
||||
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
|
||||
#include <dlfcn.h>
|
||||
|
||||
typedef jboolean (JNICALL *PJAWT_GETAWT)(JNIEnv*, JAWT*);
|
||||
|
||||
#include "../ns_util.h" //for throwing Exceptions to Java
|
||||
|
||||
|
@ -186,19 +187,42 @@ JNIEXPORT void JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowser
|
|||
* Signature: ()I
|
||||
*/
|
||||
JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowserControlCanvas_getHandleToPeer
|
||||
(JNIEnv * env, jobject canvas) {
|
||||
(JNIEnv *env, jobject canvas) {
|
||||
JAWT awt;
|
||||
JAWT_DrawingSurface* ds;
|
||||
JAWT_DrawingSurfaceInfo* dsi;
|
||||
JAWT_X11DrawingSurfaceInfo* dsi_x11;
|
||||
Drawable handle_x11;
|
||||
void *_hAWT; // JAWT module handle
|
||||
jint lock;
|
||||
|
||||
PJAWT_GETAWT pJAWT_GetAWT; // JAWT_GetAWT function pointer
|
||||
|
||||
//Get the AWT
|
||||
_hAWT = dlopen("libjawt.so", RTLD_NOW | RTLD_GLOBAL);
|
||||
if (!_hAWT) {
|
||||
printf(" +++ No libjawt.so... Trying libawt.so +++ \n");
|
||||
_hAWT = dlopen("libawt.so",RTLD_NOW | RTLD_GLOBAL); // IBM Java 1.3.x packages JAWT_GetAWT in awt.dll
|
||||
}
|
||||
if (!_hAWT) {
|
||||
printf(" +++ JAWT DLL Not Found +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: JAWT DLL Not Found");
|
||||
return 0;
|
||||
}
|
||||
|
||||
pJAWT_GetAWT = (PJAWT_GETAWT)dlsym(_hAWT, "JAWT_GetAWT");
|
||||
if (!pJAWT_GetAWT) {
|
||||
printf(" +++ JAWT_GetAWT Entry Not Found +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: JAWT_GetAWT Entry Not Found");
|
||||
dlclose(_hAWT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
awt.version = JAWT_VERSION_1_3;
|
||||
if (JAWT_GetAWT(env, &awt) == JNI_FALSE) {
|
||||
if (pJAWT_GetAWT(env, &awt) == JNI_FALSE) {
|
||||
printf(" +++ AWT Not Found +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: AWT Not Found");
|
||||
dlclose(_hAWT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -207,6 +231,7 @@ JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowser
|
|||
if (ds == NULL) {
|
||||
printf(" +++ NULL Drawing Surface +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: Null Drawing Surface");
|
||||
dlclose(_hAWT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -216,6 +241,7 @@ JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowser
|
|||
printf(" +++ Error Locking Surface +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: Error Locking Surface");
|
||||
awt.FreeDrawingSurface(ds);
|
||||
dlclose(_hAWT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -226,6 +252,7 @@ JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowser
|
|||
::util_ThrowExceptionToJava(env, "Exception: Error Getting Surface Info");
|
||||
ds->Unlock(ds);
|
||||
awt.FreeDrawingSurface(ds);
|
||||
dlclose(_hAWT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -239,6 +266,7 @@ JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_gtk_GtkBrowser
|
|||
ds->FreeDrawingSurfaceInfo(dsi);
|
||||
ds->Unlock(ds);
|
||||
awt.FreeDrawingSurface(ds);
|
||||
dlclose(_hAWT);
|
||||
|
||||
//return the native peer handle
|
||||
return (jint) handle_x11;
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
typedef jboolean (JNICALL *PJAWT_GETAWT)(JNIEnv*, JAWT*);
|
||||
|
||||
#include "Win32BrowserControlCanvas.h"
|
||||
#include "ns_util.h" //for throwing Exceptions to Java
|
||||
#include "jni_util.h" //for throwing Exceptions to Java
|
||||
|
||||
|
||||
/*
|
||||
|
@ -66,7 +66,6 @@ JNIEXPORT jint JNICALL Java_org_mozilla_webclient_wrapper_1native_win32_Win32Bro
|
|||
}
|
||||
|
||||
pJAWT_GetAWT = (PJAWT_GETAWT)GetProcAddress(_hAWT, "_JAWT_GetAWT@8");
|
||||
printf ("Debug (RBC): pJAWT_GetAWT: %08x\n", pJAWT_GetAWT);
|
||||
if (!pJAWT_GetAWT) {
|
||||
printf(" +++ JAWT_GetAWT Entry Not Found +++ \n");
|
||||
::util_ThrowExceptionToJava(env, "Exception: JAWT_GetAWT Entry Not Found");
|
||||
|
|
Загрузка…
Ссылка в новой задаче