Martin Robinson

The Frozen North, USA


Latest Updates

Martin Robinson 24/02/2013

Edge-distance anti-aliasing

(You might want to go straight to the demo) Some months ago, I noticed that the Chromium compositor, the code which powers Chromium’s accelerated compositing implementation (and also Aura!) was anti-aliasing layer edges. This was especially...

Martin Robinson 07/07/2012

Accelerated compositing update

I believe it's past time to break the silence here, so what follows is a short update on the progress we've made at Igalia toward 3D CSS transforms and hardware accelerated animation in WebKitGTK+ (otherwise known as accelerated compositing). I'm happy to...

Martin Robinson 08/12/2011

WebKitGTK+ hackfest wrapup: accelerated compositing

I just returned from this year's WebKitGTK+ hackfest. Not only was it the mostproductive hackfest to date, the diversityof the people involved was incredible. Attendees included hackers from Igalia, Collabora, RedHatand Motorola. It's great to be...

Martin Robinson 24/09/2011

For some years now, I've been meaning to build a bicycle. Because I balked at the idea of owning more than one, I never did. Recently my unrestrained minimalism was given a reprieve in the form of cascading, terminal bicycle theft.For five years, I've...

Martin Robinson 13/03/2011

Faster Shadows

One area we paid particular attention last year at Igalia was the performance of shadow rendering in web content. While web shadows are not yet ubiquitous, a slow shadow implementation can cause poor scrolling and redraw performance, ruining your day like...


By Type:


Only create scrolling overflow regions when necessary

Only create scrolling overflow regions when necessary Only create scroll roots for overflow regions when the overflow region is actually larger than the container size. This prevents creating scrolling roots for elements that do not have overflow...

Martin Robinson17/01/2017

Rework the way scroll roots are collected

Rework the way scroll roots are collected Collect scroll roots during the collect_stacking_context phase instead of during display list construction. This will be useful in order to collect containing block scroll roots as well as to give scroll...

Martin Robinson10/01/2017

Move some methods from

Move some methods from These methods are not only used during display list construction, so they are a better fit for the flow structs themselves. This does not introduce any behavior change, but should make it easier to fix

Martin Robinson09/01/2017

Don't scroll background and borders of overflow:scroll blocks

Don't scroll background and borders of overflow:scroll blocks We want them to be children of the parent scrolling root instead of the scrolling root of the particular block they belong to. Also, we adjust the scroll root to only include the content...

Martin Robinson07/12/2016

Use new DisplayListBuilder improvements in Servo

Use new DisplayListBuilder improvements in Servo In particular, we no longer to have a WebRenderFrameBuilder. All of the complication is now handled by the DisplayListBuilder itself.

Martin Robinson29/11/2016