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.
This is a companion discussion topic for the original entry at https://www.haiku-os.org/blog/pulkomandy/2014-02-28_webkit_weekly_report_21/