FlashPlus - Version 1.5.2

FlashPlus 1.5.2 has been released with a couple new features and some minor bug fixes. The adoption of this chrome extension has been growing steadily.You can read the release notes here.

One feature that was asked for by the users was to pop out the flash content into a new window. This would give more real estate to the flash, making watching videos or playing games better. I was considering two approaches to do this.
The first approach involved opening a new window with the current page. The element's selector would be passed to the page. The page would use the selector to pick the element and then make it full screen. The only problem with this approach is constructing the selector. I did write some code for it and it seemed to work, but it would not cater to dynamic elements on the page that change with every page load. You can check out this version here.
An easier approach was to simply pick up the HTML of the flash object, with its params and attributes, place it on the new window with the current URL and convert it to full screen. Since the page in the new window is same as the current page, relative URLs and javascript access to the flash would work fine.

An Options page was also added with the following configuration options.
  • Option to manipulate the flash elements when the page starts. Doing so does not require the flash to reload, and hence, when you load the layer on top of the flash, your movie does not restart. This may have to be turned in cases where the page alignment is screwed.
  •  An option to set the time till which FlashPlus should check for Flash content loaded using Javascript. 
  • Options to show logs in the console window.
  • A footer with details about the extension, author and place to ask for features or report bugs.
There were also some bug fixes
  • Some thumbnails in the Page Action (the FlashPlus Icon in the address bar) do not show up properly. This was due to bad scaling math, which is now corrected
  • iFrame support has been enhanced. 
  • A user pointed FlashPlus was not working on certain pages. This was due to the same CSS class names used. The class names in the extension now have a prefix. 
  • There were logical bugs with permutations of actions like "FullScreen", "Block", "Unblock", "Back to Windowed Mode". This bug was also fixed.
This was a major release with a lot of features put in. There are some more features that I would start working on, when I have time.
The extension is now a substantial amount of code and it would be hard to work on it alone.  I would appreciate any help with coding, please do drop in a comment and we could collaborate.

Time 2 Tweet : More updates

It has been sometime since time2tweet was last deployed and updated. Since there, there have been a lot of users and we have finally hit our Google App Engine free users limit. I had sent out an email to all the users requesting them to host the application on their instance to continue scheduling their tweets seamlessly. Interestingly, a lot of people responded back, wanting to continue using the application to tweet their applications.
Over the last week, I helped them host the applications on their server, and many users now are successfully running the application. During that time, I also discovered some interesting issues that I fixed. To start with, I moved the source control to Mercurial on google code.
The first issue I encountered was asking the users to register for twitter Oauth and enter those credentials for the application to use. Since it was an admin module, I was using a URL that would set the OAuth Secrets using the GET method. Not only is this a bad design, people were confused when the URL spit out a blank page. This release has a nice looking UI around it.
The second bug was interesting. I was reading the OAuth values in the cache once they were set. Once read, they would not be re-read till the cache flushes it out. If the OAuth values were incorrect, no tweets would be posted. It would also not be possible to update the cache as these values were never removed from cache. This was a big problem as the cache seems to maintain state even on new applications. The admin page now explicitly sets this value in the cache and the database, eliminating this problem.
There was a Google App Engine failure some time ago and that had stopped all cron tasks. Once App engine was up, the Cron job has too much work to do and used to time out. This let to no tweets being posted. This ug was fixed but explicitly forcing the Cron job to handle only 20 tweets at a time, no matter how much backlog it has. 
Finally, I also corrected the tasks to post have one tweet to be posted per task. This may be heavy on the task, but seemed to be the right thing to do. Given that there can be 30 tasks per minute and the Cron sets 20 tasks every minute, this seemed to be a good thing to do for the load.
As with all systems, not all deployments are great. I still see some errors with the Tasks about "null" screen names, etc. and am still investigating. Please follow this space for update.
I would also like to thank all the users who think this application is good and were ready to deploy it on their instance of App engine.

FlashPlus - Version 1.3.1

With Youtube now steaming IPL live, the new version FlashPlus is even more useful. Some of the features in this release are
  • Support for Flash Movies inside iFrames of the page
  • Corrected the z-index to show flash videos above other components of the page.
  • Support for pages that embed Flash using only the object tag.
The Youtube IPL page has atleast three nested iFrames and the extension works like a charm. The only problem is with the boundaries of the iFrame that limit the movement of the Flash Content. This is something that will be fixed in the next release.
The next release would mostly be
  • Add ability to pop out flash movies into a new window
  • The Page action icon shows screenshots of flash with distortion. This is to be fixed.
  • Flashplus currently replaces flash when the icon is clicked. This would cause flash to reload, restarting it. This is bad when watching streaming videos and playing games. There will be an options page for this. 
Watch out this space for updates.