WebKit weekly report #21
Well, the good news first: for some time I had a bug with GMail, where the top part of the interface (with the search bar, trash button, identity and GMail logo would disappear after the page loaded. This is why I didn't do any release in a while. Well, this bug is now mostly fixed. There is some flickering of the same area, but at least it doesn't completely disappear. I'll be researching the flickering, however it isn't an usability problem anymore, so I can package a release with all the improvements done over the last weeks.
For those interested, the problem was introduced when WebKit made support for "accelerated compositing" mandatory. This used to be an optional feature in WebKit. What it does is rendering parts of the page separately, then mixing (compositing) them together. On other ports, the final compositing step can be hardware accelerated, because it's simple enough (just blending 2D bitmaps over each other, with alpha). For us, the acceleration doesn't exist (we'd need OpenGL or OpenVG or something to make use of the GPU), so this isn't as interesting. However, it's still possible to do the blending in software, which is what WebKit now requires us to do. Anyway, when merging this change, I made a mistake and partially enabled another feature, which we didn't actually implement. This led to some drawing being made off-screen, and never composited in, so it wouldn't be visible. Well, this part is now disabled again, and things seems to work like they did before. We probably still need to implement at least some of the compositing code, but this will come with the transform matrix support, so I'm pushing it to a later time.
I'll continue reviewing these tests. With the GMail bug fixed, I can package a release (expect it today or early next week). I'll then start adding features again. Next up is use of transform matrices to get our SVG drawing in a better shape, Web Notifications (this should be easy and has little potential for causing regressions), and then start looking at HTML5 audio and video (I'm waiting to see if one of our GSoC students wants to handle the media kit side of things for streaming, but I can start working on this with file:// sources). and of course, I expect you to continue opening bugs about non-working websites so I can continue improving the rendering.