Commit Graph

240 Commits

Author SHA1 Message Date
edburns%acm.org
e6a5d40f61 bug: 55004
r=ashuk
a=edburns

This fix makes it so bookmarks work with the tip of the branch as of 11/01/00.

This fix removes the necessity to modify xpcom/base/nsDebug.cpp to
remove the thread safety assertions.

This fix primarily does two things:

1. Make nsActionEvents for all bookmarks/rdf actions

2. Remove the synchronized(this.browserControlCanvas.getTreeLock()) call
around nativeProcessEvents() in NativeEventThread.run().

Files in this fix:

M classes_spec/org/mozilla/webclient/test/EMWindow.java
M classes_spec/org/mozilla/webclient/wrapper_native/BookmarkEntryImpl.java
M classes_spec/org/mozilla/webclient/wrapper_native/BookmarksImpl.java
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
M classes_spec/org/mozilla/webclient/wrapper_native/RDFEnumeration.java
M classes_spec/org/mozilla/webclient/wrapper_native/RDFTreeNode.java
M src_moz/BookmarksImpl.cpp
M src_moz/RDFEnumeration.cpp
M src_moz/RDFTreeNode.cpp
M src_moz/nsActions.cpp
M src_moz/nsActions.h
M src_moz/motif/NativeLoaderStub.cpp
2000-11-03 03:16:55 +00:00
ashuk%eng.sun.com
02d94b0488 author=ashuk
Bug=57725,49126
r=a=edburns
2000-11-03 01:30:54 +00:00
ashuk%eng.sun.com
648aaf1fc4 author=ashuk
r=a=edburns
Bug=58791
2000-11-03 01:28:27 +00:00
ashuk%eng.sun.com
b989162d80 author=ashuk
Bug=50282,44330,53397
r=a=edburns
2000-11-03 01:27:47 +00:00
ashuk%eng.sun.com
f2af9ed233 author=ashuk
Bug=58526
r=a=edburns
2000-11-03 01:25:31 +00:00
edburns%acm.org
fff58403f6 Merged branch JAVADEV_PR3_20001002 into trunk. 2000-11-02 23:33:21 +00:00
ashuk%eng.sun.com
a70701e23f author=ashuk
r=a=edburns
Bug=54129

changes for Solaris commercial build

_Ashu
2000-10-03 01:59:31 +00:00
ashuk%eng.sun.com
8e95e870d1 author=ashuk
Bug=54129

Run Script for commercial build
2000-10-03 01:20:56 +00:00
edburns%acm.org
d827f690a6 bug=52883
author=ashuk
r,a=edburns

Make webclient work with the tip.
2000-09-28 21:37:25 +00:00
edburns%acm.org
e2ea5ace19 These changes make it so webclient compiles with the tip as of 20
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
2000-09-20 21:53:05 +00:00
edburns%acm.org
94393318f6 Changed to bring up to the tip.
bug=32162
a=brendan
r=leaf
2000-09-20 21:38:33 +00:00
edburns%acm.org
e40e751078 Jason found a bug left over from the manual diff. 2000-09-19 20:34:18 +00:00
edburns%acm.org
cc61d0fae1 This fix was contributed by
*      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
2000-09-19 00:18:18 +00:00
ashuk%eng.sun.com
f74b181201 author=jason@macadamian.com and louis-philippe@macadamian.com
r=a=edburns
Bug=52183
2000-09-15 00:18:53 +00:00
ashuk%eng.sun.com
9a6deec209 author = louis-philippe@macadamian.com and jason@macadamian.com
r = a = edburns
Bug = 52183
2000-09-15 00:15:01 +00:00
edburns%acm.org
dd8cbedbee Added
import org.mozilla.webclient.UnimplementedException;

Fix build bustage.
2000-09-14 22:00:20 +00:00
ashuk%eng.sun.com
8bc06b07fe author = ashuk
r = a = edburns
Bug = 46068

_Ashu
2000-09-12 20:44:47 +00:00
ashuk%eng.sun.com
4c17f15925 author = ashuk
r = a = edburns
Bug = 51280
2000-09-12 16:44:32 +00:00
ashuk%eng.sun.com
9c6211f1e3 author = ashuk
r = a = edburns
Bug = 48356, 51326
2000-09-12 16:33:45 +00:00
edburns%acm.org
45a89896a2 Add lib directory to -L line. 2000-08-24 23:03:34 +00:00
ashuk%eng.sun.com
9fe88bca6a Bug = 48356
author = ashuk
r = a = edburns

Added checks to make sure that DocShell is valid and that
calls to getInterface(nsIDOMWindow) return a valid object.
2000-08-23 00:03:49 +00:00
edburns%acm.org
3ec9c393fb bug=49293
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
2000-08-17 19:54:43 +00:00
edburns%acm.org
e08ce993c1 r=ashuk
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
2000-08-17 19:52:15 +00:00
edburns%acm.org
1281a8e1be r=ashuk
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
2000-08-17 18:29:18 +00:00
edburns%acm.org
1e20dbb0e0 bug=45127
r=edburns
a=edburns
author=avm@sparc.spb.su

Wrong URL for kRDF_type.
2000-08-15 22:09:05 +00:00
edburns%acm.org
939ba7fc5a Changes to make it build in the BAL case. 2000-08-12 01:22:18 +00:00
edburns%acm.org
3885ac5442 Make it so BAL_INTERFACE=1 compiles on solaris. 2000-08-12 01:08:37 +00:00
edburns%acm.org
be9e74e566 Make it so BAL_INTERFACE=1 compiles on Solaris. 2000-08-12 01:08:04 +00:00
edburns%acm.org
a1f7159ede bug=47357
a=edburns
r=edburns
author=avm

This fix adds a length parameter to the loading of URLs.  It also adds a new util function util_getStringLength().
2000-08-11 21:58:56 +00:00
edburns%acm.org
68e13b0430 Update makefile to pull JNI includes from src_share. 2000-08-11 21:35:29 +00:00
edburns%acm.org
0a19898c15 a=edburns
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.
2000-08-10 21:38:52 +00:00
edburns%acm.org
633eeda090 First checkin of Webclient/IE 2000-08-10 01:33:35 +00:00
edburns%acm.org
496407ed2a Make it so the jni headers are built in src_share. 2000-08-10 01:08:14 +00:00
edburns%acm.org
1fd2c69e7f Make it so the jni headers are built in src_share. 2000-08-10 01:02:57 +00:00
edburns%acm.org
22cf4850d3 bug=48227
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>
2000-08-09 21:47:39 +00:00
edburns%acm.org
d74545338e a=edburns
author=Oleg Khokhlov
r=edburns
bug=47026
2000-08-04 21:46:10 +00:00
ashuk%eng.sun.com
717987adb7 Minor change to get Webclient to compile on Solaris
author=ashuk

cvs diff dom_util.h (in directory D:\M16\mozilla\java\webclient\src_moz\)
Index: dom_util.h
===================================================================
RCS file: /cvsroot/mozilla/java/webclient/src_moz/dom_util.h,v
retrieving revision 1.1
diff -r1.1 dom_util.h
28a29
> #include "nsIDOMDocument.h"

*****CVS exited normally with code 1*****
2000-08-03 22:35:14 +00:00
edburns%acm.org
22af3b9709 bug=47357
a=edburns
r=ashuk

This change creates a new directory, java/webclient/src_share, that
contains the code that will be used in both src_moz and src_ie, and any
other native browser wrapping implementations.

Here are the steps I followed to implement this change.

1. Create a new directory java/webclient/src_share

2. Move all jni_util*.* files from src_moz into src_share

3. Make it so src_share compiles into a new .lib

   src_share has no netscape dependencies.  Any functionality that
   depended on ns dependencies was kept in src_moz.  In this case, we
   have a function prototype only in src_share, with the implementation
   in src_moz.  We did this for nsHashtable.  The other trick was for
   things in WebShellInitContext that had nothing to do with Netscape.
   This case was accomodated by creating a new struct, ShareInitContext,
   that contains all WebShellInitContext members that have nothing to do
   with Netscape.  Currently this is just jobject propertiesClass.  I
   modified the WebShellInitContext struct to contain a ShareContext
   struct as its last member.  There are two new methods in jni_util.h
   that allow for the initialization and deallocation of the members of
   the ShareContext struct.

4. Make it so src_moz uses the new .lib to provide the jni_util behavior

  a. Create ns_util* files that include ../src_share/jni_util* files
  appropriately.

  The only tricky part was for things in jni_util.h that

Here's the list of files in this change.

cvs -z3 -n update (in directory D:\Projects\mozilla\java\webclient)
cvs server: Updating .
M Makefile.win // added src_share to DIRS
M src_moz/BookmarksImpl.cpp             // include ns_util instead of jni_util
M src_moz/CBrowserContainer.cpp         // include ns_util instead of jni_util
M src_moz/CBrowserContainer.h           // include ns_util instead of jni_util
M src_moz/CurrentPageImpl.cpp           // include ns_util instead of jni_util
M src_moz/HistoryImpl.cpp               // include ns_util instead of jni_util
M src_moz/Makefile.win                  // include ns_util instead of jni_util
M src_moz/NativeEventThread.cpp         // include ns_util instead of jni_util
M src_moz/NavigationImpl.cpp            // include ns_util instead of jni_util
M src_moz/RDFEnumeration.cpp            // include ns_util instead of jni_util
M src_moz/RDFTreeNode.cpp               // include ns_util instead of jni_util
M src_moz/WindowControlImpl.cpp         // include ns_util instead of jni_util
                                        // also use new util_InitShareContext
                                        // function
M src_moz/WrapperFactoryImpl.cpp        // include ns_util instead of jni_util
R src_moz/jni_util.cpp                  // moved to ../src_share
R src_moz/jni_util.h                    // moved to ../src_share
R src_moz/jni_util_export.cpp           // moved to ../src_share
R src_moz/jni_util_export.h             // moved to ../src_share
M src_moz/nsActions.cpp                 // include ns_util instead of jni_util
                                        // also use new
util_DeallocateShareContext
M src_moz/nsActions.h                   // include ns_util instead of jni_util
A src_moz/ns_util.cpp                   // include jni_util.h
A src_moz/ns_util.h                     // include jni_util.h, changes to
                                        // WebshellInitContext struct
A src_moz/ns_util_export.cpp            // provide impls for methods in
                                        // jni_util_export.h

A src_share/Makefile.win
A src_share/bal_util.cpp
A src_share/bal_util.h
A src_share/jni_util.cpp
A src_share/jni_util.h
A src_share/jni_util_export.cpp
A src_share/jni_util_export.h

*****CVS exited normally with code 0*****
2000-08-03 21:32:54 +00:00
ashuk%eng.sun.com
4b8579149a bug 44774, 44775
author=ashuk
r=ovk@sparc.spb.su

Minor fix for failed QA Test. Patch supplied by
Oleg.

_Ashu
2000-08-02 17:02:43 +00:00
ashuk%eng.sun.com
97af4f2c3e author = ashuk
r = edburns
a = edburns

Implements RemoveListener
2000-07-26 20:07:11 +00:00
edburns%acm.org
1620d1fe1d bug=41871
a=edburns
r=ashuk

This checkin makes it so CBrowserContainer is properly released.  The
problem was that the CBrowserContainer was still registered to the
docShell as a listener.  The solution was to call
wcIBrowserContianer::RemoveAllListeners() in the WebShellInitContext
deallocator.
2000-07-26 01:03:25 +00:00
ashuk%eng.sun.com
af342fe36c author = ashuk
r = edburns
a = edburns

Fix for Bugs: 44774, 44775 and 41780
2000-07-24 21:15:03 +00:00
edburns%acm.org
357d16ef7d bug=41977
Insert parameter checks for all webclient methods.
2000-07-22 02:48:26 +00:00
edburns%acm.org
f52fdb3aba Remove accidentally inserted ^M chars. 2000-07-22 02:14:57 +00:00
edburns%acm.org
db00aa6e21 Thanks to Andy Tripp <atripp@home.com> the DOMViewer
now scrolls to the shift-clicked node.
2000-07-15 18:56:30 +00:00
edburns%acm.org
91343cc3f0 Removed runem.solaris because we now have the cross platform runem.pl. 2000-07-11 23:44:35 +00:00
edburns%acm.org
e42d9f84ab Make it so params are correctly passed to runem.pl on Solaris. 2000-07-11 23:43:20 +00:00
edburns%acm.org
8208fef3cb nsSetupRegistry_link_problems 2000-07-10 20:02:49 +00:00
edburns%acm.org
109bfe4a8e Use the new xp runem.pl script instead of building the smarts into
the batch file.
2000-07-10 19:48:47 +00:00
edburns%acm.org
a06f26ab1f Changes to Makefile.in to allow proper running on solaris.
Added motif/README to explain why some files in this directory
don't get put into this directory's dll.
2000-07-10 19:00:51 +00:00
edburns%acm.org
b7075a05bd Removed "^M" characters. 2000-07-10 17:49:19 +00:00
edburns%acm.org
cdddfeea75 runem.pl now successfully runs webclient on solaris. However,
webclient on solaris doesn't run yet.
2000-07-08 01:36:37 +00:00
edburns%acm.org
1b5830236d First pass at automating the creation of the runem script. I hope runem.pl
can be used on both win32 and unix.
2000-07-07 23:32:43 +00:00
edburns%acm.org
f6c86952e5 Build_with_mozilla_build_system 2000-07-07 19:54:43 +00:00
edburns%acm.org
a2110f8590 a=edburns
r=ashuk
bugs: 44327, 44328

NativeEventThread:

Re-instate the policy of creating an EventQueue for each window.
Put in a superfluous printf in processEventLoop that fixes 44327.

nsActions.{cpp,h}:

Added wsDeallocateInitContextEvent, to enable the correct
removal of the eventQueue, 44328

WindowControlImpl

Fire the wsDeallocateInitcontextEvent in nativeDestroyInitContext.
2000-07-07 18:53:07 +00:00
edburns%acm.org
056cc5fd98 a=edburns
r=ashuk
bugs: 44327, 44328

WindowControl:

Don't call nativeDestroyInitContext

NativeEventThread

Call windowControl.nativeDestroyInitContext when the run()
loop exits.
2000-07-07 18:49:09 +00:00
edburns%acm.org
a0fde8c6c0 a=edburns
r=ashuk
bugs: 44327, 44328

Comment out the bookmarks test code.
2000-07-07 18:47:25 +00:00
edburns%acm.org
70f097b8ac compile_under_solaris 2000-07-06 00:39:53 +00:00
edburns%acm.org
c2d5bf500f Compile_String_changes_with_M16 2000-07-06 00:25:23 +00:00
edburns%acm.org
b1ce20f6b7 Whitespace formatting changes. 2000-07-05 20:27:41 +00:00
edburns%acm.org
5cfdba3262 Make it so it compiles on UNIX. 2000-07-05 19:53:24 +00:00
edburns%acm.org
e9e8cd3ece Automatically_generate_JAVAH_headers 2000-06-30 21:08:30 +00:00
edburns%acm.org
162827ca7a Finally_make_use_of_Sherry_Shen_changes 2000-06-30 19:03:27 +00:00
edburns%acm.org
309d1829ab Finally_make_use_of_Sherry_Shen_changes 2000-06-30 18:50:02 +00:00
edburns%acm.org
cdcd2d8a2e feature:
Now you can shift click to select a node in the DOM viewer.
2000-06-30 17:53:58 +00:00
ashuk%eng.sun.com
86f35f950a bug=44279
a=edburns
r=edburns
author=ashuk.

This code makes Webclient work with Mozilla M16.
2000-06-30 00:01:58 +00:00
ashuk%eng.sun.com
241f6b261c The current webclient only works with M13, and the
old webclient, in classes and src, works with pre M13.

This change removes the old webclient.
2000-06-29 23:59:12 +00:00
edburns%acm.org
06ae09f30a Removed accidentally introduced ^M's 2000-06-16 21:59:04 +00:00
edburns%acm.org
b463859667 Created file to allow shift-clicking. 2000-06-09 19:03:42 +00:00
edburns%acm.org
184f242f13 Make building the spec compliant classes the default. 2000-06-09 00:03:51 +00:00
edburns%acm.org
060c98e3c5 Added nativeGetDOM. 2000-06-08 23:51:13 +00:00
edburns%acm.org
4e0a7923b1 Modifications to allow webclient to run again on solaris. 2000-06-08 23:24:51 +00:00
edburns%acm.org
8b20efd992 Checked in nascent "select the current node in the tree view when the user shift-clicks on a node" feature,
but it's blocked by the incompleteness of the DOM implementation in M13.
2000-06-08 18:40:20 +00:00
edburns%acm.org
58ef6160ba bug 40330
a=edburns

This checkin mainly does two things:

1. Correctly populates the java.awt.event.MouseEvent subclass with the
  correct modifiers, x, y, and clickCount for the mozilla mouse event.

2. Adds a performance optimization: previously, every mouse event was
  causing a new instance of java.util.Properties to be created.  Now,
  only one Properties instance is created per-page, and it is cleared on
  each mouse event.

Also, I made the DOMMouseListenerImpl constructor initialize the
refCount to 0.  This allows the object to be correctly deleted.

M classes_spec/org/mozilla/webclient/test/EMWindow.java
M classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java
M src_moz/DOMMouseListenerImpl.cpp
M src_moz/DOMMouseListenerImpl.h
M src_moz/WindowControlImpl.cpp
M src_moz/jni_util.cpp
M src_moz/jni_util.h
M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h

M classes_spec/org/mozilla/webclient/test/EMWindow.java

* Added test code for MouseListener properties: buttons, modifiers, etc.

M classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java

* Added support for mouse modifiers.  Pull values out of the hash table,
  put them in the MouseEvent constructor.

M src_moz/DOMMouseListenerImpl.cpp

* Modified constructors so they initialize all ivars.

* changed usage model of properties object to share the lifetime of the
  DOMMouseListenerImpl instance.  Needed to make use of the new function
  util_ClearPropertiesObject() to do this.  Now we have only one call to
  util_DestroyPropertiesObject(), in the DOMMouseListenerImpl
  destructor.

M src_moz/DOMMouseListenerImpl.h

>     virtual ~DOMMouseListenerImpl();
>
98a101
> protected:
100a104,105
>
> void JNICALL addMouseEventDataToProperties(nsIDOMEvent *aMouseEvent);

M src_moz/WindowControlImpl.cpp

* Initialize new WebShellInitConext member propertiesClass to nsnull

M src_moz/jni_util.cpp

* Added util_ClearPropertiesObject() an optimization.

* Store the jclass for java/util/Properties in an element in
  WebShellInitContext.  This prevents us from having to do FindClass
  each time a mouse event occurs.

* Added a parameter to util_StoreIntoPropertiesObject.

M src_moz/jni_util.h

* Added propertiesClass to WebShellInitContext

* Added new method ClearPropertiesObject

* Added new last argument to DestroyPropertiesObject

M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h

* Added function pointer for util_ClearPropertiesObject.
2000-06-08 02:16:06 +00:00
edburns%acm.org
c96ff252c4 Remove CRLF's accidentally put in by Ashu. 2000-06-08 00:52:50 +00:00
edburns%acm.org
c44911e670 modified getPropertiesObject() to populate the hash table with
keys for properties in nsIDOMMouseEvent.
2000-06-07 00:12:06 +00:00
edburns%acm.org
b78d123f0c Make it so the status bar URLs correctly display with pre-pended
base URLs.
2000-06-05 19:11:22 +00:00
edburns%acm.org
2d01a17ea1 Enable/disable button bar buttons appropriately. 2000-06-05 18:23:23 +00:00
edburns%acm.org
cf5b2e774d Give the BookmarksFrame the ability to tell the browser to
visit the clicked URL.
2000-06-05 17:54:58 +00:00
edburns%acm.org
baf982031b bug 40330
a=edburns
r=drapeau

This checkin creates a dependency on the mozilla java dom module.

Please see mozilla\java\dom\README to build the java dom.
Note that you can just run make in mozilla\java and everything
should be built correctly.

A webclient/classes_spec/org/mozilla/webclient/test/DOMAccessPanel.java
A webclient/classes_spec/org/mozilla/webclient/test/DOMCellRenderer.java
A webclient/classes_spec/org/mozilla/webclient/test/DOMTreeDumper.java
A webclient/classes_spec/org/mozilla/webclient/test/DOMTreeModel.java
A webclient/classes_spec/org/mozilla/webclient/test/DOMTreeNotifier.java
A webclient/classes_spec/org/mozilla/webclient/test/DOMViewerFrame.java

M Makefile.win
M README
M webclient/classes_spec/Makefile.unix
M webclient/classes_spec/Makefile.win
M webclient/classes_spec/org/mozilla/webclient/CurrentPage.java
M webclient/classes_spec/org/mozilla/webclient/test/EMWindow.java
M webclient/classes_spec/org/mozilla/webclient/wrapper_native/CurrentPageImpl.java
M webclient/src_moz/CurrentPageImpl.cpp
M webclient/src_moz/DocumentLoaderObserverImpl.cpp
M webclient/src_moz/Makefile.win
M webclient/src_moz/WindowControlImpl.cpp
M webclient/src_moz/jni_util.h
2000-06-04 22:16:36 +00:00
edburns%acm.org
8605f7ca5a Added processing of "END_DOCUMENT_LOAD" and MouseExited events. 2000-06-01 23:42:35 +00:00
edburns%acm.org
2da1ed8ea1 Added StatusBar for URL messages. 2000-06-01 23:10:33 +00:00
edburns%acm.org
d1d0791b35 If BAL_INTERFACE is defined in the build environment, produce
webclient_bal.{lib,dll} instead of webclient.{lib,dll}.
2000-06-01 22:41:31 +00:00
edburns%acm.org
a5f9668ba0 Return from doRemoveListeners after issuing removeAllListeners 2000-05-31 23:37:06 +00:00
ashuk%eng.sun.com
a7fc0dbb1b Ed's fix for multiple window closing bug
author=edburns
r=ashuk
2000-05-31 21:58:36 +00:00
ashuk%eng.sun.com
7e6a78c7a2 Ed's review for multiple window closing bug
author=ashuk
r=ashuk
2000-05-31 21:56:36 +00:00
ashuk%eng.sun.com
b4d93382af Ed's fix for bug where multiple window closing caused null ptr error
author = edburns
r = ashuk
2000-05-31 21:55:49 +00:00
ashuk%eng.sun.com
9caa09ff50 Ed's fix for bug where multiple windows closing caused null ptr dereference.
author = edburns
r = ashuk
2000-05-31 21:54:04 +00:00
edburns%acm.org
69c22378c2 bug: 20659
r=gbarney
a=edburns

This checkin adds java.awt.event.MouseListener support to webclient for
mozilla.  The following files are include in this checkin.  "A" is new
file "M" is modified file.

A classes_spec/org/mozilla/webclient/WCMouseEvent.java
A classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java
A src_moz/DOMMouseListenerImpl.cpp
A src_moz/DOMMouseListenerImpl.h
A src_moz/dom_util.cpp
A src_moz/dom_util.h

M classes_spec/org/mozilla/webclient/EventRegistration.java
M classes_spec/org/mozilla/webclient/test/EMWindow.java
M classes_spec/org/mozilla/webclient/wrapper_native/EventRegistrationImpl.java
M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java
M src_moz/DocumentLoaderObserverImpl.cpp
M src_moz/DocumentLoaderObserverImpl.h
M src_moz/EventRegistration.cpp
M src_moz/EventRegistration.h
M src_moz/Makefile.solaris
M src_moz/Makefile.win
M src_moz/NativeEventThread.cpp
M src_moz/NavigationImpl.cpp
M src_moz/RDFTreeNode.cpp
M src_moz/bal_util.cpp
M src_moz/jni_util.cpp
M src_moz/jni_util.h
M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h



A classes_spec/org/mozilla/webclient/WCMouseEvent.java

 * <P> This java.awt.event.MouseEvent subclass allows the user to access the
 * WebclientEvent.  This eventData of this WebclientEvent, if non-null,
 * is a java.util.Properties instance that contains information about
 * this event.  </P>

 * <P>The following are some interesting keys:</P>

 * <UL>

 * <LI> href
 * </LI>

 * <LI> #text
 * </LI>

 * </UL>

A classes_spec/org/mozilla/webclient/wrapper_native/WCMouseListenerImpl.java

 * This class wraps the user provided instance of
 * java.awt.event.MouseListener so it can be installed as a
 * WebclientEventListener.  Note that we implement MouseListener so we
 * can be detected by the webclient event system.  We don't do anything
 * with these methods here, though.


A src_moz/DOMMouseListenerImpl.cpp

A src_moz/DOMMouseListenerImpl.h

 * This class is the shim between the mozilla listener event system for
 * mouse events and the java MouseListener interface.
 * For each of the Mouse* methods, we call the appropriate method in java.
 * See the implementation of MouseOver for an example.

 * For each mouseEvent, we create a Properties object containing
 * information about the event.  We use methods in dom_util to do this.

A src_moz/dom_util.cpp

A src_moz/dom_util.h

/**

 * Methods to simplify webclient accessing the mozilla DOM.

 */

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

Added support for java.awt.event.MouseListener

M classes_spec/org/mozilla/webclient/test/EMWindow.java

Implemented simle MouseListener

M classes_spec/org/mozilla/webclient/wrapper_native/EventRegistrationImpl.java

Added support for java.awt.event.MouseListener

M classes_spec/org/mozilla/webclient/wrapper_native/NativeEventThread.java

Added support for java.awt.event.MouseListener

M src_moz/DocumentLoaderObserverImpl.cpp
M src_moz/DocumentLoaderObserverImpl.h

 * We define a local IID to allow the addDocumentLoadListener and
 * addMouseListener functions in EventRegistration.{h,cpp} to
 * interrogate the currently installed DocumentLoaderObserver instance
 * in mozilla.

 */

#define NS_IDOCLOADEROBSERVERIMPL_IID_STR "fdadb2e0-3028-11d4-8a96-0080c7b9c5ba"

#define NS_IDOCLOADEROBSERVERIMPL_IID {0xfdadb2e0, 0x3028, 0x11d4, { 0x8a, 0x96, 0x00, 0x80, 0xc7, 0xb9, 0xc5, 0xba }}

/**

 * This class is the shim between the mozilla listener event system for
 * document load events and the java DocumentLoadListener interface.
 * For each of the On* methods, we call the appropriate method in java.
 * See the implementation of OnEndDocumentLoad for an example.

 * A DocumentLoaderObserverImpl instance has a "jobject target", which
 * is the Java object that should ultimately receive the events.  This
 * target will be null if the user just wants to listen for mouse
 * events.  It willl be non-null if the user wants to listen for
 * DocumentLoad events.

 * It also hosts a nsIDOMMouseListener instance, which piggybacks on the
 * nsIDocumentLoaderObserver instance.

M src_moz/EventRegistration.cpp
M src_moz/EventRegistration.h

Add support for MouseListener

M src_moz/Makefile.win

Added classes for MouseListener and Dom access

M src_moz/NativeEventThread.cpp

Added support for MouseListener

M src_moz/NavigationImpl.cpp

Added call to ReleaseStringChars for bal case.

M src_moz/RDFTreeNode.cpp

Added call to ReleaseStringChars for bal case.

M src_moz/bal_util.cpp

Added #include "wchar.h" so this file compiles on Solaris.

M src_moz/jni_util.cpp

Added implementations for util_CreatePropertiesObject,
util_DestroyPropertiesObject and util_StoreIntoPropertiesObject.

M src_moz/jni_util.h

/**

 * A JNI wrapper to create a java.util.Properties object, or the
 * equivalent object in the BAL case.

 */

jobject util_CreatePropertiesObject(JNIEnv *env, jobject reserved_NotUsed);

/**

 * A JNI wrapper to destroy the object from CreatePropertiesObject

 */

void util_DestroyPropertiesObject(JNIEnv *env, jobject propertiesObject,
                                  jobject reserved_NotUsed);

/**

 * A JNI wrapper for storing a name/value pair into the Properties
 * object created by CreatePropertiesObject

 */

void util_StoreIntoPropertiesObject(JNIEnv *env, jobject propertiesObject,
                                    jobject name, jobject value);


M src_moz/jni_util_export.cpp
M src_moz/jni_util_export.h

Added functions for allowing the BAL user to specify functions for
{creating, destroying, setting values into} properties objects.
2000-05-25 23:51:51 +00:00
ashuk%eng.sun.com
0abbaa676d Added fix for GetSourceBytes and SelectAll Stubs
author = ashuk
r = edburns

_Ashu
2000-05-23 21:10:02 +00:00
ashuk%eng.sun.com
b21f520f96 Added code for CurrentPage::SelectAll()
author = ashuk
r = edburns

_Ashu
2000-05-23 21:08:27 +00:00
ashuk%eng.sun.com
7395b85c85 Added code for SelectAll()
author = ashuk
r = edburns

_Ashu
2000-05-23 21:07:49 +00:00
ashuk%eng.sun.com
ca5c9043df Added code to throw UnimplementedException whenever a method tht is
not yet implemented is called.

Bug = 40330
a = ashuk
r = edburns

_Ashu
2000-05-23 21:06:41 +00:00
ashuk%eng.sun.com
765bec1b18 Added code for UnimplementedException. This exception gets thrown whenever a
funcion that has not yet been implemented is called.

Bug = 40330
author = ashuk
r = edburns

_Ashu
2000-05-23 21:04:47 +00:00
edburns%acm.org
c593d6f998 Added comment in nativeDestroyInitContext about bug http://bugzilla.mozilla.org/show_bug.cgi?id=38271 2000-05-05 14:02:12 +00:00
edburns%acm.org
78325dd028 a=edburns
bug: pressing BACK hangs webclient

Files touched

File: DocumentLoadEvent.java	Status: Locally Modified

Made the constants final so they can be used in a
switch statement

File: EMWindow.java    	Status: Locally Modified

Modified eventDispatched() so it doesn't call any webclient
events.  This was causing the hang.  Took advantage of
the newly implemented ability to pass a string from the
mozilla event handler into java.


File: DocumentLoaderObserverImpl.cpp	Status: Locally Modified

Create a jstring from the url in the OnStartDocumentLoad event.
Pass it on to java.

File: jni_util.cpp	Status: Locally Modified

Wrapped JNU_GetEnv in BAL stuff so it works from Star.

File: WebclinetEventListener.java	Status: Locally Modified

Added comment to eventDispatched.
2000-04-22 02:01:20 +00:00
edburns%acm.org
2cc92f89bd bug 33099
r=shaver
a=edburns

Native code changes: This fix eradicates all
occurrences of the following symbols
 nsComponentManager nsServiceManeger
And replaces them with their nsI counterparts.
The following ns* classes still are used in
webclient, and no plans exist to replace them
with nsI counterparts: nsresult nsCOMPtr
nsCRT nsnull * nsServiceManager occurrences
were replaced with do_GetService(), using a
PROGID. * nsComponentManager occurrences were replaced with a call on the global class gComponentManager, declared in the new file ns_globals.h, and defined in WrapperFactoryImpl.cpp. ns_globals.h is included in jni_util.h. See the attachment to bug 33099 for ns_globals.h * Added deallocation code to WindowControlImpl.cpp nativeTerminate. I know it doesn't do much, but it's correct. Java code changes: * Added static method BrowserControlFactory.appTerminate(). This method simply calls the existing BrowserControlImpl.appTerminate(), which calls WrapperFactoryImpl.cpp nativeTerminate(). BrowserControlFactory.appTerminate() is called from EmbeddedMozilla's WindowListener, which gets fired when the user signals she wants the app to terminate.
2000-04-20 18:16:05 +00:00
ashuk%eng.sun.com
a9347be2bf fixed small bug with call to getSourceBytes
_Ashu
2000-04-20 03:16:15 +00:00
ashuk%eng.sun.com
5397f1dd36 new signature for getSourceBytes
_Ashu
2000-04-20 02:59:53 +00:00
edburns%acm.org
1586c56e2c bug 32011
r=ashuk
a=edburns

Add an "eventData" argument to WebclientEvent and subclasses.
This argument is sub-event specific.  For example, when a user
gets a DocumentLoadEvent, with an event type of
STATUS_URL_LOAD, the eventData is a String containing
the status string from the browser.

Added support for doing this in a BAL context.
2000-04-18 21:58:29 +00:00