895 Commits

Author SHA1 Message Date
edburns%acm.org
534741bf6c M dist/build.xml
M dist/netbeans/build.xml

- support for building a mac os x universal binary distribution

M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java

- re-enable cardemo test.  The right way to disable this is to
  do it in the build file.

M dist/mcp-test/src/test/java/jsf_jmaki/JsfjMakiTest.java

- use getAnchors() to get the right link.

M dist/netbeans/nbproject/project.properties

- add junit to classpath

dist/build.xml dist/mcp-test/src/test/java/cardemo/CarDemoTest.java dist/mcp-test/src/test/java/jsf_jmaki/JsfjMakiTest.java dist/netbeans/build.xml dist/netbeans/nbproject/project.properties


git-svn-id: svn://10.0.0.236/trunk@228570 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-22 03:41:15 +00:00
edburns%acm.org
758d4ea279 handle_exception_when_running_runnable
git-svn-id: svn://10.0.0.236/trunk@228536 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-21 20:47:05 +00:00
edburns%acm.org
5567c46477 universal_binary
git-svn-id: svn://10.0.0.236/trunk@228443 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-21 18:59:58 +00:00
edburns%acm.org
04cdcb5d73 modify_includes_for_correct_resolution_of_jni.h
git-svn-id: svn://10.0.0.236/trunk@228358 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-20 03:16:31 +00:00
edburns%acm.org
8ca3c70a3a This change-bundle allows Webclient to work on Mac OS X Cocoa.
A webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/NativeBrowserControlCanvas.java

- The base class for all native browser controls

M build.xml

- rm -rf dist/classes on clean

M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java

- disable, due to https://bugzilla.mozilla.org/show_bug.cgi?id=366619
  not being fixed on FIREFOX_2_0_0_3_RELEASE branch.

M dom/jni/nativeDOMProxyListener.cpp

- Need extra void ** cast for first argument to AttachCurrentThread

M dom/jni/org_mozilla_dom_ElementImpl.cpp

- modify handleInterceptableAttr to adjust screenX,screenY per cross
  platform fudge factors.

M dom/src/nsJavaDOMImpl.cpp

- use %p instead of %x when printing out pointers

- Need extra void ** cast for first argument to AttachCurrentThread

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- remove fudge factor, moved into DOM layer.

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

- add logging

- push some code down to NativeBrowserControlCanvas

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

- change the contract of how a new window event is handled.

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

- correctly case where exception is thrown on the AppKit thread when
  doing a ReturnRunnable.

M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/CocoaBrowserControlCanvas.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/Win32BrowserControlCanvas.java

- make this extend NativeBrowserControlCanvas

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

- new contract for NewWindowListener

M webclient/src_moz/NativeEventThread.cpp

- fix compiler warning.

M webclient/src_moz/WindowCreator.cpp

- add logging

M webclient/test/automated/src/classes/org/mozilla/webclient/DOMTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/KeyListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/MouseListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/WindowCreatorTest.java

- use dom to get the screen coordinates of elements on which to click,
  instead of using hard coded screen coordinates, which are not cross
  platform friendly.

M webclient/test/automated/src/test/WindowCreatorTest0.html

- add ids to some elements for use in testcases.


git-svn-id: svn://10.0.0.236/trunk@228340 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-19 20:18:13 +00:00
edburns%acm.org
04e78a3a4d One unit test is still failing: WindowCreator. Oof. Threading problem.
M webclient/build.xml

- separate out "compile.binaries" target

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- account for mac coordinate wierdness.

M webclient/src_moz/AjaxListener.cpp
M webclient/src_moz/CBrowserContainer.cpp
M webclient/src_moz/EmbedEventListener.cpp
M webclient/src_moz/ns_util.h

- make sure to initialize the buffer before calling WC_ITOA

M webclient/test/automated/src/classes/org/mozilla/webclient/CurrentPageTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/KeyListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/MouseListenerTest.java

- Make these tests run

M webclient/test/automated/src/test/HistoryTest0.html

- add an ID.

M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java

- print out coordinates


git-svn-id: svn://10.0.0.236/trunk@228024 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-14 02:03:34 +00:00
edburns%acm.org
ef12f97d60 M dist/build.xml
- added a target to ease iterative development

M dist/netbeans/logging.properties

- turn on logging for all mozilla java classes

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- make the logger package private

A webclient/classes_spec/org/mozilla/mcp/RandomHTMLInputStream.java
R webclient/classes_spec/org/mozilla/webclient/test/RandomHTMLInputStream.java
R webclient/test/automated/src/classes/org/mozilla/webclient/RandomHTMLInputStream.java

- rewrote and copied this here so THTTPD could use it.

M webclient/classes_spec/org/mozilla/mcp/THTTPD.java

- use RandomHtmlInputStream for the NavigationTest.stopTest().


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

- use THTTPD to create RandomHTMLInputStream instances.


git-svn-id: svn://10.0.0.236/trunk@227981 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-13 16:57:17 +00:00
edburns%acm.org
37a04da398 allow for y screen coordinate differences between mac and windows
git-svn-id: svn://10.0.0.236/trunk@227860 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 14:50:51 +00:00
edburns%acm.org
6dabc1c2d1 account for native toolkit inconsistencies
git-svn-id: svn://10.0.0.236/trunk@227859 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 14:21:02 +00:00
edburns%acm.org
5d50181148 M dist/netbeans/build.xml
- Correctly exclude Gtk test on Mac

M dist/netbeans/logging.properties

- turn on all webclient logging

M dist/netbeans/webclient.properties

- Use correct extension for jnilib on mac os x

M webclient/src_moz/EmbedWindow.cpp
M webclient/src_moz/NativeBrowserControl.cpp

- extra logging

M webclient/src_moz/WindowControlImpl.cpp

- correct ifdef logic to exclude some Gtk specific code.


git-svn-id: svn://10.0.0.236/trunk@227854 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 13:06:17 +00:00
edburns%acm.org
7a43081a8c SECTION: Changes
M webclient/classes_spec/org/mozilla/webclient/impl/WrapperFactory.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/NativeEventThread.java

- get rid of the wait/notifyAll in favor of using the CountDownLatch()

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

- When running code on the AppKit thread, log exceptions before rethowing.

M webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm
M webclient/src_share/jni_util.cpp

- Make exception error messages more descriptive.


git-svn-id: svn://10.0.0.236/trunk@227837 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 01:16:09 +00:00
edburns%acm.org
1a4b053157 no_return_from_non_void_method
git-svn-id: svn://10.0.0.236/trunk@227836 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-12 00:55:05 +00:00
edburns%acm.org
4d80afa4ef At long last, I have webclient running on Mac OSX. I only have a
PowerBook G4, so the only binary I can produce is for the PowerPC.
Perhaps someone lucky enough to own a MacBookPro can produce a binary
for me on that processor architecture.

Many thanks to the generous folks on #developers, in particular, timeless,
cbarrett, sdwilsh, and jhpedemonte.

Here are the changes.

SECTION: Changes

M dist/build.xml

- propogate clean on mac os x

- On mac os x, there is .jnilib and also .dylib

M dom/build.xml

- propogate make on mac os x

M webclient/build.xml

- new file for javah on mac

- propogate clobber_all on mac

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

- get the tree lock before calling to native code to get the native window

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

- Allows running arbitrary code on the AppKit thread.  Prevents Thread
  Safety assertions.

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

- adhere to informal protocol to create NativeEventThread

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

- use NativeEventThread.instance.isNativeEventThread()

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

- implement isNativeEventThread()

M webclient/src_moz/Makefile.in

- turn on objc-exceptions on mac os x

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

- work with cocoa

M webclient/src_moz/NativeEventThread.cpp
M webclient/src_moz/cocoa/CocoaBrowserControlCanvas.h
M webclient/src_moz/cocoa/CocoaBrowserControlCanvasImpl.cpp

- two methods to run arbitrary code on the AppKit thread

M webclient/src_moz/cocoa/CocoaBrowserControlCanvas.mm
M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java


git-svn-id: svn://10.0.0.236/trunk@227737 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-10 16:24:12 +00:00
edburns%acm.org
6fede34317 M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/Win32BrowserControlCanvas.java
- Added some logging

- Added informal protocol: newNativeEventThread.  This will be used
  to allow the Mac OS X Version to provide a special NativeEventThread
  extension that forwards all things normally run on the
  NativeEventThread to run on the AppKit thread instead.

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

- Use new informal protocol to instantiate NativeEventThread

M util/classes/org/mozilla/util/Utilities.java

- Instead of doing Class.forName use the proper ClassLoader pattern.
  This will help when webclient becomes a server-side mashup
  facilitator.


git-svn-id: svn://10.0.0.236/trunk@227732 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-10 03:32:25 +00:00
edburns%acm.org
b2cce10546 include_top_level_directory_in_zip
git-svn-id: svn://10.0.0.236/trunk@227472 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-04 17:10:02 +00:00
edburns%acm.org
28489879a0 M build.properties.sample
M dist/build.xml
M dom/build.xml
M webclient/build.xml
M dist/netbeans/build.xml
M dist/netbeans/webclient.properties
M dom/jni/Makefile.in
M dom/src/Makefile.in
M webclient/src_moz/Makefile.in
M webclient/src_moz/EmbedWindow.cpp
M webclient/src_moz/EmbedWindow.h

- Fix for Mac OS X


git-svn-id: svn://10.0.0.236/trunk@226938 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-24 04:16:59 +00:00
edburns%acm.org
4b3f15474f M dist/build.xml
- do Alpha 8 release

- Copy artifacts to local www for dist via CVS.

A dist/webclient-pom.xml

- Create Maven POM for error free artifact resolution

M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java

- Update clientIds

- Use new package for WebclientTestCase

M dist/mcp-test/src/test/java/jsf_jmaki/JsfjMakiTest.java

- Use new timeout mechanism.

- Use new package for WebclientTestCase

M dist/netbeans/build.xml
M dist/netbeans/nbproject/project.properties

- alpha 8

M webclient/build-tests.xml

- remove cardemo from automated test run

M webclient/classes_spec/org/mozilla/mcp/MCP.java
A webclient/classes_spec/org/mozilla/mcp/TimeoutHandler.java

- Generalized timeout mechanism

A webclient/classes_spec/org/mozilla/mcp/CompareFiles.java
A webclient/classes_spec/org/mozilla/mcp/THTTPD.java
A webclient/classes_spec/org/mozilla/mcp/junit/TestLogStrings.properties
A webclient/classes_spec/org/mozilla/mcp/junit/WebclientTestCase.java
A webclient/classes_spec/org/mozilla/mcp/junit/package.html
R webclient/test/automated/src/classes/org/mozilla/util/THTTPD.java
R webclient/test/automated/src/classes/org/mozilla/webclient/CompareFiles.java
R webclient/test/automated/src/classes/org/mozilla/webclient/TestLogStrings.properties
R webclient/test/automated/src/classes/org/mozilla/webclient/WebclientTestCase.java
M webclient/test/automated/src/classes/org/mozilla/webclient/BookmarksTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/BrowserControlFactoryTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/CurrentPageTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/DOMTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/DocumentLoadListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/HistoryTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/KeyListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/MouseListenerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/NavigationTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/PreferencesTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/ProfileManagerTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/WindowCreatorTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/impl/WebclientFactoryImplTest.java
M webclient/test/automated/src/classes/org/mozilla/webclient/impl/wrapper_native/TestGtkBrowserControlCanvas.java
M webclient/test/automated/src/classes/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImplTest.java

- New package for mcp JUnit support


git-svn-id: svn://10.0.0.236/trunk@225589 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-04 17:10:35 +00:00
edburns%acm.org
083c1a8f9b Finally, I have an automated test that exercises DynaFaces and jMaki.
If you don't know what those two things are, check out
<http://developers.sun.com/web/swdp/>.

Anyhow, it was a real pain to keep these two things working together as
jMaki rapidly evolved.  Now at least we can have an automated test to
catch regressions.

SECTION: Changes

A dist/mcp-test/src/main/java/jsf_jmaki/JsfjMaki.java
A dist/mcp-test/src/test/java/jsf_jmaki/JsfjMakiTest.java

- The automated test and the netbeans empty main class.

M dom/classes/org/mozilla/dom/util/DOMTreeDumper.java

- Introduce preorder traversal callback facility

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- add methods

+    public List<Element> getAnchors(String id) {

+    public List<Element> getAnchors() {

+    public List<Element> getChildElementsWithTagName(Element root,
+            final String tagName) {

+    public List<Element> getChildElementsWithTagName(String id,
+            final String tagName) {

+    public void clickElement(String id) {

+    public void blockingClickElement(Element element) {


git-svn-id: svn://10.0.0.236/trunk@224826 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-21 03:25:37 +00:00
edburns%acm.org
916904e9d0 alpha_2
git-svn-id: svn://10.0.0.236/trunk@222443 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-27 03:29:05 +00:00
edburns%acm.org
79edf1719c A plugins/examples/jmfplayer/src/main/web/tilego3.avi
A plugins/examples/jmfplayer/src/main/java/jmfplayer/JMFPlayer.java
A plugins/examples/jmfplayer/src/main/web/test01.html
R plugins/examples/MediaPlayer/JMPlayer.java
R plugins/examples/MediaPlayer/samples/test.html
R plugins/examples/MediaPlayer/samples/tilego3.avi

- Move mediaplayer example to jmfplayer

M plugins/examples/index.html

- Add mediaplayer example

M plugins/netbeans/build.xml
M plugins/netbeans/pluglet.properties

- require new property jdkhome.nospaces

M plugins/release/build.xml

- marching toward binary distribution

M plugins/netbeans/nbproject/build-impl.xml
M plugins/netbeans/nbproject/genfiles.properties
M plugins/netbeans/nbproject/project.properties
M plugins/netbeans/nbproject/project.xml

- IDE changes


git-svn-id: svn://10.0.0.236/trunk@222064 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-20 04:59:34 +00:00
edburns%acm.org
7fb2ac6fa2 A plugins/netbeans
A plugins/netbeans/.cvsignore
A plugins/netbeans/build.xml
A plugins/netbeans/manifest.mf
A plugins/netbeans/nbproject/.cvsignore
A plugins/netbeans/nbproject/build-impl.xml
A plugins/netbeans/nbproject/genfiles.properties
A plugins/netbeans/nbproject/project.properties
A plugins/netbeans/nbproject/project.xml
A plugins/netbeans/pluglet.properties
A plugins/release/build.xml
A plugins/examples/EmptyMainClass/EmptyMainClass.java
A plugins/examples/index.html
A plugins/examples/simple/src/main/java/simple/SimplePluglet.java
A plugins/examples/simple/src/main/web/index.html
M plugins/build.xml
M plugins/mozilla/nppluglet.cpp

- Towards a binar distribution of pluglets


git-svn-id: svn://10.0.0.236/trunk@221999 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-17 01:32:24 +00:00
edburns%acm.org
a75284a92a M plugins/build.xml
M plugins/mozilla/Makefile.in

- Changes to build with objdir

M plugins/examples/MediaPlayer/JMPlayer.java

- Do not use * imports

M plugins/examples/MediaPlayer/build.xml

- distribute to objdir

M plugins/src/PlugletEngine.cpp
M plugins/src/PlugletFactory.cpp
M plugins/src/PlugletsDir.cpp

- Additional logging


git-svn-id: svn://10.0.0.236/trunk@221977 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-16 16:29:31 +00:00
edburns%acm.org
9135d48138 remove_j_id_
git-svn-id: svn://10.0.0.236/trunk@221930 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-15 20:12:37 +00:00
edburns%acm.org
d68d310f48 M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java
M webclient/classes_spec/org/mozilla/mcp/package.html

- Use DOM to make assertions about response XML


git-svn-id: svn://10.0.0.236/trunk@221905 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-15 00:33:10 +00:00
edburns%acm.org
4b007f23c0 A webclient/classes_spec/org/mozilla/mcp/package.html
- package description for MCP

M dist/build.xml

- copy ancilliary files for javadoc

A dist/javadoc.css

- Stylesheet for code samples within Javadocs

M dist/netbeans/build.xml

- Use releasenotes for test browesr start page

M dom/jni/Makefile.in
M dom/src/Makefile.in
M webclient/src_moz/Makefile.in
M webclient/src_share/Makefile.in

- FORCE_PR_LOG

M dom/jni/javaDOMEventsGlobals.cpp
M dom/jni/nativeDOMProxyListener.cpp
M dom/jni/org_mozilla_dom_events_MouseEventImpl.cpp

- use nsCOMPtr and correct QI-ing.

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- Javadocs

- Make private things private

A webclient/classes_spec/org/mozilla/mcp/mcp.jpg

- Master Control Program

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

- javadocs


git-svn-id: svn://10.0.0.236/trunk@221898 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-14 21:02:14 +00:00
edburns%acm.org
8e41711791 Complete the thread safety changes. Ready to attempt alpha 6 release again.
M logging.properties

- Do not append.  Create a new file each time.

- Do not specify a limit.

M dom/classes/org/mozilla/dom/AttrImpl.java
M dom/classes/org/mozilla/dom/CharacterDataImpl.java
M dom/classes/org/mozilla/dom/DOMAccessor.java
M dom/classes/org/mozilla/dom/DOMImplementationImpl.java
M dom/classes/org/mozilla/dom/DocumentImpl.java
M dom/classes/org/mozilla/dom/DocumentTypeImpl.java
M dom/classes/org/mozilla/dom/ElementImpl.java
M dom/classes/org/mozilla/dom/EntityImpl.java
M dom/classes/org/mozilla/dom/NamedNodeMapImpl.java
M dom/classes/org/mozilla/dom/NodeImpl.java
M dom/classes/org/mozilla/dom/NodeListImpl.java
M dom/classes/org/mozilla/dom/NotationImpl.java
M dom/classes/org/mozilla/dom/ProcessingInstructionImpl.java
M dom/classes/org/mozilla/dom/events/EventImpl.java
M dom/classes/org/mozilla/dom/events/MouseEventImpl.java
M dom/classes/org/mozilla/dom/events/UIEventImpl.java

- Use the new ReturnRunnable and RunnableRunner mechanism to ensure
  all DOM calls happen on the NativeEventThread

M dom/jni/org_mozilla_dom_DocumentImpl.cpp

- If the element is not found, make sure the exception thrown is a DOM
  Exception.

M webclient/build-tests.xml

- pass a test browser url.

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- Use the CountDownLatch instead of wait/notify

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

-    public int loadNativeLibraryIfNecessary();
+    public int loadNativeLibrariesIfNecessary();

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

- Fix error in log string

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

- Clean up log messages a bit.

- Use CountDownLatch instead of wait/notify for synchronization

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


git-svn-id: svn://10.0.0.236/trunk@221815 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-13 06:21:45 +00:00
edburns%acm.org
4c249b774c This checkin extracts the thread coordination mechanism used within
webclient into an internal contract so it can be used by dom.

M dom/classes/org/mozilla/dom/DOMAccessor.java

- use RunnableRunner and ReturnRunnable to do internal thread
  coordination.

M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/BookmarksImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/CocoaBrowserControlCanvas.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/CurrentPageImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/EventRegistrationImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/GtkBrowserControlCanvas.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/HistoryImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/NavigationImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/PreferencesImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/ProfileManagerImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/RDFEnumeration.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/Win32BrowserControlCanvas.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/WindowControlImpl.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImpl.java

- Refactor to rename WCRunnable to ReturnRunnable.

M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/NativeEventThread.java
A util/classes/org/mozilla/util/ReturnRunnable.java

- Implement new RunnableRunner interface.

R webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/WCRunnable.java
A util/classes/org/mozilla/util/RunnableRunner.java

- moved class


git-svn-id: svn://10.0.0.236/trunk@221794 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-12 20:39:22 +00:00
edburns%acm.org
9fb81d2764 First step on allowing JAVADom to run on NativeEventThread. Have no
public native methods.  Have each formerly public native method now be a
package private method with the same name as before, but the string
"native" prepended, and the first letter of the old name capitalized.
Have a new public method with the same name as the old method with a
body that calls through to the corresponding native method, passing args
correctly.

Next step will be to provide a threading solution from webclient.

M dom/classes/org/mozilla/dom/AttrImpl.java
M dom/classes/org/mozilla/dom/CharacterDataImpl.java
M dom/classes/org/mozilla/dom/DOMAccessor.java
M dom/classes/org/mozilla/dom/DOMImplementationImpl.java
M dom/classes/org/mozilla/dom/DocumentImpl.java
M dom/classes/org/mozilla/dom/DocumentTypeImpl.java
M dom/classes/org/mozilla/dom/ElementImpl.java
M dom/classes/org/mozilla/dom/EntityImpl.java
M dom/classes/org/mozilla/dom/NamedNodeMapImpl.java
M dom/classes/org/mozilla/dom/NodeImpl.java
M dom/classes/org/mozilla/dom/NodeListImpl.java
M dom/classes/org/mozilla/dom/NotationImpl.java
M dom/classes/org/mozilla/dom/ProcessingInstructionImpl.java
M dom/classes/org/mozilla/dom/events/EventImpl.java
M dom/classes/org/mozilla/dom/events/MouseEventImpl.java
M dom/classes/org/mozilla/dom/events/UIEventImpl.java
M dom/jni/org_mozilla_dom_AttrImpl.cpp
M dom/jni/org_mozilla_dom_CharacterDataImpl.cpp
M dom/jni/org_mozilla_dom_DOMAccessor.cpp
M dom/jni/org_mozilla_dom_DOMImplementationImpl.cpp
M dom/jni/org_mozilla_dom_DocumentImpl.cpp
M dom/jni/org_mozilla_dom_ElementImpl.cpp
M dom/jni/org_mozilla_dom_EntityImpl.cpp
M dom/jni/org_mozilla_dom_NamedNodeMapImpl.cpp
M dom/jni/org_mozilla_dom_NodeImpl.cpp
M dom/jni/org_mozilla_dom_NodeListImpl.cpp
M dom/jni/org_mozilla_dom_NotationImpl.cpp
M dom/jni/org_mozilla_dom_ProcessingInstructionImpl.cpp
M dom/jni/org_mozilla_dom_events_EventImpl.cpp
M dom/jni/org_mozilla_dom_events_MouseEventImpl.cpp
M dom/jni/org_mozilla_dom_events_UIEventImpl.cpp


git-svn-id: svn://10.0.0.236/trunk@221779 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-12 16:13:03 +00:00
edburns%acm.org
b73d7d3c86 M webclient/classes_spec/org/mozilla/webclient/impl/WrapperFactory.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/NativeEventThread.java
M webclient/classes_spec/org/mozilla/webclient/impl/wrapper_native/WrapperFactoryImpl.java

- cause the webclient native library to be loaded from the
  NativeEventThread.  This eliminates many native thread safety
  assertions.

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

- Initialize the dom on the NativeEventThread

- Get the dom on the NativeEventThread

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

- remove unnecessary synchronized block.


git-svn-id: svn://10.0.0.236/trunk@221615 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-09 17:25:48 +00:00
edburns%acm.org
38237424b7 M dist/build.xml
M dist/netbeans/build.xml
M dist/netbeans/nbproject/project.properties

- prepare for alpha 6 release

M webclient/src_moz/AjaxListener.cpp
M webclient/src_moz/AjaxListener.h
M webclient/src_moz/EmbedProgress.cpp
M webclient/src_moz/EmbedProgress.h

- the AjaxListener no longer keeps the jobject EventRegistrationImpl as
  an ivar.  Instead, it lazily uses an accessor on EmbedProgress

M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java

- Take a url from commandline.


git-svn-id: svn://10.0.0.236/trunk@221608 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-09 14:17:04 +00:00
edburns%acm.org
1e8d7ad35d M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java
- this automated test is now a complete example for how to test an ajax
  web application in an automated fashion.

M dom/classes/org/mozilla/dom/NodeImpl.java
M dom/jni/org_mozilla_dom_NodeImpl.cpp

- implement getTextContent() from DOM level 3.

M webclient/build-tests.xml

- add cardemoTest to unit test list as a place-holder until I can write
  a testcase that doesn't require the public Internet.

A webclient/classes_spec/org/mozilla/mcp/AjaxListener.java

- New class.  Docs forthcoming.

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- new methods to support complete ajax automated testing.

M webclient/src_moz/AjaxListener.cpp
M webclient/src_moz/AjaxListener.h

- add mIsObserving flag.  From our dtor, make sure to remove ourselves
  from the EmbedProgress.

M webclient/src_moz/EmbedProgress.cpp
M webclient/src_moz/EmbedProgress.h

- We need to add ourselves as an observer both from SetCapturePageInfo
  and SetEventRegistration.

M webclient/src_moz/NativeBrowserControl.cpp

- Unit testing found a bug!  We can't call mWindow->ReleaseChildren()
  until after we remove ourself as a listener.


git-svn-id: svn://10.0.0.236/trunk@221594 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-09 04:34:24 +00:00
edburns%acm.org
ae1fa3cfb2 M dom/jni/javaDOMEventsGlobals.cpp\
- fix bug where eventType was incorrectly getting accessed as a const char *

M webclient/src_moz/AjaxListener.cpp

- Create a Java DOM instance from the Ajax response.

M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java

- Resurrect the DOMViewer.  Make it show the tree for ajax responses.


git-svn-id: svn://10.0.0.236/trunk@221545 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-08 15:14:22 +00:00
edburns%acm.org
4387234d66 M webclient/classes_spec/org/mozilla/webclient/DocumentLoadEvent.java
- add event masks for Ajax

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

- Document map values for ajax events

M webclient/src_moz/AjaxListener.cpp
M webclient/src_moz/AjaxListener.h

- Flesh out implementation as much as the underlying browser allows.
  For mozilla, this means start, end, and error.

M webclient/src_moz/EmbedProgress.cpp
M webclient/src_moz/EmbedProgress.h

- move the initialization of the AjaxListener into SetEventRegistration().

- Expose NativeBrowserControl * getter

- Make RequestToURIString public

M webclient/src_share/jni_util.cpp
M webclient/src_share/jni_util.h

- new map keys: readyState, responseText, responseXML

- new event masks START_AJAX, END_AJAX, ERROR_AJAX

M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java

- print map values for AJAX cases.


git-svn-id: svn://10.0.0.236/trunk@221541 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-08 13:35:19 +00:00
edburns%acm.org
2329e00781 To address the issue of listening for XMLHttpRequest traffic, I've taken
a cue from Doron Rosenberg in #developers and looked at the Eclipse ATF
project's XHRObserver.java.

This was my first look at java code that uses the java xpcom bridge, and
I'm very impressed.  Once I get webclient 2.0 done, I'll definately
rewrite as much as possible of the mozilla implementation using the java
xpcom bridge.  For now, I'm going to continue to crank with my
"on-demand hand coded JNI C++" approach.  I think I can get results
pretty quickly with this.  For example, just yesterday I learned that
the regular nsIWebProgressListener doesn't get notifications on Ajax
requests, and now I see a way to do it (thanks to Doron).

Here is the work in progress.

A webclient/src_moz/AjaxListener.cpp
A webclient/src_moz/AjaxListener.h
M logging.properties

- set "ALL" for MCP level

M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java

- Cause an Ajax transaction to happen

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- log messages for outgoing HTTP requests

M webclient/src_moz/EmbedProgress.cpp
M webclient/src_moz/EmbedProgress.h

- Leverage new AjaxListener class

M webclient/src_moz/Makefile.in

- add xmlextras, to include nsIXMLHttpRequest.


git-svn-id: svn://10.0.0.236/trunk@221474 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-07 21:02:54 +00:00
edburns%acm.org
0a65ef051c M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java
- remove Robot from this class.  Moved into MCP

M dom/classes/org/mozilla/dom/DocumentImpl.java
M dom/jni/org_mozilla_dom_DocumentImpl.cpp

- implement getDocumentURI().

M dom/classes/org/mozilla/dom/util/DOMTreeDumper.java

- added findElementWithName().

R webclient/classes_spec/org/mozilla/webclient/test/DOMTreeModel.java
A dom/classes/org/mozilla/dom/util/DOMTreeModel.java
R webclient/test/manual/src/classes/org/mozilla/webclient/test/DOMTreeNotifier.java
A dom/classes/org/mozilla/dom/util/DOMTreeNotifier.java
M webclient/classes_spec/org/mozilla/webclient/test/DOMAccessPanel.java
M webclient/classes_spec/org/mozilla/webclient/test/DOMViewerFrame.java
M webclient/test/manual/src/classes/org/mozilla/webclient/test/DOMViewerFrame.java


- Move these over from test browser package

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- added useful new public methods

findElement
clickElement
blockingClickElement

- absorbed functionality of Robot.

R webclient/classes_spec/org/mozilla/webclient/impl/DOMTreeDumper.java
R webclient/test/manual/src/classes/org/mozilla/webclient/test/DOMTreeDumper.java

- For some reason, there were several copies of this file.

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

- Use newly implemented getDocumentURI() for logging.


git-svn-id: svn://10.0.0.236/trunk@221413 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-06 22:03:43 +00:00
edburns%acm.org
24cfaeb00e M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java
- Underpinnings for "clickElementWithId"

M dom/jni/Makefile.in

- depend on layout, for nsIBoxObject.  Thanks smaug.

M dom/jni/javaDOMGlobals.h

- copy over WC_ITOA macro

M dom/jni/org_mozilla_dom_ElementImpl.cpp

- add support for special attributes screenX, screenY, clientX, clientY

M webclient/build-tests.xml

- compile the CarDemoTest

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- add getElementInCurrentPageById()

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

- exercise new features in dom ElementImpl.


git-svn-id: svn://10.0.0.236/trunk@221363 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-06 03:28:47 +00:00
edburns%acm.org
f2359edf57 M dist/build.xml
- Do not exclude Bookmarks, Prefs, and Profile from core source

M dist/mcp-test/src/test/java/cardemo/CarDemoTest.java

- sleep for 10 seconds after the initial load

M dist/netbeans/build.xml

- add the ability to compile the core source of the webclient library,
  should the user want to modify it.

M webclient/classes_spec/org/mozilla/mcp/MCP.java

- Correctly cause blockingLoad to block until the load completes.


git-svn-id: svn://10.0.0.236/trunk@221343 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-05 21:10:24 +00:00
edburns%acm.org
65b19ae154 M build.xml
- Added copy.core.src target

M netbeans/build.xml

- added complie.core.src target 

M netbeans/nbproject/build-impl.xml
M netbeans/nbproject/genfiles.properties
M netbeans/nbproject/project.properties

- autogenerate changes

M netbeans/nbproject/project.xml

- rename source roots


git-svn-id: svn://10.0.0.236/trunk@221314 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-05 16:35:47 +00:00
edburns%acm.org
562f0ecbca M build.xml
A mcp-test/src/main/java/cardemo/CarDemo.java
A mcp-test/src/test/java/cardemo/CarDemoTest.java

- include automated test to use MCP to test the Ajax cardemo


git-svn-id: svn://10.0.0.236/trunk@221273 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-03 21:06:39 +00:00
edburns%acm.org
38884c477a M dist/netbeans/build.xml
- Add ability to debug a singe junit test

M webclient/build.xml
A webclient/classes_spec/org/mozilla/mcp/MCP.java
A webclient/classes_spec/org/mozilla/mcp/MCPLogStrings.properties

- add mcp package

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

- add getter for outputFileRoot.


git-svn-id: svn://10.0.0.236/trunk@221270 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-03 20:35:14 +00:00
edburns%acm.org
b15b18becd M build.xml
A non-ide/README
A non-ide/build.properties.sample
A non-ide/build.xml
A non-ide/logging.properties
A non-ide/project.properties

- Add non-ide build file.


git-svn-id: svn://10.0.0.236/trunk@220977 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-27 04:47:59 +00:00
edburns%acm.org
2844a28cb2 skip_testPrintPreview_on_XP
git-svn-id: svn://10.0.0.236/trunk@220957 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-26 21:32:35 +00:00
edburns%acm.org
a39bcfd627 remove_relative_path
git-svn-id: svn://10.0.0.236/trunk@220838 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 19:03:12 +00:00
edburns%acm.org
d74e28323c added_#
git-svn-id: svn://10.0.0.236/trunk@220836 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 18:39:02 +00:00
edburns%acm.org
80bdfe17ce add_javadocs
git-svn-id: svn://10.0.0.236/trunk@220827 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 17:32:11 +00:00
edburns%acm.org
4b0552e239 comment_out_browser_bin_dir
git-svn-id: svn://10.0.0.236/trunk@220823 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 16:58:05 +00:00
edburns%acm.org
e96b508972 remove_unnecessary_build_properties
git-svn-id: svn://10.0.0.236/trunk@220822 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 16:55:25 +00:00
edburns%acm.org
7ebb86fbca define_main_class
git-svn-id: svn://10.0.0.236/trunk@220821 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 16:42:52 +00:00
edburns%acm.org
df3334218e automated_tests_work_fully
git-svn-id: svn://10.0.0.236/trunk@220820 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 16:40:14 +00:00
edburns%acm.org
da5a86f64e debug_jvm_args
git-svn-id: svn://10.0.0.236/trunk@220817 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 16:14:13 +00:00