1109 Commits

Author SHA1 Message Date
sdagley%netscape.com
107bbe078e Fix #54778 - Make legacy plugins on Mac work from the "Plug-ins" folder. r=av,sr=sfraser,scc.
git-svn-id: svn://10.0.0.236/trunk@81135 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-13 18:59:05 +00:00
pavlov%netscape.com
ad452e359d fix for bug 45162 new plugins shouldn't use GdkSuperWin's, but instead should use XIDs. sr=blizzard r=valeski
git-svn-id: svn://10.0.0.236/trunk@81092 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-13 01:10:21 +00:00
pollmann%netscape.com
e2a0a7c26c Fix Un*x bustage (typo in last patch, oops, sorry!)
git-svn-id: svn://10.0.0.236/trunk@81000 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-12 04:50:35 +00:00
pollmann%netscape.com
06b24f2bf7 Fix AIX build bustage - these constants are already defined in system header files
git-svn-id: svn://10.0.0.236/trunk@80997 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-12 04:07:45 +00:00
pollmann%netscape.com
5a7a80de57 Bug 48483: Fix HPUX bustage for Unix default plugin, fix thanks to wtc (added #ifdef guards to previous checkin per review by wtc, will not affect build)
git-svn-id: svn://10.0.0.236/trunk@80988 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-12 01:11:38 +00:00
pollmann%netscape.com
56b3f3a359 Bug 48483: Fix HPUX bustage for Unix default plugin fix thanks to wtc, r=jdunn,pollmann sr=mscott
git-svn-id: svn://10.0.0.236/trunk@80984 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-12 00:20:34 +00:00
edburns%acm.org
f684ef784c bug=54291
a=brendan
r=edburns, scc

This checkin does three things:

1. Makes it so on Unix the user can set the env var NS600_PLUGIN_PATH to point
to a directory that will be used as the location for searching for plugins.

2. Removes nsPluginsDirUNIX.cpp and replaces it with nsPluginsDirUnix.cpp

3. Correctly formats nsPluginsDirUnix per brendan's recommendation.


git-svn-id: svn://10.0.0.236/trunk@80956 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-11 22:33:20 +00:00
pollmann%netscape.com
b6aa1f6695 Bug 48483: Unix default plugin, fix for OpenVMS bustage r=av@netscape.com a=brendan@mozilla.org
git-svn-id: svn://10.0.0.236/trunk@80848 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-10 21:01:14 +00:00
edburns%acm.org
564f839ce8 bug=
a=brendan
r=av

This bug fix makes it so nsPluginHostImp::FindProxyForURL()
honors ProxyAutoConfig settings.

It also cleans things up per Brendan.


git-svn-id: svn://10.0.0.236/trunk@80439 18797224-902f-48f8-a5cc-f745e15eee43
2000-10-05 07:58:51 +00:00
av%netscape.com
4181c8bc8f Fixing 53451. Added retun failure when plugin retuns zero on NPP_WriteReady call, r=waterson
git-svn-id: svn://10.0.0.236/trunk@80115 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-29 00:46:18 +00:00
cls%seawood.org
a6ca675404 Some platforms include a version number for their dll suffixes. Use SHARED_LIBRARY instead of hardcoding a library name & suffix.
git-svn-id: svn://10.0.0.236/trunk@80059 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-28 06:57:00 +00:00
cls%seawood.org
8ace0cd4de Only build nullplugin when MOZ_ENABLE_GTK is set because nullplugin requires gtk and is breaking our non-gtk ports.
git-svn-id: svn://10.0.0.236/trunk@80058 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-28 06:48:02 +00:00
akhil.arora%sun.com
684bee80a4 implementation of the null plugin for unix
checking in on behalf of stephen mak <smak@sun.com>
b=48483 r=pollmann@netscape.com a=brendan@mozilla.org


git-svn-id: svn://10.0.0.236/trunk@80035 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-27 23:44:02 +00:00
av%netscape.com
c6e1678052 Fix for 44692, allowing default plugin guess about mime type by extension, a=mscott
git-svn-id: svn://10.0.0.236/trunk@79858 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-22 06:31:29 +00:00
av%netscape.com
43504d4fc0 Fix for 53399, check for null-pointer to avoid crash, by sean, r=av, a=waterson
git-svn-id: svn://10.0.0.236/trunk@79856 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-22 06:17:28 +00:00
av%netscape.com
c82a187603 This should fix the redness
git-svn-id: svn://10.0.0.236/trunk@79800 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-22 01:48:05 +00:00
av%netscape.com
8c26ff9682 Fixing #36089. Allowing Mac browse through both 'Plugins' and 'Plug-ins' folders, a=waterson
git-svn-id: svn://10.0.0.236/trunk@79797 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-22 00:58:46 +00:00
edburns%acm.org
e9408a09a9 a=beard, waterson
r=av
bug=52963

Tested on win32.  Tested to build on win32 and solaris.

This patch fixes bug 52963, bug 52965, and bug 52973.

This patch contributed by Stanley Ho <stanley.ho@eng.sun.com>

52963: nsIPluginStreamListener::OnStartBinding isn't always called:

Added new ivar, mStartBinding:

   * Set to PR_TRUE after nsIPluginInstancePeer::OnStartBinding() has
   * been called.  Checked in ::OnStopRequest so we can call the
   * plugin's OnStartBinding if, for some reason, it has not already
   * been called.

52965: Length isn't always set:

  rv = channel->GetContentLength(&length);

  // it's possible for the server to not send a Content-Length.  We should
  // still work in this case.
  if (NS_FAILED(rv)) {
    mPluginStreamInfo->SetLength(-1);
  }
  else {
    mPluginStreamInfo->SetLength(length);
  }

52973: nsIHTTPHeaderListener called before nsIPluginStreamListener::NewStream

This fix required rolling back Andrei Volkov's change to the signature
of nsPluginStreamListenerPeer::SetUpStreamListener().  In order to call
the plugin with the headers before the NewStream is sent, we need the
nsIChannel.

files in this fix:

M modules/plugin/nglsrc/nsPluginHostImpl.cpp


git-svn-id: svn://10.0.0.236/trunk@79618 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-20 09:27:54 +00:00
waterson%netscape.com
ac48abcd87 Bug 44352. Remove nsIMemoryPressureObserver in favor of nsIObserverService et al., and convert existing nsIMemoryPressureObserver clients. Add memory flusher thread. Add debug UI to force memory flush. r=alecf,sfraser,warren a=warren
git-svn-id: svn://10.0.0.236/trunk@79603 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-20 05:44:19 +00:00
av%netscape.com
399c390ec8 Part of 33105 fix, added option not to show Bad Plugin warning again, r=serge
git-svn-id: svn://10.0.0.236/trunk@79236 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 23:58:17 +00:00
edburns%acm.org
f59c24e492 r=vidur, av
a=brendan
bug=49525

This simple fix just adds parameters to an existing method in an XPCOM
safe way, by defining a new method at the end of the interface
definition with the additional parameters.

Original method:

    NS_IMETHOD
    GetURL(nsISupports* pluginInst,
           const char* url,
           const char* target = NULL,
           nsIPluginStreamListener* streamListener = NULL,
           const char* altHost = NULL,
           const char* referrer = NULL,
           PRBool forceJSEnabled = PR_FALSE) = 0;

New method:

    NS_IMETHOD
    GetURLWithHeaders(nsISupports* pluginInst,
                      const char* url,
                      const char* target = NULL,
                      nsIPluginStreamListener* streamListener = NULL,
                      const char* altHost = NULL,
                      const char* referrer = NULL,
                      PRBool forceJSEnabled = PR_FALSE,
                      PRUint32 getHeadersLength = 0,
                      const char* getHeaders = NULL) = 0;

I have modified nsPluginHostImpl.h to include this new method, and
modified nsPluginHostImpl.cpp so that its GetURL calls GetURLWithHeaders
with null values for the last two params.

M modules/plugin/public/nsIPluginManager.h
M modules/plugin/nglsrc/nsPluginHostImpl.cpp
M modules/plugin/nglsrc/nsPluginHostImpl.h


git-svn-id: svn://10.0.0.236/trunk@79207 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 22:57:56 +00:00
jdunn%netscape.com
8a94c38ead adding newline at end of file (required by hp)
git-svn-id: svn://10.0.0.236/trunk@79114 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 10:50:50 +00:00
edburns%acm.org
fc704a0841 a=brendan, ekrock
r=av, sean@beatnik.com
bug=50547

This change allows the plugin to have a greater degree of control over
the plugin lifecycle.  This change makes it possible for the plugin to
tell mozilla:

1. Whether or not they want to allow the browser to cache their
instance.  Default is yes, do allow the browser to cache their instance.

2. If they answer no to 1, that is, no the plugin does not want the
browser to cache their instance, do you want the shutdown calls to be:

a.

          inst->SetWindow(nsnull);
          inst->Stop();
          inst->Destroy();


b.

          inst->Stop();
          inst->Destroy();
          inst->SetWindow(nsnull);

a. is the default.

Please visit the bug to see the patches:

http://bugzilla.mozilla.org/show_bug.cgi?id=50547

Detail:

This fix was requested by Stanley Ho of the Sun Java Plugin Team.  A
conference call between Eric Krock, Andrei Volkov, Sun, Adobe and other
plugin vendors was used to agree on the above solution.

M modules/plugin/public/nsplugindefs.h
M modules/plugin/nglsrc/nsPluginHostImpl.cpp
M modules/plugin/nglsrc/nsPluginViewer.cpp
M layout/html/base/src/nsObjectFrame.cpp


git-svn-id: svn://10.0.0.236/trunk@79099 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 08:22:31 +00:00
av%netscape.com
c415ffe1a1 Fixing Mac bustage
git-svn-id: svn://10.0.0.236/trunk@79093 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 07:16:07 +00:00
av%netscape.com
6cd48645de Part of 33105 fix, replaced direct calls to plugins by safe macro, r=serge
git-svn-id: svn://10.0.0.236/trunk@79086 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 06:13:56 +00:00
av%netscape.com
85da22b6b9 Part of 33105 fix, added a method to hsIPluginHost to handle bad plugins, r=serge
git-svn-id: svn://10.0.0.236/trunk@79085 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 06:03:37 +00:00
av%netscape.com
ebb6af908a Part of 33105 fix, first time in, macro for safe plugin calls implemented, r=serge
git-svn-id: svn://10.0.0.236/trunk@79083 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-14 05:56:28 +00:00
rayw%netscape.com
d9228441a4 Bug 37275, Changing value of all progids, and changing everywhere a progid
is mentioned to mention a contractid, including in identifiers.

r=warren


git-svn-id: svn://10.0.0.236/trunk@79036 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 23:57:52 +00:00
edburns%acm.org
a7679fd4d8 a=brendan,av
r=av
bug=50811

This bug fix was suggested by Stanley Ho <stanley.ho@eng.sun.com>.

Stanley proposed we overload the meaning of the nsIPluginStreamListener
argument to nsIPluginManager::{GetURL,PostURL}() so that it also may
implement an interface for reading headers.  Thus, the browser could QI
the plugin's nsIPluginStreamListener instance to this headers reading
interface and send the plugin the headers from the response.

I have implemented Stanley's above proposal.  I have defined a new
interface, nsIHTTPHeaderListener.idl with one method:

  /**

   * Called for each HTTP Response header.

   * NOTE: You must copy the values of the params.

   */

  void newResponseHeader(in string headerName, in string headerValue);

To affect this fix, I have added a new private method

nsPluginStreamListenerPeer::
ReadHeadersFromChannelAndPostToListener(nsIHTTPChannel *httpChannel,
                                        nsIHTTPHeaderListener *listener)

Then, modified nsPluginStreamListenerPeer::OnDataAvailable() to call
this method BEFORE reading the content data.  However, this fix makes
two important assumptions I would like to check out:

   * Assumption

   * By the time nsPluginStreamListenerPeer::OnDataAvailable() gets
   * called, all the headers have been read.

       * Assumption:

       * The return value from nsIHTTPHeader->{GetFieldName,GetValue}()
       * must be freed.

The following files are included in this fix:

A modules/plugin/public/nsIHTTPHeaderListener.idl
A modules/plugin/public/makefile.win
A modules/plugin/public/Makefile.in
M modules/plugin/nglsrc/nsPluginHostImpl.cpp


git-svn-id: svn://10.0.0.236/trunk@78989 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 07:09:38 +00:00
edburns%acm.org
f12f878020 a=brendan,av
r=av
bug=50811

Should include "nsISupports.idl" not "nsPluginDefs.idl".


git-svn-id: svn://10.0.0.236/trunk@78987 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 07:07:18 +00:00
scc%mozilla.org
c0bfda9230 bug #50811, a=brendan, on behalf of edburns@sun.com
git-svn-id: svn://10.0.0.236/trunk@78983 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 06:45:33 +00:00
edburns%acm.org
9d9e08fdbe a=brendan,av
r=av
bug=50811

This bug fix was suggested by Stanley Ho <stanley.ho@eng.sun.com>.

Stanley proposed we overload the meaning of the nsIPluginStreamListener
argument to nsIPluginManager::{GetURL,PostURL}() so that it also may
implement an interface for reading headers.  Thus, the browser could QI
the plugin's nsIPluginStreamListener instance to this headers reading
interface and send the plugin the headers from the response.

I have implemented Stanley's above proposal.  I have defined a new
interface, nsIHTTPHeaderListener.idl with one method:

  /**

   * Called for each HTTP Response header.

   * NOTE: You must copy the values of the params.

   */

  void newResponseHeader(in string headerName, in string headerValue);

To affect this fix, I have added a new private method

nsPluginStreamListenerPeer::
ReadHeadersFromChannelAndPostToListener(nsIHTTPChannel *httpChannel,
                                        nsIHTTPHeaderListener *listener)

Then, modified nsPluginStreamListenerPeer::OnDataAvailable() to call
this method BEFORE reading the content data.  However, this fix makes
two important assumptions I would like to check out:

   * Assumption

   * By the time nsPluginStreamListenerPeer::OnDataAvailable() gets
   * called, all the headers have been read.

       * Assumption:

       * The return value from nsIHTTPHeader->{GetFieldName,GetValue}()
       * must be freed.

The following files are included in this fix:

A modules/plugin/public/nsIHTTPHeaderListener.idl
A modules/plugin/public/makefile.win
A modules/plugin/public/Makefile.in
M modules/plugin/nglsrc/nsPluginHostImpl.cpp


git-svn-id: svn://10.0.0.236/trunk@78980 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 06:40:57 +00:00
scc%mozilla.org
e5e006543d if you want a pointer to the characters, you're going to have to |.get()| it
git-svn-id: svn://10.0.0.236/trunk@78957 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-13 02:48:08 +00:00
edburns%acm.org
7f44ca7382 r=av
a=waterson
bug=51919

This fix makes it so nsIPluginManager::PostURL() works correctly in the
case of a null target and non-null streamListener.

The fix was to add parameters to NewPluginURLStream() for headers and
post data:

   NS_IMETHOD
-  NewPluginURLStream(const nsString& aURL, nsIPluginInstance *aInstance, nsIPluginStreamListener *aListener);
+  NewPluginURLStream(const nsString& aURL, nsIPluginInstance *aInstance,
+                     nsIPluginStreamListener *aListener,
+                     void *aPostData = nsnull, PRUint32 aPostDataLen = 0,
+                     const char *aHeadersData = nsnull,
+                     PRUint32 aHeadersDataLen = 0);

And to add a new method to correctly send the headers to the channel:

+  NS_IMETHOD
+  AddHeadersToChannel(const char *aHeadersData, PRUint32 aHeadersDataLen,
+                      nsIChannel *aGenericChannel);

Files in this fix:

M modules/plugin/nglsrc/nsPluginHostImpl.cpp
M modules/plugin/nglsrc/nsPluginHostImpl.h


git-svn-id: svn://10.0.0.236/trunk@78554 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-08 23:58:36 +00:00
morse%netscape.com
feb9add6f2 bug 51338, cookie nag box not modal, r=mstoltz
git-svn-id: svn://10.0.0.236/trunk@78354 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-07 07:00:36 +00:00
edburns%acm.org
f4ed6ebe07 This was tested on win32, and is known to build on win32 and solaris.
Right now, nsIPluginManager::PostURL() has parameters for
postHeadersLength and postHeaders.  However, nothing is being done with
these parameters.  This bug fix utilizes these params for their intended
purpose: to allow the plugin the ability to add HTTP headers to a POST
data stream.

Important assumptions made by this fix:

* postHeadersLength is the correct length for postHeaders.

* postHeaders is a buffer of headers in the form

  "HeaderName: HeaderValue\r\n"

  each header, including the last, MUST be followed by "\r\n".

To affect this fix I had to modify the following files:

M docshell/base/nsDocShell.cpp
M docshell/base/nsDocShell.h
M docshell/base/nsWebShell.cpp
M modules/plugin/nglsrc/nsPluginViewer.cpp
M docshell/base/nsWebShell.h
M layout/html/base/src/nsObjectFrame.cpp
M modules/plugin/nglsrc/nsIPluginInstanceOwner.h
M modules/plugin/nglsrc/nsPluginHostImpl.cpp
M modules/plugin/nglsrc/nsPluginInstancePeer.cpp
M webshell/public/nsILinkHandler.h

Basically, it involved clearing a path so the headers arguments can make
it down to nsIPluginInstanceOwner::GetURL()'s implementation in
nsObjectFrame.cpp, where an nsIInputStream is made of the headers.


git-svn-id: svn://10.0.0.236/trunk@78153 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-05 19:03:56 +00:00
dbaron%fas.harvard.edu
54d7d67487 Fixing scc's typo to fix harpoon orange, etc. r=scc
git-svn-id: svn://10.0.0.236/trunk@78094 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-04 01:19:36 +00:00
scc%mozilla.org
987c59caba we think the fix is in to support the original form, so back to the original form we go
git-svn-id: svn://10.0.0.236/trunk@78092 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-04 00:50:50 +00:00
scc%mozilla.org
8d79857f8d and here we are, back to square one.
git-svn-id: svn://10.0.0.236/trunk@78070 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-03 08:25:02 +00:00
scc%mozilla.org
6916463750 I'll try anything, now
git-svn-id: svn://10.0.0.236/trunk@78057 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-03 03:25:42 +00:00
scc%mozilla.org
98679d961e OK, nothing has worked yet. It's time to roll out the big guns: |NS_READABLE_CAST|
git-svn-id: svn://10.0.0.236/trunk@78055 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-03 02:50:18 +00:00
scc%mozilla.org
7a8da7c16b hack to fix pravda and speedracer bustage
git-svn-id: svn://10.0.0.236/trunk@78050 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-03 01:38:38 +00:00
scc%mozilla.org
a68b29cf43 hack to fix pravda bustage
git-svn-id: svn://10.0.0.236/trunk@78046 18797224-902f-48f8-a5cc-f745e15eee43
2000-09-03 00:25:42 +00:00
locka%iol.ie
09805179ae API changes for embedding. b=46847, r=dougt, a=valeski
git-svn-id: svn://10.0.0.236/trunk@77213 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-25 18:39:46 +00:00
edburns%acm.org
55b6e21cf5 bug=36212
a=waterson,av
r=av,waterson

Here is what I believe to be the correct fix.
This post correspondes to the fix,
second iteration attachments.
M modules/plugin/nglsrc/nsIPluginInstanceOwner.h
M modules/plugin/nglsrc/nsPluginHostImpl.cpp
M modules/plugin/nglsrc/nsPluginInstancePeer.cpp
M modules/plugin/nglsrc/nsPluginViewer.cpp
M layout/html/base/src/nsObjectFrame.cpp

This checkin modifies nsIPluginInstanceOwner::GetURL
to have a length parameter for the post data.


git-svn-id: svn://10.0.0.236/trunk@77101 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-24 19:49:08 +00:00
saari%netscape.com
6a6cd5a218 fix for 46938, make sure full content area plugins can still get key events once you've clicked on them
git-svn-id: svn://10.0.0.236/trunk@77061 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-24 05:04:06 +00:00
jst%netscape.com
7e0575bfee DOM string changes. All nsString& in DOM interfaces (and interfaces needed by DOM implementations) have been changed to nsAReadableString& and nsAWritableString&. String implementation additions (sanctioned by scc) to support DOM needs. Bug 49091. r=vidur,jst,scc
git-svn-id: svn://10.0.0.236/trunk@76967 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-23 17:27:06 +00:00
mccabe%netscape.com
4f32b85e2b Further tweak to 39933.
Add a comment mentioning the possible need to implement nsISecurityCheckedComponent.


git-svn-id: svn://10.0.0.236/trunk@76918 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-23 00:24:07 +00:00
mccabe%netscape.com
30a169a26c Fix to 39933.
Make the sample plugin implement nsIScriptablePlugin, and update sample .html file with an (unused!) JavaScript evaluator for poking at the plugin.

r=jst
a=ekrock


git-svn-id: svn://10.0.0.236/trunk@76917 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-23 00:20:24 +00:00
warren%netscape.com
e892283b73 Removed reference to nsIBaseStream
git-svn-id: svn://10.0.0.236/trunk@76884 18797224-902f-48f8-a5cc-f745e15eee43
2000-08-22 09:50:45 +00:00