Closed
Bug 249855
Opened 20 years ago
Closed 20 years ago
QuickTime/Flash plugin not scriptable after Firefox re-installation (missing xpt files)
Categories
(Firefox :: General, defect, P2)
Tracking
()
RESOLVED
FIXED
People
(Reporter: pec, Assigned: jst)
References
()
Details
(Keywords: fixed-aviary1.0)
Attachments
(1 file)
4.20 KB,
patch
|
bugs
:
review+
bugs
:
approval-aviary+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7) Gecko/20040626 Firefox/0.9.1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7) Gecko/20040626 Firefox/0.9.1
I have been trying to control an embeded quicktime using javascript to start,
stop and fetch the frame number of a quicktime movie. Which ever method I try to
use to call the quicktime functions I get an error that the function does not
exist. I have tried the same source code under IE and that appears to work with
at least some of the ways of referencing the movie clip.
Example code taken from...
http://developer.apple.com/documentation/quicktime/REF/QT41_HTML/QT41WhatsNew-80.html
Reproducible: Always
Steps to Reproduce:
1. goto http://www.kenvillines.com/archives/000008.html
2. Click on any of the buttons to start, stop rwd the clip.
3.
Actual Results:
The clip fails to play and I get errors in the javascript console
Expected Results:
play clip
This does not appear to be a platform specific problem as it fails under v9.0 on
Redhat 9.0 too.
The article http://www.mozillazine.org/articles/article2351.html implies that
this has worked for some time.
Comment 1•20 years ago
|
||
Can confirm this bug on Windows XP using Firefox 0.9.1 and Mozilla 1.7.1. The
error does not occure using Mozilla 1.6 and Netscape 7.1. on the same machine.
PlugIns are scriptable there as expected.
The problem also effects RealOne Player, so it's probably a general scripting
issue. Hopefully it's not a side effect of the new plugin API mozilla announced
a few weeks ago!?
Assignee | ||
Comment 2•20 years ago
|
||
This has nothing to do with the recent plugin API changes. In fact, it's not a
mozilla code bug, it's a plugin installation/discovery bug. For QuickTime and
Flash (not sure about Real) to be scriptable, mozilla needs to know about the
scriptable XPCOM interface that the plugin exposes. This is done by the plugin
installers placing a .xpt file (nsIQTScriptablePlugin.xpt for QuickTime, can be
found in the QuickTime/Plugins directory after installing the QuickTime player,
not sure what the exact filename is for Flash).
To fix this, the right .xpt files need to be put in the components directory in
the Firefox installation directory, and xpt re-registration needs to be triggerd
(this can be done by removing the xpti.dat file in the Firefox profile, move the
file elsewhere if removing it scares you :-).
That'll make the QuickTime player scriptable again, if it doesn't, let us know...
And while this isn't strictly speaking a Mozilla bug, it is something we might
be able to help with during installation if the QuickTime player is already
installed... Leaving bug open to track that.
Assignee: firefox → jst
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Javascript functions to control an emdeded quicktime fails with "is not a function" errors → QuickTime/Flash plugin not scriptable after Firefox re-installation (missing xpt files)
Assignee | ||
Comment 3•20 years ago
|
||
Oh, forgot to mention that xpt file registration only happens at startup, so
quit Firefox, remove the file xpti.dat, and start Firefox again and it should
pick up any new xpt files.
Reporter | ||
Comment 4•20 years ago
|
||
I tried closing down Firefox, deleting the xpti.dat file and restarting but that
didn't seem to make any difference, still got the same errors. So deleted the
file again and reinstalled Quicktime. This time it all worked and with all the
various ways of referncing the plugin. Marvellous, thank you.
Comment 5•20 years ago
|
||
(In reply to comment #2)
nppl3260.xpt is the file required by real player one. if copied mozilla 1.6.1
and firefox 0.9.2 can script the plugin. nsIQTScriptablePlugin.xpt also worked
on quicktime for me.
i agree this isn't a real mozilla bug because it is a plugin installtion issue,
but both plugins are offering the .xpt files in their installation directories
and mozilla could look for them when installing. also mozilla could try to get
them from other mozilla versions if installed. the need to manually copy .xpt
files every time when trying a new version while keeping the old would really
be annoying.
maybe it's possible to extend the error message in the javascript console with
a hint that no appropriate .xpt file was found to make this issue easier to
debug. an information could also be added to the about:plugins page and
plugindoc.mozdev.org.
Assignee | ||
Comment 6•20 years ago
|
||
(In reply to comment #5)
> i agree this isn't a real mozilla bug because it is a plugin installtion issue,
> but both plugins are offering the .xpt files in their installation directories
> and mozilla could look for them when installing. also mozilla could try to get
> them from other mozilla versions if installed. the need to manually copy .xpt
> files every time when trying a new version while keeping the old would really
> be annoying.
I fully agree, we should add the smarts to our installers to deal with this.
Flags: blocking-aviary1.0RC1?
Updated•20 years ago
|
Flags: blocking-aviary1.0RC1? → blocking-aviary1.0RC1+
Comment 7•20 years ago
|
||
as part of bug #237727, the installer now deletes xpti.dat
Comment 8•20 years ago
|
||
jst:
good news, Real (for both nsJSRealPlayerPlugin.xpt and nppl3260.xpt) and
ViewPoint (for npViewpoint.xpt) seem to be following the convention described here:
http://www.mozilla.org/projects/plugins/first-install-problem.html
I'm investigating to see if I can make the installer look in the registry and
copy the the .xpt files to the components directory.
bad news, quicktime doesn't seem to be following that convention.
Assignee | ||
Comment 9•20 years ago
|
||
If done right, it should be safe to copy the latest version of the XPT files
from a given plugin vendor into the mozilla components directory since plugin
vendors should rev the IID of their scriptable interfaces if they change them,
then it doesn't matter if the wrong xpt file ends up being found by mozilla. I
don't know that plugin vendors do that, but if we think that's a safe assumption
(I think it is, and maybe we could test with a few versions to see if we could
find such a case), we could just do that and see how far that gets us.
We might even have contacts at Apple to find out about what's safe to do with
the Quicktime plugin, and we'll need to find out what the deal is with Flash too.
Comment 10•20 years ago
|
||
We'll do this for 1.0, not PR. jst is focused now on autodiscovery. Johnny, if
you get to this sooner, please feel free to re-plus for PR.
Flags: blocking-aviary1.0PR-
Flags: blocking-aviary1.0PR+
Flags: blocking-aviary1.0+
Priority: -- → P2
Comment 11•20 years ago
|
||
It seems this bug affects Mozilla too.
Not Firefox-only issue.
Assignee | ||
Comment 12•20 years ago
|
||
Assignee | ||
Updated•20 years ago
|
Attachment #162155 -
Flags: review?(bugs)
Comment 13•20 years ago
|
||
Comment on attachment 162155 [details] [diff] [review]
Make the installer copy flash/QuickTime xpt files to the right place.
r+a=ben@mozilla.org
Attachment #162155 -
Flags: review?(bugs)
Attachment #162155 -
Flags: review+
Attachment #162155 -
Flags: approval-aviary+
Assignee | ||
Comment 14•20 years ago
|
||
Fixed on trunk and aviary branch.
Comment 15•20 years ago
|
||
flash plugin is not scriptable:
mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.7.3) gecko/20041026
firefox/1.0rc1
Assignee | ||
Comment 16•20 years ago
|
||
(In reply to comment #15)
> flash plugin is not scriptable:
> mozilla/5.0 (windows; u; windows nt 5.1; en-us; rv:1.7.3) gecko/20041026
> firefox/1.0rc1
Can you tell me where the flash plugin is installed on your system (set
"plugin.expose_full_path" to true in about:config and load about:plugins)? And
you installed Firefox using the installer, right?
Comment 17•20 years ago
|
||
Shockwave Flash:
C:\Program Files\Netscape\Communicator\Program\Plugins\NPSWF32.dll, Shockwave
Flash 7.0 r19
flashplayer.xpt:
C:\Program Files\Netscape\Netscape7\Plugins\flashplayer.xpt
C:\Program Files\Netscape\Netscape71\plugins\flashplayer.xpt
C:\Program Files\Netscape\Netscape72\plugins\flashplayer.xpt
All of the Netscape versions (7.0, 7.1, 7.2) are scriptable, but Mozilla 1.8a4 &
Firefox aren't.
Yes, I uninstalled the old Firefox (full directory was deleted), and reinstalled
a new one.
Assignee | ||
Comment 18•20 years ago
|
||
Ok, so firefox is picking up the flash player from the Netscape Communicator
directory, and but since there's no .xpt file in that directory, we fail to copy
it over. I'm confused as to why the xpt file isn't there, in my tests I've seen
the xpt file always end up in the Netscape Communicator directory too. I doubt
we'll get to doing anything about this any more before 1.0, the fix is obviously
for you to install the Flash player once you've installed 1.0 and it should work
for you. Not ideal, of course, but it's too late to change much about this
now... :-(
You need to log in
before you can comment on or make changes to this bug.
Description
•