Babele Dunnit wrote:
And yes, I saw the two static functions, but I
was able to use directly only the Start one, because the Stop has some
external-linkage stuff (nsIFrame, nsIObjectFrame etc...)
Yeah, I just meant those as starting points.
It might be good to have a saner API for this (say on
nsIObjectLoadingContent). File a bug?
well, in fact is quite complex, not for the plugins itself - sure it
should be stated somewhere that those two calls are enough for the
plugin itself to stop properly - but the real mess is all the code one
cannot replicate because is external linkage. All nsIFrames etc...
Right, hence it might be a good idea to have an API on
nsIObjectLoadingContent or similar that lets you do this.
BTW: while digging, I found something I cannot understand: there is
the concept of "delayed stop", which you apply only ifdef WIN_XP and
with Real audio.
No, it's also used in nsObjectFrame::Destroy for all plugins.
See http://mxr.mozilla.org/firefox/source/layout/generic/nsObjectFrame.cpp#1904
... but then some funcs are called, BOOL delayedStop seems not to be
altered, and then I find
http://mxr.mozilla.org/firefox/source/layout/generic/nsObjectFrame.cpp#1773
is called... how this could even return TRUE? delayedStop can be true
only if the plugin is Real, and if so, it cannot be QuickTime or
Flip4Mac.. Or I am missing something?
Yes, the second caller of StopPluginInternal (the one in Destroy).
-Boris
_______________________________________________
dev-embedding mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-embedding