Closed Bug 192440 Opened 18 years ago Closed 8 years ago
Some Flash ads do not have controls; can we make Flash "repeat once" like animated GIFs?
25.23 KB, image/gif
113.42 KB, image/png
After clicking mouse wheel to autoscroll (see the circle with two arrows icon), Flash ads turn into whitespace
83.14 KB, image/png
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3a) Gecko/20021212 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3a) Gecko/20021212 There's a Flash ad at LinuxToday.com which doesn't have controls; right clicking just gives the "About Macromedia Flash Player 6" option (and a greyed-out "Settings"). In Preferences, Privacy and Security, Images, there's a radio choice: "Animated images should loop: o As many times as the image specifies o Once o Never" Would it be possible to do something similar for Flash animations which have their controls disabled? Movement in one's peripheral vision is distracting and inhibits the reading process. Reproducible: Always Steps to Reproduce: 1. Go to LinuxToday.com 2. View the Flash ad (on the right, below the "Login" and "Create" buttons and above the BRU ad) 3. Try to get it to stop moving
-> wontfix there is no way unless macromedia adds this. we can disable loading flash but that is another bug (already filed).
Status: UNCONFIRMED → RESOLVED
Closed: 18 years ago
Resolution: --- → WONTFIX
hm...I've been thinking about this and I think it's remotly possible by scripting Flash. Some privileged JS could enummerate over all the Flash objects in all the windows and call something like StopPlay() and GotoFrame(). Here are the methods Flash 6 exposes: C:\nstrunk\Plugins>xpt_dump flashplayer.xpt Header: Major version: 1 Minor version: 2 Number of interfaces: 3 Annotations: Annotation #0 is empty. Interface Directory: - ::nsISupports (00000000-0000-0000-c000-000000000046): [Unresolved] - ::FlashIObject (42b1d5a4-6c2b-11d6-8063-0005029bc257): Parent: ::nsISupports Flags: Scriptable: TRUE Function: FALSE Methods: uint32 evaluate(in string, out retval FlashIObject); Constants: No Constants - ::FlashIScriptablePlugin (d458fe9c-518c-11d6-84cb-0005029bc257): Parent: ::nsISupports Flags: Scriptable: TRUE Function: FALSE Methods: uint32 IsPlaying(out retval boolean); uint32 Play(); uint32 StopPlay(); uint32 TotalFrames(out retval int32); uint32 CurrentFrame(out retval int32); uint32 GotoFrame(in int32); uint32 Rewind(); uint32 Back(); uint32 Forward(); uint32 Pan(in int32, in int32, in int32); uint32 PercentLoaded(out retval int32); uint32 FrameLoaded(in int32, out retval boolean); uint32 FlashVersion(out retval int32); uint32 Zoom(in int32); uint32 SetZoomRect(in int32, in int32, in int32, in int32); uint32 LoadMovie(in int32, in wstring); uint32 TGotoFrame(in wstring, in int32); uint32 TGotoLabel(in wstring, in wstring); uint32 TCurrentFrame(in wstring, out retval int32); uint32 TCurrentLabel(in wstring, out retval wstring); uint32 TPlay(in wstring); uint32 TStopPlay(in wstring); uint32 SetVariable(in wstring, in wstring); uint32 GetVariable(in wstring, out retval wstring); uint32 TSetProperty(in wstring, in int32, in wstring); uint32 TGetProperty(in wstring, in int32, out retval wstring); uint32 TGetPropertyAsNumber(in wstring, in int32, out retval double); uint32 TCallLabel(in wstring, in wstring); uint32 TCallFrame(in wstring, in int32); uint32 SetWindow(in FlashIObject, in int32); Constants: No Constants
I'm reopening this based on comment #2 From Peter Lubczynski -- it appears to be possible. I'd imagine one of the following could be used to uncheck the "Loop" option, for the "run once" functionality: uint32 SetVariable(in wstring, in wstring); uint32 TSetProperty(in wstring, in int32, in wstring); uint32 SetWindow(in FlashIObject, in int32);
Status: RESOLVED → UNCONFIRMED
Resolution: WONTFIX → ---
Comment #4 and the attachment ("Life Choices"? -- and comment #1 did not reference any gif) appears to be spam. I've found a workaround for this which is very acceptable: the autoscroll plugin (see http://autoscroll.mozdev.org/ ) disables Flash animations when you click the mouse wheel. So on a page with a ton of ads (LinuxToday.com), just click the middle mouse wheel and then move down slightly to start the page scrolling slowly. The other benefit to this is I can generally keep up with the page at the slowest scrolling speed, whereas using the mouse wheel causes the screen to jump and I have to find my place again. So my request: how about a button (or a right-click menu option), "Disable Flash on this page" -- which does exactly what the autoscroll plugin does when you click the mouse wheel? (I just grabbed the autoscroll code via CVS and grepped for "Flash" but didn't find anything so I'm not sure how it actually disables the Flash animations -- but it does. I'm currently running 1.3 -- Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3) Gecko/20030312.)
I just created two attachments, one showing a page with Flash ads and the other showing the same page after clicking the mouse wheel to start autoscroll. This demonstrates the workaround which autoscroll allows. (Minor pet peeve: the filename ends with ".PNG". Why can't Bugzilla auto-select the "Content Type"?)
--->future Hm...perhaps one way to see if a certain elemenet is hosting Flash is to QI for the Flash scripting interface.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Priority: -- → P5
Target Milestone: --- → Future
Would it be possible to not pass on the right-click to the plugin, so that the standard Mozilla context-menu appears, which could then contain an additional option called something along the lines of "Pass on right-click" or, for plugins which we know use the right-click to activate a context menu, perhaps we could call it "Plugin Context menu". Then the Mozilla context menu could also include an option to disable or pause the plugin or do various things to filter the plugin type / source. (See Bugs 94035, Bug 169330, and the many they reference for ideas on what to do with flash & other plugins)
Status: NEW → RESOLVED
Closed: 18 years ago → 8 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.