Commit Graph

824 Commits

Author SHA1 Message Date
edburns%acm.org
56d8625dc4 M mozilla/npAPInsIInputStreamShim.cpp
- re-enable stream loading in pluglet.
2006-11-09 20:17:43 +00:00
edburns%acm.org
b8ded97e2d Memory audit of code in src directory. Found and fixed some leaks.
Declaring this directory memory clean.

M src/Pluglet.cpp
M src/Pluglet.h

- use do_GetService instead of servman->GetServiceByContractID

- do not keep a reference to plugletEngine as an ivar

M src/PlugletFactory.cpp
M src/PlugletFactory.h

- use nsnull instead of NULL

- do not keep a reference to plugletEngine as an ivar

- use PL_strdup and PL_strfree to duplicate and free strings

M src/PlugletsDir.cpp

- use PL_strdup and PL_strfree to duplicate and free strings
2006-11-09 20:10:17 +00:00
edburns%acm.org
c5c0551511 update 2006-11-02 18:57:52 +00:00
edburns%acm.org
a0319d2d7b This change-bundle fixes memory allocation in streams. Next step is to
make a final pass to make sure we are not leaking memory.  After that, I
want to clean up the build system, and the samples.

M build.xml

- Call make export in mozilla directory

- Fix clean target

M mozilla/Makefile.in

- Added export target
M classes/org/mozilla/pluglet/PlugletLoader.java

- avoid ambiguity by casting

+	    CodeSource codesource = new CodeSource(url,(java.security.cert.Certificate []) null);

M examples/MediaPlayer/JMPlayer.java

- remove debug printfs

M mozilla/npAPInsIInputStreamShim.cpp
M mozilla/npAPInsIInputStreamShim.h

- remove debug printfs

- fix buffer allocation, refactor into its own method.

- Use NPN_Mem* methods for memory allocation.

- isolate lock access to private methods.  Avoids locking when we
  already own the lock, which would cause an assertion.

M mozilla/nppluglet.cpp

- in dtor, check for null mScriptablePeer ivar before accessing it.

M mozilla/nsScriptablePeer.cpp

- whitespace

M src/Pluglet.cpp

- get the plugletEngine from do_GetService().

M src/PlugletEngine.cpp
M src/PlugletFactory.cpp
M src/PlugletLoader.cpp

- remove debug printfs

M test/test.java

- added test finalize.


build.xml classes/org/mozilla/pluglet/PlugletLoader.java examples/MediaPlayer/JMPlayer.java mozilla/Makefile.in mozilla/npAPInsIInputStreamShim.cpp mozilla/npAPInsIInputStreamShim.h mozilla/nppluglet.cpp mozilla/nsScriptablePeer.cpp src/Pluglet.cpp src/PlugletEngine.cpp src/PlugletFactory.cpp src/PlugletLoader.cpp test/test.java
2006-11-02 18:55:50 +00:00
timeless%mozdev.org
46d2b15871 Bug 106386 Correct misspellings in source code
r=glennrp@gmail.com, bclary@bclary.com rs=brendan
2006-11-01 23:02:18 +00:00
edburns%acm.org
946b3e3e0a checkpoint 2006-10-26 13:46:57 +00:00
edburns%acm.org
85f4af9d5d A mozilla/npAPInsIInputStreamShim.cpp
A mozilla/npAPInsIInputStreamShim.h

- Shim to allow the np4xplugin API to call pass stream data to pluglet

M mozilla/Makefile.in

- Add the shim to the source files

M mozilla/nppluglet.cpp

- implement the layer that calls the shim

M test/test.html

- Pass the plugin a src of its .java file.

M test/test.java

- additional debug printout inf

mozilla/npAPInsIInputStreamShim.cpp mozilla/npAPInsIInputStreamShim.h mozilla/Makefile.in mozilla/nppluglet.cpp test/test.html test/test.java
2006-10-26 04:19:00 +00:00
edburns%acm.org
90bc80065c ? build
? simple
? examples/MediaPlayer/build
? examples/MediaPlayer/build.properties
? examples/MediaPlayer/build.properties.sample
? test/build
M examples/MediaPlayer/JMPlayer.java
M examples/MediaPlayer/build.xml
M examples/MediaPlayer/samples/test.html
M mozilla/nppluglet.cpp
M mozilla/nppluglet.h
2006-10-23 05:18:19 +00:00
edburns%acm.org
fe25a2c058 simple_pluglet_works 2006-10-16 13:53:26 +00:00
edburns%acm.org
118875675b M mozilla/Makefile.in
- add nspr to libs

M mozilla/nppluglet.cpp

- make sure to store instance pointer for return to browser, this enables
  shutdown to work properly

- When HasPlugletForMimeType is called multiple times, actually check
  the mime type.

M mozilla/nsISimplePlugin.idl

- Fix this so it's callable from JavaScript

M src/PlugletsDir.cpp

- Fix bug for multiple plugin instances

Index: mozilla/Makefile.in
===================================================================
RCS file: /cvsroot/mozilla/java/plugins/mozilla/Makefile.in,v
retrieving revision 1.1
diff -u -r1.1 Makefile.in
--- mozilla/Makefile.in	7 Oct 2006 23:31:52 -0000	1.1
+++ mozilla/Makefile.in	14 Oct 2006 12:26:06 -0000
@@ -59,7 +59,7 @@

 XPIDLSRCS = nsISimplePlugin.idl

-SHARED_LIBRARY_LIBS = $(PLUGIN_SDK)/samples/common/$(LIB_PREFIX)plugingate_s.$(LIB_SUFFIX) ../src/$(LIB_PREFIX)pluglet_s.$(LIB_SUFFIX)
+SHARED_LIBRARY_LIBS = $(PLUGIN_SDK)/samples/common/$(LIB_PREFIX)plugingate_s.$(LIB_SUFFIX) ../src/$(LIB_PREFIX)pluglet.$(LIB_SUFFIX) $(XPCOM_LIBS) $(NSPR_LIBS)

 ifeq ($(OS_ARCH),WINNT)
 DEFFILE = $(win_srcdir)/nppluglet.def
Index: mozilla/nppluglet.cpp
===================================================================
RCS file: /cvsroot/mozilla/java/plugins/mozilla/nppluglet.cpp,v
retrieving revision 1.3
diff -u -r1.3 nppluglet.cpp
--- mozilla/nppluglet.cpp	13 Oct 2006 14:45:14 -0000	1.3
+++ mozilla/nppluglet.cpp	14 Oct 2006 12:26:07 -0000
@@ -47,6 +47,8 @@

 #include "nsServiceManagerUtils.h"

+#include "plstr.h"
+
 // service manager which will give the access to all public browser services
 // we will use memory service as an illustration
 nsIServiceManager * gServiceManager = NULL;
@@ -153,17 +155,21 @@
 // nsPluginInstance class implementation
 //
 nsPluginInstance::nsPluginInstance(nsPluginCreateData * aCreateDataStruct) : nsPluginInstanceBase(),
-  mInstance(aCreateDataStruct->instance),
   mInitialized(PR_FALSE),
   mScriptablePeer(nsnull),
   mPluglet(nsnull)
 {
+  mInstance = aCreateDataStruct->instance;
+
   mCreateDataStruct.instance = aCreateDataStruct->instance;
   mCreateDataStruct.type = aCreateDataStruct->type;
   mCreateDataStruct.mode = aCreateDataStruct->mode;
   mCreateDataStruct.argc = aCreateDataStruct->argc;
   mCreateDataStruct.argn = aCreateDataStruct->argn;
   mCreateDataStruct.saved = aCreateDataStruct->saved;
+
+  mCreateDataStruct.instance->pdata = this;
+  mInstance->pdata = this;
   mString[0] = '\0';
 }

@@ -256,19 +262,27 @@
                                                       PRBool *outResult)
 {
     nsresult rv = NS_ERROR_FAILURE;
-
-    nsCOMPtr<nsIPlugin> plugletEngine =
-	do_GetService(PLUGLETENGINE_ContractID, &rv);
     *outResult = PR_FALSE;
+    nsCOMPtr<nsIPlugin> plugletEngine = nsnull;
     nsIID scriptableIID = NS_ISIMPLEPLUGIN_IID;
+
+    if (!mPluglet) {
+        plugletEngine = do_GetService(PLUGLETENGINE_ContractID, &rv);

-    if (NS_SUCCEEDED(rv)) {
-        rv = plugletEngine->CreatePluginInstance(nsnull, scriptableIID,
-                                                 aMimeType,
-                                                 getter_AddRefs(mPluglet));
-        if (NS_SUCCEEDED(rv) && mPluglet) {
+        if (NS_SUCCEEDED(rv)) {
+            rv = plugletEngine->CreatePluginInstance(nsnull, scriptableIID,
+                                                     aMimeType,
+                                                     getter_AddRefs(mPluglet));
+            if (NS_SUCCEEDED(rv) && mPluglet) {
+                *outResult = PR_TRUE;
+            }
+        }
+    }
+    else {
+        if (0 == PL_strcmp(aMimeType, mCreateDataStruct.type)) {
             *outResult = PR_TRUE;
         }
+		rv = NS_OK;
     }

     return rv;
Index: mozilla/nsISimplePlugin.idl
===================================================================
RCS file: /cvsroot/mozilla/java/plugins/mozilla/nsISimplePlugin.idl,v
retrieving revision 1.2
diff -u -r1.2 nsISimplePlugin.idl
--- mozilla/nsISimplePlugin.idl	12 Oct 2006 21:22:47 -0000	1.2
+++ mozilla/nsISimplePlugin.idl	14 Oct 2006 12:26:07 -0000
@@ -40,5 +40,5 @@

 [scriptable, uuid(482e1890-1fe5-11d5-9cf8-0060b0fbd8ac)]
 interface nsISimplePlugin : nsISupports {
-  void hasPlugletForMimeType(in string aMimeType, out boolean isSupported);
+  boolean hasPlugletForMimeType(in string aMimeType);
 };
Index: src/PlugletsDir.cpp
===================================================================
RCS file: /cvsroot/mozilla/java/plugins/src/PlugletsDir.cpp,v
retrieving revision 1.10
diff -u -r1.10 PlugletsDir.cpp
--- src/PlugletsDir.cpp	12 Oct 2006 21:22:47 -0000	1.10
+++ src/PlugletsDir.cpp	14 Oct 2006 12:26:07 -0000
@@ -124,6 +124,9 @@
     if(!mMimeTypeToPlugletFacoryHash) {
 	res = LoadPluglets();
     }
+    else {
+	res = NS_OK;
+    }
     if (NS_SUCCEEDED(res) && mMimeTypeToPlugletFacoryHash) {
 	*plugletFactory = (PlugletFactory *)
 	    PL_HashTableLookup(mMimeTypeToPlugletFacoryHash,
2006-10-14 12:28:15 +00:00
edburns%acm.org
479d3ff4bf M mozilla/nppluglet.cpp
M mozilla/nppluglet.h
M src/Pluglet.cpp
M src/Pluglet.h
M src/PlugletEngine.cpp

SetWindow works.  Next step is to try hook up scriptability.
2006-10-13 14:45:14 +00:00
edburns%acm.org
eb9add1fd4 checkpoint 2006-10-12 21:22:47 +00:00
bugzilla%standard8.demon.co.uk
a291a97697 Bug 351921 Remove xpcom/obsolete/nsSpecialSystemDirectory.{h,cpp} r=darin,edburns 2006-10-12 16:44:32 +00:00
edburns%acm.org
bba64e4fb4 src 2006-10-07 23:31:52 +00:00
timeless%mozdev.org
97d86b0df2 Bug 106386 Correct misspellings in source code
r=bernd rs=brendan
2006-08-28 20:12:37 +00:00
edburns%acm.org
b1081b103c I now have the pluglet.dll XPCOM module loading. The reason it was not
loading: it depends on jvm.dll, which was not on my path.  I had to add
%JDKHOME%\jre\bin\client to my path and now it loaded. Thanks to shaver
and plasticmillion on #developers for the tip to use depends.exe, the
Dependency Walker.  What a nice tool.

Of course, there is now a crash after it loads, which will be my next
step after this checkin.

A plugins/src/iPlugletEngine.idl
A plugins/src/iPlugletManager.idl

- make IDL files for our external interfaces.

M plugins/src/Makefile.in

- move PlugletEngine.cpp to the top of the list.

M plugins/src/PlugletEngine.cpp
M plugins/src/PlugletEngine.h

- big changes here.  Make this a proper generic XPCOM component.

- use the iPlugletManager interface, and the nsICategoryManager
  to make sure we get called at startup.

M plugins/src/Pluglet.cpp
M plugins/src/Pluglet.h
M plugins/src/PlugletFactory.cpp
M plugins/src/PlugletFactory.h
M plugins/src/PlugletInputStream.cpp
M plugins/src/PlugletInputStream.h
M plugins/src/PlugletLoader.cpp
M plugins/src/PlugletManager.cpp
M plugins/src/PlugletPeer.cpp
M plugins/src/PlugletStreamInfo.cpp
M plugins/src/PlugletStreamListener.cpp
M plugins/src/PlugletViewWindows.cpp
M plugins/src/PlugletsDir.cpp
M plugins/src/Registry.cpp

- remove static method PlugletEngine::GetJNIEnv, in favor of instance
  method and use of nsIServiceManager.
2006-06-19 18:50:01 +00:00
edburns%acm.org
a4e7cd8a61 update 2006-06-19 10:05:42 +00:00
edburns%acm.org
02bde62222 pluglet_build 2006-03-26 16:36:55 +00:00
edburns%acm.org
a9a7f9499c pluglets_build 2006-03-24 18:34:53 +00:00
edburns%acm.org
d688e376c1 Make plugletjni.lib and .dll build.
M makefiles

- remove plugins/Makefile, this'll be replaced by ant

- add jni Makefile

R plugins/makefile.win
R plugins/jni/makefile.win
R plugins/src/makefile.win

- obsolete.

M plugins/jni/Makefile.in

- new includes and such

M plugins/jni/org_mozilla_pluglet_mozilla_PlugletOutputStream.cpp

- cast to const char *.
2006-03-24 17:57:24 +00:00
edburns%acm.org
19bccfbfca pluglet.dll_now_builds 2006-03-24 17:41:16 +00:00
edburns%acm.org
ef22aa3aa0 This change-bundle starts the process of re-activating pluglets.
Next step is to figure out the best way to fix these unresolved symbols
at link time when building pluglet.dll

/cygdrive/d/Projects/mozilla/MOZILLA_NIH/FIREFOX_1_5_0_1/mozilla/./build/cygwin-wrapper link -NOLOGO -DLL -OUT:pluglet.dll -PDB:pluglet.pdb -SUBSYSTEM:WINDOWS  List.obj Pluglet.obj PlugletEngine.obj PlugletFactory.obj PlugletInputStream.obj PlugletLoader.obj PlugletManager.obj PlugletPeer.obj PlugletStreamInfo.obj PlugletStreamListener.obj PlugletsDir.obj Registry.obj PlugletViewFactory.obj   ./module.res   -DEBUG -DEBUGTYPE:CV         kernel32.lib user32.lib gdi32.lib winmm.lib wsock32.lib advapi32.lib D:\Files_2k\j2sdk1.4.2_03/lib/jvm.lib ../../../dist/lib/xpcom.lib ../../../dist/lib/xpcom_core.lib ../../../dist/lib/nspr4.lib ../../../dist/lib/plc4.lib ../../../dist/lib/plds4.lib
   Creating library pluglet.lib and object pluglet.exp
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall nsFileSpec::~nsFileSpec(void)" (__imp_??1nsFileSpec@@UAE@XZ)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall nsDirectoryIterator::~nsDirectoryIterator(void)" (__imp_??1nsDirectoryIterator@@UAE@XZ)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class nsDirectoryIterator & __thiscall nsDirectoryIterator::operator++(void)" (__imp_??EnsDirectoryIterator@@QAEAAV0@XZ)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall nsDirectoryIterator::nsDirectoryIterator(class nsFileSpec const &,int)" (__imp_??0nsDirectoryIterator@@QAE@ABVnsFileSpec@@H@Z)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall nsFileSpec::nsFileSpec(char const *,int)" (__imp_??0nsFileSpec@@QAE@PBDH@Z)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: virtual __thiscall nsSpecialSystemDirectory::~nsSpecialSystemDirectory(void)" (__imp_??1nsSpecialSystemDirectory@@UAE@XZ)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall nsFileSpec::operator+=(char const *)" (__imp_??YnsFileSpec@@QAEXPBD@Z)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall nsSpecialSystemDirectory::nsSpecialSystemDirectory(enum nsSpecialSystemDirectory::SystemDirectories)" (__imp_??0nsSpecialSystemDirectory@@QAE@W4SystemDirectories@0@@Z)
PlugletsDir.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: char const * __thiscall nsFileSpec::GetCString(void)const " (__imp_?GetCString@nsFileSpec@@QBEPBDXZ)
PlugletViewFactory.obj : error LNK2001: unresolved external symbol "public: __thiscall PlugletViewWindows::PlugletViewWindows(void)" (??0PlugletViewWindows@@QAE@XZ)
pluglet.dll : fatal error LNK1120: 10 unresolved externals

M makefiles

+java/plugins/Makefile
+java/plugins/src/Makefile

Add generation of these Makefiles

M plugins/src/Makefile.in

- copy some content from webclient

M plugins/src/Pluglet.cpp
M plugins/src/PlugletEngine.cpp
M plugins/src/PlugletStreamListener.cpp

- Changes from John Sublet.
2006-03-21 03:25:34 +00:00
edburns%acm.org
53684b3fb8 remove_checked_in_makefiles 2006-03-21 02:28:54 +00:00
edburns%acm.org
dc3bae7389 make_this_test_run 2006-03-17 00:26:02 +00:00
edburns%acm.org
2da8b33fed This checkin gets webclient and sorta running with Firefox 1.5.0.1
Next step is to fix this:

D:\Projects\mozilla\MOZILLA_NIH\FIREFOX_1_5_0_1\mozilla\java\webclient\build-tests.xml:152: Test org.mozilla.webclient.DocumentLoadListenerTest failed

M build.properties.sample

- Add hint for msdev arguments.

M dom/build.xml
M util/build.xml
M webclient/build.xml

- compile.source to 1.3

M dom/jni/Makefile.in
M webclient/src_ie/Makefile.in
M webclient/src_moz/Makefile.in
M webclient/src_moz/gtk/Makefile.in
M webclient/src_share/Makefile.in

- +DEFINES += -DMOZILLA_INTERNAL_API

M dom/jni/nativeDOMProxyListener.cpp
M dom/src/nsJavaDOMImpl.cpp

- remove cast to (void **) in AttachCurrentThread

M dom/src/Makefile.in

- depend on layout

- +DEFINES += -DMOZILLA_INTERNAL_API

M webclient/build-tests.xml

- comment out ProfileManagerTest

- compile with compile.source

M webclient/src_moz/NativeBrowserControl.cpp

- nsIFocusController,nsIChromeEventHandler,nsIDomWindowInternal no
  longer needs nsCOMPtr

M webclient/src_moz/NativeEventThread.cpp

- remove IID defs for webShell, sHistory.

M webclient/src_moz/NavigationActionEvents.cpp

- remove nsIPresContext include

M webclient/src_moz/NavigationImpl.cpp

-#include "nsIServiceManagerUtils.h" // PENDING(edburns): when moving
-                                    // past 1.7, this changes to
-                                    // nsServiceManagerUtils.h
+#include "nsServiceManagerUtils.h"

M webclient/src_moz/ProfileManagerImpl.cpp

- This is currently totally broken.  Next step is to fix it.

M webclient/src_moz/WrapperFactoryImpl.cpp

- comment out profileManager accesses

M webclient/src_moz/ns_globals.h
M webclient/src_moz/ns_util.h

- take out nsIWebShell

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

- comment out goldenFile assertion until ProfileManager works.
2006-03-05 03:53:26 +00:00
timeless%mozdev.org
1ce5986f6b Bug 106386 Correct misspellings in source code
r=bernd rs=brendan
2006-02-23 09:36:43 +00:00
cbiesinger%web.de
118d945c7f bug 183156 remove *UCS2* functions, replacing them with *UTF16* ones
r+sr=darin
2006-02-03 14:32:22 +00:00
timeless%mozdev.org
8397d43a6a Bug 106386 Correct misspellings in source code
patch by philippuryear@gmail.com r=timeless rs=brendan
2006-01-12 07:57:31 +00:00
edburns%acm.org
c2dd2873df update 2005-12-02 03:19:22 +00:00
timeless%mozdev.org
9b0852aaf7 Bug 106386 Correct misspellings in source code
patch by unknown@simplemachines.org r=timeless rs=brendan
2005-11-25 21:57:13 +00:00
timeless%mozdev.org
db820cf720 Bug 106386 Correct misspellings in source code
patch by unknown@simplemachines.org r=timeless rs=brendan
2005-11-25 08:16:51 +00:00
edburns%acm.org
d4d3b39a3d up_version_to_a5 2005-08-21 01:23:11 +00:00
edburns%acm.org
9e304950ae Next step is to figure out why real dom listeners don't work.
M webclient/test/manual/src/classes/org/mozilla/webclient/test/TestBrowser.java

- Modify mouseOver to output some dom information to the status bar.
2005-08-21 00:53:09 +00:00
edburns%acm.org
859bfcad5f Expose the dom Node to the standard java key and mouse
listeners, using test driven development techniques of course.

Next step is to update the test browser to use this feature.

SECTION:

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

- KeyEvent subclass to expose WebclientEvent, and allow access to the
  Source property, which is a dom Node

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

- change to handle WCKeyEvent

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

- new test content

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

- add id attribute
2005-08-20 19:25:52 +00:00
edburns%acm.org
19dc7352a7 This change-bundle solves the dom problem in a different way: by
allowing the standard java key and mouse event listeners to get access
to the dom Node that corresponds to that event.  I have the Node
propagated out to the webclient level, but I need to push it all the way
out so the client can access it.

Next step is to expose the dom Node to the standard java key and mouse
listeners, using test driven development techniques of course.

SECTION: Changes

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

- make getNodeByHandle(long p) public so I can get the dom node for a
  key or mouse event.

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

- added commented out methods for the Node in Java SE 5.0

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

- Extract the dom Node that corresponds to a key or mouse event.

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

- Don't use keyword enum, for Java SE 5.0

M webclient/src_moz/EmbedEventListener.cpp

- store the long into the properties.

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

- new constant, NodeLong.
2005-08-19 05:26:07 +00:00
edburns%acm.org
fdbc87a6d5 Next step is to resume hunting down the DOM bug.
M dom/src/Makefile.in

- conditional builds to work properly XP

M webclient/build-tests.xml

- pass MOZ_SRC to test environment to enable absolute pathing to golden
  files

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

- Leverage MOZ_SRC to get absolute pathing to golden files
2005-08-09 04:43:00 +00:00
bzbarsky%mit.edu
9aa3066a02 More uses of EmptyC?String(). Bug 232691, patch by Charles Fenwick
<clf03f@garnet.acns.fsu.edu>, r+sr=bzbarsky, a=bsmedberg
2005-07-15 21:41:47 +00:00
edburns%acm.org
62ece01069 generic_native_drawing_works_but_not_for_mozilla 2005-05-23 01:10:22 +00:00
edburns%acm.org
307d596df4 Remove debugging printfs.
Have browser window visible, but no content pane.
2005-05-17 13:12:45 +00:00
edburns%acm.org
220f3b897a cocoa-seems-to-work 2005-05-17 04:38:38 +00:00
edburns%acm.org
4e954005fe Turns out the problem with the CocoaBrowserControlCanvas
was that I was incorrectly interpreting the return value from
Lock().

This works.  Next step is to solve the nsWindow.cpp problem.
2005-05-16 13:39:22 +00:00
edburns%acm.org
f14f0787f1 Checkpoint for mac os x reactivation.
Having trouble with the implementation of getHandleToPeer.

Current problem is that JAWT_DrawingSurface->Lock() is failing.

Why would that be?
2005-05-13 06:40:12 +00:00
edburns%acm.org
2fe3e7e4db All I had time for today was some javadoc updates. Next step is still to
work on the dom viewer in the TestBrowser.

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

- add javadocs.
2005-04-19 13:00:40 +00:00
edburns%acm.org
2cc96d34df This checkin enables CurrentPage.getSource() to return the actual source
bytes, including whitespace, that is being shown in the BrowserControl.
The source actually comes from the browser's cache, and is not
re-fetched over the network unless the browser doesn't have an entry in
the cache.

Next step is to fix up the TestBrowser to show off this feature.

A src_moz/LoadCompleteProgressListener.cpp
A src_moz/LoadCompleteProgressListener.h

 * Simple nsIWebProgressListener that offers a "loadComplete" property
 * that can be queried to determine if the load has completed.

A test/manual/src/classes/org/mozilla/webclient/test/DOMAccessPanel.java
A test/manual/src/classes/org/mozilla/webclient/test/DOMCellRenderer.java
A test/manual/src/classes/org/mozilla/webclient/test/DOMTreeDumper.java
A test/manual/src/classes/org/mozilla/webclient/test/DOMTreeModel.java
A test/manual/src/classes/org/mozilla/webclient/test/DOMTreeNotifier.java
A test/manual/src/classes/org/mozilla/webclient/test/DOMViewerFrame.java

- move over from Old test browser.  Produces some thread issues.

M src_moz/CurrentPageImpl.cpp

- Leverage LoadCompleteProgressListener to discover when it's safe to
  call "selectAll" on the window.

M src_moz/Makefile.in

- add LoadCompleteProgressListener

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

- re-enable GetSource test

M test/automated/src/test/ViewSourceTest.html

- re-edit for ease of comparison in CurrentPageTest

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

- Hack: viewSource button.  A menu would be better.
2005-04-17 20:19:46 +00:00
edburns%acm.org
3fa6d2fc2e CheckPoint. Exact bytes of viewSource doesn't work yet. I think the
problem is that selectAll isn't working due to the window not being
realized.  We'll see.  Next step is to get it working!

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

- rewrite getSource() to call native code, instead of using the DOM.

M src_moz/CurrentPageImpl.cpp

- re-enable nativeGetSource().

M src_moz/EmbedWindow.cpp
M src_moz/EmbedWindow.h

- fill out dtor

- add InitNoChrome.


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

- comment out test

classes_spec/org/mozilla/webclient/impl/wrapper_native/CurrentPageImpl.java src_moz/CurrentPageImpl.cpp src_moz/EmbedWindow.cpp src_moz/EmbedWindow.h test/automated/src/classes/org/mozilla/webclient/CurrentPageTest.java
2005-03-29 05:03:12 +00:00
edburns%acm.org
0535edc189 This checkin re-implements CurrentPage.getSource(). It doesn't preserve
the whitespace formatting of the current page, which is a big problem.
Next step is to get the DOMViewer working with the TestBrowser.

M build.xml

- exclude test from the default build

A classes_spec/org/mozilla/webclient/impl/DOMTreeDumper.java

- Copy this over from test.

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

- leverage DOMTreeDumper to print the current source.

M test/automated/src/classes/org/mozilla/webclient/CurrentPageTest.java
A test/automated/src/test/ViewSourceTest.html

- exercise new methods.
2005-03-22 15:58:51 +00:00
edburns%acm.org
f84022a1d8 [11-StateSavingWindowId]
This change-bundle implements the FULL proposal for this, as well as
covering some corner-cases not in the initial proposal.

I have yet to get the last stamp of approval from the EG, but I'm
confident we'll get it, so I'm checking it in now.

r=visvan.

SECTION: API Changes

M jsf-api/src/javax/faces/application/StateManager.java

- reword the class description for readability

- saveSerializedView

  Deprecate this.  Make it no-longer abstract.  Provide default impl
  that returns null.

- saveView

  new method.  Replaces saveSerializedView.  Provide default impl that
  calls through to saveSerializedView().


- writeState that takes Object

  new method.  Provide default impl:

+     * <p>For backwards compatability with existing
+     * <code>StateManager</code> implementations, the default
+     * implementation of this method checks if the argument is an
+     * instance of <code>Object []</code> of length greater than or
+     * equal to two.  If so, it creates a <code>SerializedView</code>
+     * instance with the tree structure coming frome element zero and
+     * the component state coming from element one and calls through to
+     * {@link
+     * #writeState(javax.faces.context.FacesContext,javax.faces.application.StateManager.SerializedView}.
+     * If not, does nothing.</p>

- getTreeStructureToSave
- getComponentStateToSave
- restoreTreeStructure
- restoreComponentState

  Deprecate these.  Provide default impl that returns null or no-ops.

- SerializedView

  Deprecate this.

M jsf-api/src/javax/faces/application/StateManagerWrapper.java

- add new methods.

M jsf-api/src/javax/faces/render/ResponseStateManager.java

- writeState that takes Object

  new method.

+     * <p>For backwards compatability with existing
+     * <code>ResponseStateManager</code> implementations, the default
+     * implementation of this method checks if the argument is an
+     * instance of <code>SerializedView</code>.  If so, it calls through
+     * to {@link
+     * #writeState(javax.faces.context.FacesContext,javax.faces.application.StateManager.SerializedView}.
+     * If not, does nothing.</p>

- writeState that takes SerializedView

+     * @deprecated This method has been replaced by {@link
+     * #writeState(javax.faces.context.FacesContext,java.lang.Object)}.
+     * The default implementation of this method does nothing.
+     *

- getState

  new method.

- getTreeStructureToRestore
- getComponentStateToRestore

  Deprecate these.  Provide default impl that returns null or no-ops.

SECTION: RI Changes

M jsf-ri/src/com/sun/faces/application/StateManagerImpl.java

  Provide implementations for deprecated methods that will be called by
  the default implementations of the new methods in StateManager.

  - saveSerializedView(): no functional change since last version

M jsf-ri/src/com/sun/faces/application/ViewHandlerImpl.java

- move the responsibility for doing the redirect to createView() from
  renderView(), since it was only designed to catch the initial request.

M jsf-ri/src/com/sun/faces/lifecycle/RestoreViewPhase.java

- introduce private isPostback() method.

+     * @return true if the request method is POST or PUT, or the method
+     * is GET but there are query parameters, or the request is not an
+     * instance of HttpServletRequest.

  Only call restoreView() if isPostback(), otherwise call createView().

M jsf-ri/src/com/sun/faces/renderkit/ResponseStateManagerImpl.java

- modify getTreeStructureToRestore() so it knows the value of the hidden
  field is only a string, not a base64 encoded object tree, if the
  stateSavingMethod is server.

- modify writeState() to not encode the view if we're saving state in
  the server, just write out the id.

- remove unused replaceMarkers method.

M jsf-ri/src/com/sun/faces/taglib/jsf_core/ViewTag.java

- leverage new APIs and rely on impl to delegate to deprecated APIs for
  backwards compatability.

M jsf-ri/systest/build-tests.xml
M jsf-ri/systest/src/com/sun/faces/htmlunit/AbstractTestCase.java
M jsf-ri/systest/src/com/sun/faces/jsptest/JspIntegrationTestCase.java
M jsf-ri/test/com/sun/faces/FacesTestCaseService.java
M jsf-ri/test/com/sun/faces/lifecycle/TestApplyRequestValuesPhase.java
M jsf-ri/test/com/sun/faces/lifecycle/TestLifecycleImpl_initial.java
M jsf-ri/test/com/sun/faces/lifecycle/TestPhase.java
M jsf-ri/test/com/sun/faces/lifecycle/TestProcessValidationsPhase.java
M jsf-ri/test/com/sun/faces/lifecycle/TestRestoreViewPhase.java
M jsf-ri/web/test/RenderResponse_correct
M jsf-ri/web/test/TestLifecycleImpl_initial_correct
M jsf-ri/web/test/TestViewHandlerImpl_correct

- Oof, mondo changes here.
2005-03-17 01:56:55 +00:00
edburns%acm.org
b0b9d3608a This checkin starts updating the javadocs. Wow. Some of these docs
haven't been touched since 1998!

A dom/classes/org/mozilla/dom/package.html
A dom/classes/org/mozilla/dom/util/package.html
A util/classes/org/mozilla/util/package.html
A webclient/classes_spec/org/mozilla/webclient/overview.html
A webclient/classes_spec/org/mozilla/webclient/package.html
M dist/build.xml
M util/classes/org/mozilla/util/Debug.java
M util/classes/org/mozilla/util/Log.java
M util/classes/org/mozilla/util/Range.java
M util/classes/org/mozilla/util/Utilities.java
M webclient/classes_spec/org/mozilla/webclient/BrowserControl.java
M webclient/classes_spec/org/mozilla/webclient/BrowserControlFactory.java
M webclient/classes_spec/org/mozilla/webclient/ImplObject.java
M webclient/classes_spec/org/mozilla/webclient/Navigation2.java
M webclient/classes_spec/org/mozilla/webclient/WebclientFactory.java
M dom/classes/org/mozilla/dom/events/MouseEventImpl.java

- Changes to allow generation of javadocs from full tree.
2005-03-15 03:14:16 +00:00
edburns%acm.org
a9dad9e810 This checkin starts updating the javadocs. Wow. Some of these docs
haven't been touched since 1998!

A dom/classes/org/mozilla/dom/package.html
A dom/classes/org/mozilla/dom/util/package.html
A util/classes/org/mozilla/util/package.html
A webclient/classes_spec/org/mozilla/webclient/overview.html
A webclient/classes_spec/org/mozilla/webclient/package.html
M dist/build.xml
M util/classes/org/mozilla/util/Debug.java
M util/classes/org/mozilla/util/Log.java
M util/classes/org/mozilla/util/Range.java
M util/classes/org/mozilla/util/Utilities.java
M webclient/classes_spec/org/mozilla/webclient/BrowserControl.java
M webclient/classes_spec/org/mozilla/webclient/BrowserControlFactory.java
M webclient/classes_spec/org/mozilla/webclient/ImplObject.java
M webclient/classes_spec/org/mozilla/webclient/Navigation2.java
M webclient/classes_spec/org/mozilla/webclient/WebclientFactory.java

- Start refresh of javadocs
2005-03-15 02:49:16 +00:00
edburns%acm.org
f96502fadc *** empty log message *** 2005-03-14 00:37:55 +00:00