I’m sitting in Caribou Coffee in Ann Arbor Michigan looking out at beautiful ice covered trees glistening in the sunlight. It’s Jan 17th 2007 and this day is going down in history! Today is the day Flash Player 9 was officially released for Linux! This is HUGE! The web allows anyone with a PC to engage with information and others. Flash has always pushed the limits of how that engagement happens, most recently with video. Even though many Desktop Linux users prefer free software, Adobe has still committed to making Flash work on Linux. I think this is noble. Do you see MS or Apple doing this with their platforms? By having Flash 9 for Linux, Desktop Linux is made all that much better. I have been using Linux as a desktop since ‘96 and without Flash I would be missing out on some pretty amazing stuff. Some will say “But Flash isn’t Open Source”. You are right. But if you don’t want to run proprietary software, rather than complain, go help Gnash. Ok, now that I’ve espoused my religious views, lets move on to the cool stuff!
First the demo: Wobbly Windows on the Web
That’s using Flash Player 9 and was built with the free Flex SDK. The wobble isn’t as refined as Compiz’s/Beryl’s, but that can be fixed once I (or you) figure out the math for doing that. Let’s walk through how you can compile that application.
First get the code from SourceForge. It’s in the wobbly module of the flexapps repository.
You need to get the free Flex SDK. Also if you don’t have it, you will need the Sun JDK 1.4 or better.
Set the FLEX_SDK to where you extracted the Flex SDK to.
In the directory where you checked out the wobbly code, run build.sh
Load the build/wobbly.html file in your browser!
This still needs some work, and since it’s Open Source, I’d love your help! Let me know what you think.


13 Comments
I get an error:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at WobblyPanel/::updateWobble()
at flash.utils::Timer/flash.utils:Timer::_timerDispatch()
at flash.utils::Timer/flash.utils:Timer::tick()
Hi Phillip,
I can’t seem to recreate that error. Do you get it every time? If so, make sure you have the latest version of Flash 9. If not, what did you do to get the error? Thanks!
-James
Would you be able to tell me what Linux programs you used to make this screencast?
http://www.jamesward.org/wordpress/2006/10/19/flash-flex-free-for-all-even-linux/
I am interested in doing something similar.
Thanks, S.G.
version 9.0.29 … didn’t happen the second or third time, but did happen more than once. Seems that right after I click it appears.
Hmmm… Sorry Phillip. I’m not sure what the problem is. I’ll keep trying to reproduce it.
I used xvidcap. You can see the parameters I used at the beginning of the screencast. Let me know if you have any questions/problems about xvidcap.
xvidcap is neat, how do you go about converting it to a flash file, are there Linux tools for this or will I need the full Windows version of Flash? Thanks again for your help. S.G.
I think I used ffmpeg. But I can’t remember the right incantation. Then I found a free flv streaming video player to use on my site. Hope that helps.
Thanks for pointing me in the right direction James, conversion with ffmpeg works great, now i just have to find a web player for the file. S.G.
I think I ended up using this one:
http://www.peldi.com/fmswiki/index.php?title=FLVPlayer
I get the same error as Phillip when viewing on Firefox with Vista Enterprise.
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at WobblyPanel/::updateWobble()
at flash.utils::Timer/flash.utils:Timer::_timerDispatch()
at flash.utils::Timer/flash.utils:Timer::tick()
Would love to figure this one out.
Thanks,
Curtis J. Morley
Hey James,
i just released the code my version of the compiz-like wobbling windows: feel free to “port” it to Flex, i’ll be happy to link back to your blog then!
Hi Manuel,
Awesome! That is much better than mine! I’ll try to get it ported to Flex.
-James
One Trackback
[...] Thanks to James Ward for the heads-up. I wonder if Adobe will be talking about this tomorrow in the Flex seminar they are hosting here in Dallas. [...]