Граф коммитов

388 Коммитов

Автор SHA1 Сообщение Дата
ashuk%eng.sun.com 3d0b1c8d55 author=ashuk
r=a=edburns
Bug=58791
2000-11-03 01:28:27 +00:00
ashuk%eng.sun.com a9c3a5186b author=ashuk
Bug=50282,44330,53397
r=a=edburns
2000-11-03 01:27:47 +00:00
ashuk%eng.sun.com af7387435d author=ashuk
Bug=58526
r=a=edburns
2000-11-03 01:25:31 +00:00
edburns%acm.org 3d2d027ddd Merged branch JAVADEV_PR3_20001002 into trunk. 2000-11-02 23:33:21 +00:00
ashuk%eng.sun.com 4e0efa8222 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 ba6d53fc65 author=ashuk
Bug=54129

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

Make webclient work with the tip.
2000-09-28 21:37:25 +00:00
edburns%acm.org 7937b561f9 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 81e6727e6c Changed to bring up to the tip.
bug=32162
a=brendan
r=leaf
2000-09-20 21:38:33 +00:00
edburns%acm.org 000531f5c5 Jason found a bug left over from the manual diff. 2000-09-19 20:34:18 +00:00
edburns%acm.org dd4e083ab7 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 a7db39bc42 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 21fc1247a3 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 70d8a73d61 Added
import org.mozilla.webclient.UnimplementedException;

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

_Ashu
2000-09-12 20:44:47 +00:00
ashuk%eng.sun.com f5d4c388bd author = ashuk
r = a = edburns
Bug = 51280
2000-09-12 16:44:32 +00:00
ashuk%eng.sun.com c7b9e3215e author = ashuk
r = a = edburns
Bug = 48356, 51326
2000-09-12 16:33:45 +00:00
edburns%acm.org 224b2e47d3 Add lib directory to -L line. 2000-08-24 23:03:34 +00:00
ashuk%eng.sun.com 5d315b1ba6 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 164f70d0a5 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 2c594b9d52 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 9bd3abc750 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 a3c4e7acc7 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 24c4a29875 Changes to make it build in the BAL case. 2000-08-12 01:22:18 +00:00
edburns%acm.org bc50693c80 Make it so BAL_INTERFACE=1 compiles on solaris. 2000-08-12 01:08:37 +00:00
edburns%acm.org 6ebb88b9e7 Make it so BAL_INTERFACE=1 compiles on Solaris. 2000-08-12 01:08:04 +00:00
edburns%acm.org 2646150a6f 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 f40f8f0ac2 Update makefile to pull JNI includes from src_share. 2000-08-11 21:35:29 +00:00
edburns%acm.org d64d533dee 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 4e0e4a0292 First checkin of Webclient/IE 2000-08-10 01:33:35 +00:00
edburns%acm.org 4f4b815479 Make it so the jni headers are built in src_share. 2000-08-10 01:08:14 +00:00
edburns%acm.org e0e314d645 Make it so the jni headers are built in src_share. 2000-08-10 01:02:57 +00:00
edburns%acm.org ef7b401e85 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 33abe0c3e7 a=edburns
author=Oleg Khokhlov
r=edburns
bug=47026
2000-08-04 21:46:10 +00:00
ashuk%eng.sun.com 04068e5dce 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 472fe7cc92 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 9dcc328fb1 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 5bf646df19 author = ashuk
r = edburns
a = edburns

Implements RemoveListener
2000-07-26 20:07:11 +00:00
edburns%acm.org 85111be8a2 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 0a402b7edb author = ashuk
r = edburns
a = edburns

Fix for Bugs: 44774, 44775 and 41780
2000-07-24 21:15:03 +00:00
edburns%acm.org 919c4db6b8 bug=41977
Insert parameter checks for all webclient methods.
2000-07-22 02:48:26 +00:00
edburns%acm.org fece10190c Remove accidentally inserted ^M chars. 2000-07-22 02:14:57 +00:00
edburns%acm.org 88a4714724 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 1c5ebdf7fa Removed runem.solaris because we now have the cross platform runem.pl. 2000-07-11 23:44:35 +00:00
edburns%acm.org 011e2967b3 Make it so params are correctly passed to runem.pl on Solaris. 2000-07-11 23:43:20 +00:00
edburns%acm.org d141b31b07 nsSetupRegistry_link_problems 2000-07-10 20:02:49 +00:00
edburns%acm.org 9a22757490 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 b822c170d2 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 39732b38c7 Removed "^M" characters. 2000-07-10 17:49:19 +00:00
edburns%acm.org d3299ad0d6 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 967c4751f4 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 0e01923d28 Build_with_mozilla_build_system 2000-07-07 19:54:43 +00:00
edburns%acm.org 41198b5da0 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 b4e20ad332 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 7544fd2d48 a=edburns
r=ashuk
bugs: 44327, 44328

Comment out the bookmarks test code.
2000-07-07 18:47:25 +00:00
edburns%acm.org d9918eb890 compile_under_solaris 2000-07-06 00:39:53 +00:00
edburns%acm.org 1f1fbabd6b Compile_String_changes_with_M16 2000-07-06 00:25:23 +00:00
edburns%acm.org c28fc2ba16 Whitespace formatting changes. 2000-07-05 20:27:41 +00:00
edburns%acm.org 87cd168c19 Make it so it compiles on UNIX. 2000-07-05 19:53:24 +00:00
edburns%acm.org 0175bb0534 Automatically_generate_JAVAH_headers 2000-06-30 21:08:30 +00:00
edburns%acm.org 33ecf7aa6d Finally_make_use_of_Sherry_Shen_changes 2000-06-30 19:03:27 +00:00
edburns%acm.org 19de18c84b Finally_make_use_of_Sherry_Shen_changes 2000-06-30 18:50:02 +00:00
edburns%acm.org c09072629c 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 e29f85f111 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 abbbc6aaff 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 d5a6d05e66 Removed accidentally introduced ^M's 2000-06-16 21:59:04 +00:00
edburns%acm.org 6d70938da2 Created file to allow shift-clicking. 2000-06-09 19:03:42 +00:00
edburns%acm.org 96b5d35a65 Make building the spec compliant classes the default. 2000-06-09 00:03:51 +00:00
edburns%acm.org ddd7466ba2 Added nativeGetDOM. 2000-06-08 23:51:13 +00:00
edburns%acm.org 4c0466bcfc Modifications to allow webclient to run again on solaris. 2000-06-08 23:24:51 +00:00
edburns%acm.org 1e6e9f6dcb 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 276931ce74 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 1709e7f3fb Remove CRLF's accidentally put in by Ashu. 2000-06-08 00:52:50 +00:00
edburns%acm.org 278447c75a modified getPropertiesObject() to populate the hash table with
keys for properties in nsIDOMMouseEvent.
2000-06-07 00:12:06 +00:00
edburns%acm.org d32f422e39 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 4590c05abe Enable/disable button bar buttons appropriately. 2000-06-05 18:23:23 +00:00
edburns%acm.org c419fbd23c 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 35912f3aee 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 ef111eb035 Added processing of "END_DOCUMENT_LOAD" and MouseExited events. 2000-06-01 23:42:35 +00:00
edburns%acm.org 90a65190a8 Added StatusBar for URL messages. 2000-06-01 23:10:33 +00:00
edburns%acm.org f1fe7b92ae 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 b5304036c6 Return from doRemoveListeners after issuing removeAllListeners 2000-05-31 23:37:06 +00:00
ashuk%eng.sun.com 2568aadd55 Ed's fix for multiple window closing bug
author=edburns
r=ashuk
2000-05-31 21:58:36 +00:00
ashuk%eng.sun.com e9b3714db6 Ed's review for multiple window closing bug
author=ashuk
r=ashuk
2000-05-31 21:56:36 +00:00
ashuk%eng.sun.com 4895b8f09f 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 dc43b78061 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 f8d02fa8d1 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 d129bf5f0f Added fix for GetSourceBytes and SelectAll Stubs
author = ashuk
r = edburns

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

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

_Ashu
2000-05-23 21:07:49 +00:00
ashuk%eng.sun.com 55f6239e80 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 0500ca0dec 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 0fca80d0e2 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 01cadcca39 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 1124a9f70b 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 39289fdb27 fixed small bug with call to getSourceBytes
_Ashu
2000-04-20 03:16:15 +00:00
ashuk%eng.sun.com 55078fbfc4 new signature for getSourceBytes
_Ashu
2000-04-20 02:59:53 +00:00
edburns%acm.org fd78722617 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
edburns%acm.org a90c0cf107 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.
2000-04-18 21:57:42 +00:00
edburns%acm.org cb7301f20a bug=http://bugzilla.mozilla.org/show_bug.cgi?id=32011
Added ability to allow Native webclient client to populate
the listener class hash table and provide an InstanceOf function.

This enables listeners to work for the future.
2000-04-15 00:27:35 +00:00
edburns%acm.org 198a14a484 bug: http://bugzilla.mozilla.org/show_bug.cgi?id=32011
Add first function pointer integration to webclient for StarOffice.
This is necessary to allow events to be sent from mozilla to
StarOffice.
2000-04-13 00:12:50 +00:00
ashuk%eng.sun.com 5580fae4fe Made fix for Find Dialog closing correctly on Solaris
a=ashuk
r=geetha.vaidyanaathan@sun.com
Bug=35514

_Ashu
2000-04-12 18:06:21 +00:00
ashuk%eng.sun.com 27aef922e1 Made changes for accomodating new CurrentPage Find features into
webclient

a=ashuk
r=edburns
Bug=20659

Ashu
2000-04-06 17:45:27 +00:00
ashuk%eng.sun.com be8b015d45 changed signatures of functions in CurrentPage interface
a=ashuk
r=edburns
Bug=20659

Ashu
2000-04-06 17:42:46 +00:00
ashuk%eng.sun.com 5df586e60d Added stuff to implement Find features in CurrentPage interface
a=ashuk
r=edburns
Bug=20659

_Ashu
2000-04-06 17:39:01 +00:00
ashuk%eng.sun.com 93bd635847 Added AWT code to create a generic Dialog box. Used this to create a
Find Dialog Box for the Find features in the CurrentPage interface

a=ashuk
r=edburns
Bug=20659

Ashu
2000-04-06 17:36:57 +00:00
ashuk%eng.sun.com 189bf05849 Made changes in EMWIndow.java and EmbeddedMozilla.java to create a better
GUI with menus for creating and closing new windows and for Find features.

Ashu

a=ashuk
r=edburns
Bug=20659
2000-04-06 17:33:49 +00:00
edburns%acm.org 453a9616da bug: http://bugzilla.mozilla.org/show_bug.cgi?id=34665
This change replaces all printfs in src_moz with calls to PR_LOG.  No
printfs should appear in src_moz anymore.

You won't see any console output from native code unless you define

NSPR_LOG_MODULES=webclient:3

in your environment.  Furthermore, if you want PR_LOG statements in
webclient to go to a file instead, define

WEBCLIENT_LOG_FILE=C:\VALIDDIR\filename.txt

in your environment.  This file will get created fresh each time, since
PR_LOG uses fopen(filename, "w").

New Files:

I've created ns_globals.h, included from jni_util.h.  ns_globals.h holds
an extern * to a struct used in the PR_LOG calls.

Significant changes:

WrapperFactoryImpl.cpp

nativeAppInitialize(){

Added:

#if DEBUG_RAPTOR_CANVAS
    prLogModuleInfo = PR_NewLogModule("webclient");
    const char *webclientLogFile = PR_GetEnv("WEBCLIENT_LOG_FILE");
    if (nsnull != webclientLogFile) {
        PR_SetLogFile(webclientLogFile);
        // If this fails, it just goes to stdout/stderr
    }
#endif
}

All the other files in this checkin follow the this pattern:

Before checkin:

       printf("InitMozillaStuff(%lx): Create the Event Queue for the UI thread...\n",
               initContext);

After checkin:

    if (prLogModuleInfo) {
        PR_LOG(prLogModuleInfo, 3,
               ("InitMozillaStuff(%lx): Create the Event Queue for the UI thread...\n",
               initContext));
    }

See http://lxr.mozilla.org/mozilla/source/nsprpub/pr/include/prlog.h#190

for the definition of PR_LOG
2000-04-05 21:38:27 +00:00
edburns%acm.org 2f7e19a151 The problem was in the way the
NativeEventThread's run() method's infinite loop was implemented.  The
  loop looks like this:

    while (null != this.browserControlCanvas) {
        synchronized (this.browserControlCanvas.getTreeLock()) {
            nativeProcessEvents(nativeWebShell);

            if (null != listenersToAdd && !listenersToAdd.isEmpty()) {
                tempEnum = listenersToAdd.elements();
                while (tempEnum.hasMoreElements()) {
                    nativeAddListener(nativeWebShell,
                                          (WebclientEventListener)
                                      tempEnum.nextElement());
                }
                listenersToAdd.clear();
            }
        }
    }

  The problem I was observing was that
  nativeProcessEvents(nativeWebShell) would crash due to the fact that
  the nativeWebShell, which is actually an WebShellInitContext instance,
  had been de-allocated.  This de-allocation happens as a result of the
  WindowControlImpl.delete() method, which looks like this:

public void delete()
{
    Assert.assert(null != eventThread, "eventThread shouldn't be null at delete time");
    eventThread.delete();
    eventThread = null;
    nativeDestroyInitContext(nativeWebShell);
    nativeWebShell = -1;
}

  nativeDestroyInitContext de-allocates the WebShellInitContextInstance.
  You can see that the first thing done is to delete the eventThread().
  NativeEventThread.delete() looks like this:

public void delete()
{
    // setting this to null causes the run thread to exit
    synchronized(this.browserControlCanvas.getTreeLock()) {
        browserControlCanvas = null;
    }
...
}

  If you compare NativeEventThread.delete() with the infinite loop in
  NativeEventThread.run(), you'll see that the fact that they both
  synchronize on the same object doesn't protect us from the following
  case:

    NativeEventThread: The infinite loop checks to see if the
    browserControlCanvas is null, then does synchronize on
    browserControlCanvas.getTreeLock(), then calls processNativeEvents().

meanwhile

    WindowControlImpl thread: delete() calls NativeEventThread.delete(),
    which does synchronize on browserControlCanvas.getTreeLock().
    During NativeEventThread.delete(), synchronized section,
    browserControlCanvas is set to null.

    NativeEventThread: because the check for null browserControlCanvas
    occurrs outside of the synchronized block, it's not recheked, and
    thus, the event loop continues to process when it shouldn't.

  The fix is to change the event loop to look like this:

    while (true) {
        synchronized (this.browserControlCanvas.getTreeLock()) {
            // this has to be inside the synchronized block!
            if (null == this.browserControlCanvas) {
                return;
            }
            nativeProcessEvents(nativeWebShell);

            if (null != listenersToAdd && !listenersToAdd.isEmpty()) {
                tempEnum = listenersToAdd.elements();
                while (tempEnum.hasMoreElements()) {
                    nativeAddListener(nativeWebShell,
                                          (WebclientEventListener)
                                      tempEnum.nextElement());
                }
                listenersToAdd.clear();
            }
        }
    }
2000-04-03 04:32:27 +00:00
edburns%acm.org df7298bf88 Adding this line to the top of the run() method in
NativeEventThread seems to fix the hanging problem.

    this.setPriority(Thread.MIN_PRIORITY);


Looks like it was starvation.
2000-04-01 01:17:33 +00:00
edburns%acm.org 98e68de71c Thanks to Andi Eades, and Steffen Grarup for finding and fixing this.
Basically, we were storing a local jobject ref and using it on
 another thread without calling NewGlobalRef.

The fix is below:

cvs diff WindowControlImpl.cpp NativeEventThread.cpp (in directory D:\Projects\mozilla\java\webclient\src_moz\)
Index: WindowControlImpl.cpp
===================================================================
RCS file: /cvsroot/mozilla/java/webclient/src_moz/WindowControlImpl.cpp,v
retrieving revision 1.5
diff -r1.5 WindowControlImpl.cpp
131c131,134
<     initContext->nativeEventThread = nsnull;
---
>     if (nsnull != initContext->nativeEventThread) {
>         ::util_DeleteGlobalRef(env, initContext->nativeEventThread);
>         initContext->nativeEventThread = nsnull;
>     }
Index: NativeEventThread.cpp
===================================================================
RCS file: /cvsroot/mozilla/java/webclient/src_moz/NativeEventThread.cpp,v
retrieving revision 1.7
diff -r1.7 NativeEventThread.cpp
213c213,215
<         initContext->nativeEventThread = obj; // VERY IMPORTANT!!
---
>         initContext->nativeEventThread =
>             ::util_NewGlobalRef(env, obj); // VERY IMPORTANT!!
>

*****CVS exited normally with code 1*****
2000-03-31 17:09:00 +00:00
ashuk%eng.sun.com c5e4bf9228 a=ashuk
Made changes to the solaris makefile to include jni_util_export - for webclient-uno stuff

_Ashu
2000-03-28 21:36:04 +00:00
edburns%acm.org 8305c05bc3 I really meant to check in this one. 2000-03-27 20:28:21 +00:00
edburns%acm.org 8debd911c6 bug=33093
a=edburns
r=ashuk

Force prefs to be read, causing the proxy data to be read.
2000-03-23 23:08:35 +00:00
edburns%acm.org 226e980797 bug=33093
a=edburns
r=ashuk

Force prefs to be read, causing the proxy data to be read.
2000-03-23 22:57:57 +00:00
edburns%acm.org 97880eb454 r=ashuk
a=edburns
bug=32011
This change enables the current webclient API to be called from native
code.

It adds makefile and conditional compilation logic.

If the user defines BAL_INTERFACE in their environment before building
webclient, -DBAL_INTERFACE is added to LCFLAGS.  This causes code in
jni_util_export.cpp to behave differently due to the conditional
compilation logic.

I've broken out the 8 functions that are necessary to call into the
Webclient JNI methods into jni_util_export.{h,cpp}.

I've created a new pair of files, bal_util.{h,cpp} that contain function
declarations and definitions that are used when src_moz is built with
BAL_INTERFACE.  bal_util.obj is not built, nor added to webclient.dll if
building without BAL_INTERFACE.

See the page
http://www.mozilla.org/projects/blackwood/webclient/design/uno-transition.html
for a design document description of these changes.
2000-03-21 19:27:13 +00:00
edburns%acm.org 1cb45027a0 bug=32011
r=ashuk
a=edburns
This set of changes replaces all occurrences of

env->Func(args...)

with

::util_Func(env, args...)

Except of course, for the implementations of the above mentioned
::util_Func() functions.

This is done to allow the JNI functions to be called from a non JNI
context, such as UNO.
2000-03-16 23:07:03 +00:00
edburns%acm.org 8f986c0f07 This checkin adds API to cleanly destroy a BrowserControl instance. It
also modifies EmbeddedMozilla so this code is exercised.

I have changed EmbeddedMozilla to be a stub-like class that simply
displays a Frame with a single Button, titled "New Window".  Pressing
this button causes an EMWindow to be created and displayed.  EMWindow is
basically the former EmbeddedMozilla renamed, with modifications to the
WindowListener implementation to call the BrowserControl deallocation
method.

I've added a delete() method to ImplObect:

 * I know Java has automatic garbage collection and all, but explicitly
 * adding a delete method helps the gc algorithm out. <P>

 * Subclasses should override this and call super.delete() at the end of
 * their overridden delete() method.

 * @see org.mozilla.webclient.wrapper_native.ImplObjectNative#delete

and ImplObjectNative:

 * Note how we call super.delete() at the end.  THIS IS VERY IMPORTANT. <P>

 * Also, note how we don't de-allocate nativeWebShell, that is done in
 * the class that owns the nativeWebShell reference, WindowControlImpl.

 * ImplObjectNative subclasses that further override delete() are <P>

<CODE><PRE>
BookmarksImpl.java
EventRegistrationImpl.java
NativeEventThread.java
WindowControlImpl.java
</PRE><CODE> <P>

 * All other ImplObject subclasses don't have any local Ivars and thus
 * don't need to override delete().

I've added a delete() method to BrowserControlImpl:

 * Called from BrowserControlFactory.deleteBrowserControl() <P>

 * The order of deletion of objects is very important! <P>

 * We don't allow deletion if the Canvas is showing. <P>

In BrowserControlImpl's delete(), the important delete()s is for
WindowControlImpl:

 * First, we delete our eventThread, which causes the eventThread to
 * stop running.  Then we call nativeDestroyInitContext(), which
 * deallocates native resources for this window.

As stated above, NativeEventThread.delete() is called:

 * This is a very delicate method, and possibly subject to race
 * condition problems.  To combat this, our first step is to set our
 * browserControlCanvas to null, within a synchronized block which
 * synchronizes on the same object used in the run() method's event
 * loop.  By setting the browserControlCanvas ivar to null, we cause the
 * run method to return.

After all of this deleting, we return from
BrowserControlFactory.delete().
2000-03-13 18:44:32 +00:00
edburns%acm.org 1072637f9a r=ashuk
a=edburns
bug=31253

This change doesn't impact SeaMonkey.

Move the initialization of the nativeWebShell ptr into a superclass.
2000-03-09 23:22:52 +00:00
edburns%acm.org 1fe821d51c bug=31123
a=edburns
r=bruce

Folks, don't EVER use NULL in your c++ code.  Use nsnull instead.
2000-03-09 05:12:42 +00:00
edburns%acm.org 2d0c6834f0 JAVAH generated header files should not be checked in, since they are generated as a result of the build. 2000-03-09 04:41:43 +00:00
sherry.shen%sun.com a783dc2393 Bug #28281, r=leaf, a=leaf,
Add an option for building Java-supplement and
fix the Java building problem about JDIRS.
2000-03-09 01:14:22 +00:00
edburns%acm.org 2e656bb727 For win32 builds. If you define
WEBCLIENT_SPEC=1

in your environment before building webclient, the spec-compliant
version of webclient will be built.
2000-03-08 19:17:16 +00:00
edburns%acm.org 502f0e0575 Changed NULL to nsnull, so it would build with gcc.
.
2000-03-08 18:54:00 +00:00
ashuk%eng.sun.com c4b109d817 a=edburns
r=edburns
author=ashuk
bug=28407

Made fix for new BookmarksImpl.java file -- Ashu K.
2000-03-08 18:49:36 +00:00
ashuk%eng.sun.com a162d16554 a=edburns
r=edburns
author=ashuk
bug=28407

Made fix for changed BookmarksImpl.cpp file in the Stubs file -- Ashu K.
2000-03-08 18:41:01 +00:00
ashuk%eng.sun.com de8a825d98 a=edburns
r=edburns
author=ashuk
bug=28407

New native code for spec-compliant impl ported to solaris -- Ashu K.
2000-03-07 22:45:37 +00:00
ashuk%eng.sun.com 6ee91c835d a=edburns
r=edburns
author=ashuk
bug=28407

Moved this file to java/webclient/classes_new/org/mozilla/webclient/wrapper_native -- Ashu K.
2000-03-07 22:39:11 +00:00
ashuk%eng.sun.com e39f366367 a=edburns
r=edburns
author=ashuk
bug=28407

New native code for spec-compliant impl ported to solaris -- Ashu K.
2000-03-07 22:33:38 +00:00
edburns%acm.org 47d84ba5d3 NOT IN SeaMonkey
Added // PENDING comment
2000-03-07 22:32:27 +00:00
ashuk%eng.sun.com 09b2307321 a=edburns
r=edburns
author=ashuk
bug=28407

New run script for spec-compliant impl -- Ashu K.
2000-03-07 22:19:20 +00:00
ashuk%eng.sun.com 45ce84a34f a=edburns
r=edburns
author=ashuk
bug=28407

New solaris Makefile for spec-compliant impl -- Ashu K.
2000-03-07 22:18:17 +00:00
ashuk%eng.sun.com 5ff64a96cb a=edburns
r=edburns
author=ashuk
bug=28407

New java code for spec-compliant impl ported to solaris -- Ashu K.
2000-03-07 22:16:07 +00:00
ashuk%eng.sun.com 05667b6516 a=edburns
r=edburns
author=ashuk
bug=28407

New java code for spec-compliant impl ported to solaris -- Ashu K.
2000-03-07 22:10:08 +00:00
ashuk%eng.sun.com 229256c605 a=edburns
r=edburns
author=ashuk
bug=28407

makefile for Java code - spec compliant impl -- Ashu K
2000-03-07 22:03:57 +00:00
edburns%acm.org daf6f29e27 a=edburns
r=ashuk
bug=2069

Native code for spec compliant webclient impl.
2000-03-04 01:37:20 +00:00
edburns%acm.org e4349bb561 a=edburns
r=ashuk
bug=2069

Java classes for spec compliant webclient impl.
2000-03-04 01:10:58 +00:00
edburns%acm.org e7b3aa53ad Put #include <unistd.h> inside #ifdef XP_UNIX 2000-02-18 19:33:28 +00:00
edburns%acm.org 2a216d23c1 Removed import org.mozilla.webclient.motif.* 2000-02-18 19:32:22 +00:00
edburns%acm.org 01cdae7df9 author=Ashutosh Kulkarni
r=edburns
approver=edburns
bug=28407

THIS CODE IS NOT MOZILLA CODE!

This code change allows webclient to work with GTKSUPERWIN.
2000-02-18 19:16:27 +00:00
edburns%acm.org 3edfc17d1a More simple name change changes. 2000-01-07 00:44:24 +00:00
edburns%acm.org 2865ae33df Changed MozillaEventThread.h to NativeEventThread.h 2000-01-06 22:52:03 +00:00
edburns%acm.org aaa22eb60f Change to new NS_InitXPCOM argument.
r=dp
b=23157
a=edburns
2000-01-06 22:45:48 +00:00
edburns%acm.org 234aee233c account for nsIDocumentLoaderObserver API changes. 2000-01-05 20:25:29 +00:00
edburns%acm.org 2d67316d0f r=marklin
a=edburns

Changes to complete the transition from BrowserControlMozillaShim to BrowserControlNativeShim.
1999-12-24 00:03:28 +00:00
edburns%acm.org 48aba00575 r=marklin
a=edburns

Get webclient working againg with tbogard's help on what has changed with webshell.
1999-12-23 23:40:57 +00:00
edburns%acm.org 5ebddaa443 r=marklin
Change BrowserControlMozillaShim to BrowserControlNativeShim.
1999-12-23 04:09:40 +00:00
mark.lin%eng.sun.com 3683cd5252 Fixed webclient on Unix bustage. 1999-12-21 22:20:19 +00:00
edburns%acm.org cd7c5bc466 This change is not related to SeaMonkey, so it can't break the build.
r=marklin
a=edburns
bug=20659

added #ifdef XP_UNIX for GTK_MOZAREA stuff.
1999-12-07 01:51:54 +00:00
edburns%acm.org 1526455072 Changed comment in initialize. 1999-12-06 23:42:13 +00:00
edburns%acm.org d95b24a1a5 r=marklin
a=edburns
bug=20659

Changes to bring webclient sort of up to working shape on unix.
1999-12-06 23:31:11 +00:00
edburns%acm.org 375b331d9b r=marklin%eng.sun.com
a=edburns
bug=20659

Make BrowserControl vend a Canvas instead of
BrowserControlCanvas vending a BrowserControl.

This change has nothing to do with mozilla.  It's pure java.
1999-12-03 01:55:31 +00:00
dmose%mozilla.org 282cd28be9 updated license boilerplated to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 02:24:22 +00:00
edburns%acm.org ca920e09ec r=marklin
#17358
approver=edburns
author=edburns

This fix enables webclient to work with the latest mozilla.  For now.
1999-10-29 22:51:06 +00:00
edburns%acm.org 73d5b309b5 bug: 16842
reviewer: edburns
approver: edburns

Changed raptor to gk in makefile as appropriate.
1999-10-20 22:02:34 +00:00
edburns%acm.org a9d0ccb59a Added Swing webclient test code and windows makefile mods.
Author=Ann Sunhachawee
r=edburns@acm.org
Approver=edburns@acm.org
Bug=http://bugzilla.mozilla.org/show_bug.cgi?id=16842
1999-10-20 00:49:28 +00:00
edburns%acm.org 9b8cfd3205 1999-10-07 <Ed Burns <ed.burns@sun.com>>
* This change fixes
 	http://bugzilla.mozilla.org/show_bug.cgi?id=15793 which caused one
 	to have to copy the component.reg and components directory.  It
 	also causes webclient to do autoregistration.  It also adds a
 	debugging method to BrowserControlMozillaShim.java
 	nativeDebugBreak().

	This changes makes webclient depend on having mozilla sources from
 	10/5/99 or later.

	Reviewed by Mark Lin <marklin@eng.sun.com>
	Approved by Ed Burns <edburns@acm.org>, module owner
1999-10-08 00:52:53 +00:00
edburns%acm.org e9f2d9bf51 1999-10-07 <Ed Burns <ed.burns@sun.com>>
* This change fixes
 	http://bugzilla.mozilla.org/show_bug.cgi?id=15793 which caused one
 	to have to copy the component.reg and components directory.  It
 	also causes webclient to do autoregistration.  It also adds a
 	debugging method to BrowserControlMozillaShim.java
 	nativeDebugBreak().

	This changes makes webclient depend on having mozilla sources from
 	10/5/99 or later.

	Reviewed by Mark Lin <marklin@eng.sun.com>
	Approved by Ed Burns <edburns@acm.org>, module owner
1999-10-08 00:48:01 +00:00
mark.lin%eng.sun.com 64d031fc44 updated library names for Makefile.unix. 1999-09-08 22:18:13 +00:00
edburns%acm.org 3d593c5de7 Added Mark Goddard from OMTP's changes to add "Refresh" to API and implementation.
Also added Refresh button to EmbeddedMozilla.
1999-09-03 19:28:47 +00:00
edburns%acm.org 60d0363f71 Removed antiquated libs 1999-09-02 02:40:59 +00:00
mark.lin%eng.sun.com 7c7a8576f9 Updated makefile. Need to refrence /usr/lib/libC directly. 1999-08-31 22:16:17 +00:00
mark.lin%eng.sun.com 1b6cd28ba0 Updated makefile.solaris to use workshop compilers. 1999-08-31 22:05:56 +00:00
mark.lin%eng.sun.com 671f95b89d Updated Makefile.unix. 1999-08-20 17:34:22 +00:00
mark.lin%eng.sun.com d070b44190 Don't need this anymore. It should get updated dynamically. 1999-08-18 23:24:20 +00:00
mark.lin%eng.sun.com 5ec618bc42 This should make sure nsSetupRegistry.cpp gets updated. 1999-08-18 23:22:27 +00:00
mark.lin%eng.sun.com 77786dedd3 Fixed the bug where the page the user specifies from the command line wouldn't open. 1999-08-16 23:26:40 +00:00
mark.lin%eng.sun.com f24f06a448 Added stuff to LD_LIBRARY_PATH 1999-08-16 23:23:06 +00:00
mark.lin%eng.sun.com d2956e5b96 Oops, forgot to add this file. 1999-08-13 23:21:19 +00:00
edburns%acm.org 80fd56e534 THIS FILE IS NOT IN THE BUILD!
Added Scott Holmes's changes, replacing hard coded WIN32_D.OBJ with
$(DIST).
1999-08-13 23:09:21 +00:00
mark.lin%eng.sun.com b4cffd610f Rearchitected the way Mozilla events are delivered in the Unix Motif port.
Events are now handled by a Java Thread.
1999-08-13 23:02:40 +00:00
mark.lin%eng.sun.com 7c7f47fff4 Rearchitected the way the Mozilla event thread is run. I'm using
a Java Thread now instead to control Mozilla/GTK events.
1999-08-13 23:01:49 +00:00
mark.lin%eng.sun.com a193042e32 Merged in Kirk's changes. 1999-08-13 17:53:43 +00:00
mark.lin%eng.sun.com bfb9859657 Should not be setting className to null if we get an exception. 1999-08-12 21:29:15 +00:00
mark.lin%eng.sun.com 69d601dbc0 Added warning about gtk-config in Unix makefile 1999-08-12 19:37:23 +00:00
mark.lin%eng.sun.com 5f299f02cc Added more things to make it run on solaris. 1999-08-12 19:19:18 +00:00
mark.lin%eng.sun.com 81e871861a Updated these files. 1999-08-12 19:08:39 +00:00
mark.lin%eng.sun.com 9ab9991bd3 Solaris runem file 1999-08-12 18:56:45 +00:00
mark.lin%eng.sun.com 30350191d7 Added solaris makefile. 1999-08-12 18:56:09 +00:00
edburns%acm.org 1706f2c458 This fix is for http://bugzilla.mozilla.org/show_bug.cgi?id=5429.
This fix enables the Tasks->Java Console menu item to show the Java
Console provided by the JRE plugin if it is installed.

It also exposes nsIJVMManager as a full XPIDL citizen, with the progid
component://netscape/oji/jvm-mgr.  see modules/oji/public/nsIJVMManager.idl
for the methods that can be called.

Thanks to Trevor, John Bandauer, Brendan Eich and Robert Yang.
1999-08-12 01:56:18 +00:00
mark.lin%eng.sun.com a017f400b3 updated run script 1999-08-11 17:55:18 +00:00
mark.lin%eng.sun.com 6560062641 Found a bug in the runem.unix script. 1999-08-11 00:12:59 +00:00
mark.lin%eng.sun.com ed54a9de78 Updated event loop stuff so that it's easier to read.
Also made it compilable with latest mozilla source.
Haven't tested yet on windows though.
1999-08-10 23:54:38 +00:00
mark.lin%eng.sun.com bccd161344 oops, forgot to checkin these files. 1999-08-10 18:56:53 +00:00
mark.lin%eng.sun.com ab10e4d206 Oopps, forgot to checkin these files... 1999-08-10 18:55:01 +00:00
mark.lin%eng.sun.com 3450a1e53a Added port to Linux. 1999-08-10 03:59:07 +00:00
edburns%acm.org 7e54d200a1 Made changes to allow building on jdk1.1.7 or jdk1.2. Basically, accounted
for the presence or absence of a classes.zip file.
1999-07-30 22:00:20 +00:00
edburns%acm.org a780fb92b5 Initial checkin of Java Util classes and the Java Wrapper to WebShell
Util docs:  http://www.mozilla.org/projects/blackwood/java-util/
Java Wrapper to WebShell docs: http://www.mozilla.org/projects/blackwood/webclient/
1999-07-30 01:03:12 +00:00