Thursday, October 23, 2008

Fixing Firefox and Adapting to It

At Kloudshare, we are developing a platform that, among other things, pushes the web browser further than most applications, and perhaps further than almost any application has yet pushed the browser. When I say push I don't mean in the sense that we expect it to go particularly faster than others do, but that the way that we are exercising it is that we are using things in presumably unexpected combinations.

Up until now, Firefox has been OK, but there had been some visual glitches that we would like to eliminate. This is hard because, as far as we can tell, we are doing everything exactly right in a standards compliant sort of way. The bugs of most concern seem not to have any obvious thread, and most tellingly, they do not appear in other browsers.

The visual glitches are a bit annoying, but can be lived with. But yesterday we hit one that is really weird. When changing the source of an iframe, the browser seems to change its zoom level. Everything gets bigger. When you click to another tab and then come back, everything goes back to normal. This is a real killer for us. Its not just a few pixels intermittently out of place, and so it makes the experience unusable. The problem is not consistent in the sense that on my Mac it seems to happen every time, but on our Linux machine the problem is more intermittent.

The thing I have been struggling with is trying to figure out how to both report this and whether there are ways to work around this. We are not live yet so we can't provide some kind of public link on Bugzilla. We have thought about trying to capture the HTML but many of these bugs require interaction. More troublingly we really want to do more than just provide information that helps make the next version of the browser better, though obviously that would be great. Ideally we'd like to know what is going on internally, and if there is a way to avoid or work around these problems so that we can satisfy the existing installed base without removing important features.

So the real question here is, what is the right strategy to resolve this. Is there a proper procedure for resolving such problems? I suppose we could try to develop a specific use case outside our software that reproduces the bug. But given the highly circumstantial nature, this would be a huge burden on us, given our small size. Another thought is that we could hire someone who is a contributor to see if s/he can reproduce the bug and help us both identify the bug and, if possible, find a work around. The problem with this solution is I am not sure where to find such contributors. I guess I could try hanging out on IRC, but that seems pretty inefficient. Then again perhaps not.

Anyway, this post is more of a call for help and suggestions. Any ideas greatly appreciated.

5 comments:

Rodr!go said...

Hi Hank!

That sounds troublesome! Why don't you try using Camtasia or other screen recording software so you can capture what's going on and later on post the video, so you can get feedback on the bug.

Wouldn't Firebug help you in that matter as well?

Well, there goes my 10 bucks on this matter, good luck with it!

RyanTM said...

I think the best approach would be to make an minimal HTML file that causes this bug. For example, just an iframe and javascript that changes its source.

This make reporting it easier, and will let you narrow in on what the problem actually is.

Hank Williams said...

Ryan,

"we have thought about trying to capture the HTML but many of these bugs require interaction."

"I suppose we could try to develop a specific use case outside our software that reproduces the bug. But given the highly circumstantial nature, this would be a huge burden on us, given our small size."

More specifically, what you describe is not easy as it doesnt happen under normal circumstances and our environment is very complex. Given the resources anything is possible but just figuring out how to reproduce this bug (among others) is I am sure several days of dedicated work. And it doesnt guarantee a fix.

John C said...

Just produce a test case and submit the bug to bugzilla.

As for the fix, you probably need to listen to the iframe onload event and then just do some j/s hackery to force the region to reflow. Not ideal, but better than waiting for a new version of FireFox.

Are you doing this across domains? Are the doctypes the same?

Ray Light said...

Hi Hank,

I have this problem as well, using FF3 on Windows XP, specifically using Yahoo mail. Perhaps you can use this as your bug, since it is publicly available.

What happens with me is that when I first go in to Yahoo Mail, the zoom is increased as you describe. When I click to other folders, the size goes back down. It's certainly annoying, but this doesn't happen to with my Mac (FF or Safari). Anyways, just throwing this out there as I definitely know what you're talking about here. Hope this example can be reproduced and helps you report it.

Post a Comment