r=idk@eng.sun.com
- generate compilable java interfaces when identifiers
in idls coincide with java keywords
- correctly deal with methods which names in idls
coincide with some Object class methods
java uses general syntax for return values.
(idl: void test0([retval] out long l); will be
java: long test0(); intead of
java void test0(long[] l);
)
author=sdv@sparc.spb.su
September 2000. It will run, but without bookmarks.
The changes consist of the following kinds of changes:
Changes to method signatures for methods implemented by webclient.
Changes to string functions.
Changes to account for the demise of PROGIDS in favor of ContractIDs
Modified files:
M classes_spec/org/mozilla/webclient/test/EMWindow.java
M src_moz/CBrowserContainer.cpp
M src_moz/CurrentPageImpl.cpp
M src_moz/Makefile.win
M src_moz/NativeEventThread.cpp
M src_moz/RDFEnumeration.cpp
M src_moz/RDFTreeNode.cpp
M src_moz/ns_util_export.cpp
M src_moz/rdf_util.cpp
you can build JavaDOM with the tip as of 20 Sept 2000.
M dom/jni/javaDOMGlobals.h
changed nsString2 to nsString
M dom/jni/org_mozilla_dom_NodeImpl.cpp
nsIDOMNode::Supports is now nsIDOMNode::IsSupported().
* Jason Mawdsley <jason@macadamian.com>
* Louis-Philippe Gagnon <louisphilippe@macadamian.com>
It enables webclient to be built and run under JDK1.1.x. Note that JavaDOM
does not work under jdk1.1.x.
The fix consists of two elements:
On the Java side, replace all JDK1.2 specific calls with JDK1.1.x
equivalents. On the native side use pre-processer macro for
JNI_VERSION, like this:
#ifdef JNI_VERSION_1_2
#ifndef JNI_VERSION
#define JNI_VERSION JNI_VERSION_1_2
#endif
#else
#ifndef JNI_VERSION_1_1
#define JNI_VERSION_1_1 0x00010001
#endif
#ifndef JNI_VERSION
#define JNI_VERSION JNI_VERSION_1_1
#endif
#endif // END: JNI_VERSION_1_2
This fix has been tested on win32, solaris, and linux.
The following files are in this fix:
M webclient/classes_spec/org/mozilla/webclient/test/DOMTreeModel.java
M webclient/classes_spec/org/mozilla/webclient/test/DOMViewerFrame.java
M webclient/classes_spec/org/mozilla/webclient/test/EMWindow.java
M webclient/classes_spec/org/mozilla/webclient/wrapper_native/BookmarksImpl.java
M webclient/classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
M webclient/src_moz/CBrowserContainer.cpp
M webclient/src_moz/nsActions.cpp
M webclient/src_share/jni_util.cpp
M webclient/src_share/jni_util.h
M webclient/src_share/jni_util_export.cpp
BlackConnect M2 check in.
It should be possible to implement any scriptable interface in java.
Also it should be possible to use any scriptable object from java.
Fixed: 15498, 15500
r=gbarney
a=edburns
M classes_spec/org/mozilla/webclient/test/EMWindow.java
A src_ie/CMyDialog.cpp
A src_ie/CMyDialog.h
M src_ie/CurrentPageImpl.cpp
M src_ie/HistoryImpl.cpp
M src_ie/Makefile.win
M src_ie/NativeEventThread.cpp
M src_ie/WindowControlImpl.cpp
M src_ie/WrapperFactoryImpl.cpp
M src_ie/ie_util.cpp
M src_ie/ie_util.h
cvs diff -u classes_spec/org/mozilla/webclient/test/EMWindow.java src_ie/CMyDialog.cpp src_ie/CMyDialog.h src_ie/CurrentPageImpl.cpp src_ie/HistoryImpl.cpp src_ie/Makefile.win src_ie/NativeEventThread.cpp src_ie/WindowControlImpl.cpp src_ie/WrapperFactoryImpl.cpp src_ie/ie_util.cpp src_ie/ie_util.h
This change adds listener DocumentLoadListener support to src_ie.
tar -cvf 49293.tar classes_spec/org/mozilla/webclient/test/EMWindow.java src_ie/CMyDialog.cpp src_ie/CMyDialog.h src_ie/CurrentPageImpl.cpp src_ie/HistoryImpl.cpp src_ie/Makefile.win src_ie/NativeEventThread.cpp src_ie/WindowControlImpl.cpp src_ie/WrapperFactoryImpl.cpp src_ie/ie_util.cpp src_ie/ie_util.h
bug=47357
a=edburns
Files in this checkin
M src_moz/CBrowserContainer.cpp
M src_moz/CBrowserContainer.h
M src_moz/ns_util.cpp
M src_moz/ns_util.h
M src_share/jni_util.cpp
M src_share/jni_util.h
cvs diff -u src_moz/CBrowserContainer.cpp src_moz/CBrowserContainer.h src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
This change moves out listener constants and other support data from
src_moz into src_share to enable it to be used in src_ie.
tar -cvf 47357.tar src_moz/CBrowserContainer.cpp src_moz/CBrowserContainer.h src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
a=edburns
Files in this checkin
M src_moz/CBrowserContainer.cpp
M src_moz/CBrowserContainer.h
M src_moz/ns_util.cpp
M src_moz/ns_util.h
M src_share/jni_util.cpp
M src_share/jni_util.h
cvs diff -u src_moz/CBrowserContainer.cpp src_moz/CBrowserContainer.h src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
This change moves out listener constants and other support data from
src_moz into src_share to enable it to be used in src_ie.
tar -cvf 47357.tar src_moz/CBrowserContainer.cpp src_moz/CBrowserContainer.h src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
r=ashuk
bug=47357
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
M src_moz/CBrowserContainer.cpp
M src_moz/NativeEventThread.cpp
M src_moz/ns_util.cpp
M src_moz/ns_util.h
M src_share/jni_util.cpp
M src_share/jni_util.h
tar -cvf 47357.2.tar classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java src_moz/CBrowserContainer.cpp src_moz/NativeEventThread.cpp src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
cvs diff -u classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java src_moz/CBrowserContainer.cpp src_moz/NativeEventThread.cpp src_moz/ns_util.cpp src_moz/ns_util.h src_share/jni_util.cpp src_share/jni_util.h
This change modifes what one has to do on the native side to add a
listener.
* How to create a new listener type on the native side: <P>
* 1. add an entry in the gSupportedListenerInterfaces array defined in
* ns_util.cpp <P>
* 2. add a corresponding entry in the LISTENER_CLASSES enum in
* ns_util.h <P>
* 3. add a jstring to the string constant list in
* CBrowserContainer.cpp, below.
* 4. Initialize this jstring constant in CBrowserContainer.cpp
* initStringConstants() <P>
* 5. add an entry to the switch statement in NativeEventThread.cpp
* native{add,remove}Listener <P>
You have to clobber_all in webclient after this change.
author=edburns
a=edburns
r=ashuk
Files in this fix:
M classes_spec/org/mozilla/webclient/wrapper_native/EventRegistrationImpl.java
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
A classes_spec/org/mozilla/webclient/wrapper_native/WCEventListenerWrapper.java
M src_moz/NativeEventThread.cpp
M src_moz/motif/NativeLoaderStub.cpp
Added class WCEventListenerWrapper:
* This class allows the custom app to have one instance that implements
* multiple Webclient event listener types. <P>
* This is simply a "struct" type class that encapsulates a listener
* instance with its class name. This is necessary because the class
* name is lost when we deal with the listener as a
* WebclientEventListener, and not a WebclientEventListener subclass. <P>
* @see org.mozilla.webclient.wrapper_native.NativeEventThread#addListener
Made it so when a java listener is added,
* We create a WCEventListenerWrapper containing the user passed
* DocumentLoadListener, and the string obtained from
* DocumentLoadListener.class.getName();
We then call nativeEventThread.addListener:
* Takes the abstract WebclientEventListener instance and adds it to a
* Vector of listeners to be added. This vector is scanned each time
* around the event loop in run(). <P>
* The vector is a vector of WCEventListenerWrapper instances. In run()
* these are unpacked and sent to nativeAddListener like this:
* nativeAddListener(nativeWebShell,tempListener.listener,
* tempListener.listenerClassName); <P>