Martin Robinson

Michigan (USA), 1983

I'm a software developer working on WebKitGTK+.

Latest Updates

Martin Robinson 04/04/2009

Avoiding the Logging Performance Hit

Sometimes you have a function or a method which more often throws away its arguments than actually uses them. Quite possibly the most common example of this situation is logging. Often you'll see a snippet like this:log.Debug("Processing " + index + " of...

Martin Robinson 06/03/2009

DBus and Threads

Sometimes you'll be using Dbus with threads and notice intermittent segfaults with stack traces like this;#0 0xb4d58d29 in _dbus_watch_invalidate (watch=0x0) at dbus-watch.c:147#1 0xb4d57066 in free_watches (transport=0x979c0d0) at...

Martin Robinson 18/01/2009

Compiling D Source is Easy

There are two compilers available for D. The original D compiler (the one written by Walter) is DMD. It has an open-source front-end (the part that generate the IL) and a proprietary, closed-source back-end (the part that converts the IL into machine...

Martin Robinson 03/01/2009

Different People

Being There warms my heart for several reasons. One of the most notable is that Hal Ashby managed to turn a Cheech and Chong song into some kind of religious experience with umbrellas. There is also the unexpected vignette during the ending, which many...

Martin Robinson 02/01/2009

Embedding Python in D

Oooooooooh.It's some snakes.It's some snakes.A while back I began spending some time acquainting myself with D. For those who don't know, D is a relatively new system programming language with all kinds of interesting features like very flexible garbage...


By Type:


Make scrolling tick by device pixels

Make scrolling tick by device pixels Instead of converting a device offset into a page offset and then converting back when positioning layers, keep scroll offsets in device pixels. We still do conversions when calculating the scroll offset for pinch...

Martin Robinson01/08/2014

Remove CompositorData::add_child

Remove CompositorData::add_child The contents of this method have dwindled to two statements. Just remove the method now.

Martin Robinson01/08/2014

Rename Compositor::ask_for_tiles to send_buffer_requests_for_all_layers

Rename Compositor::ask_for_tiles to send_buffer_requests_for_all_layers This name better reflects what the method does.

Martin Robinson01/08/2014

Push get_buffer_requests_recursively into rust-layers

Push get_buffer_requests_recursively into rust-layers Also do some reorganization and abstraction in IOCompositor now that we do not have to borrow self.scene.root.

Martin Robinson01/08/2014

Layer bounds and buffer requests should use layer coordinates

Layer bounds and buffer requests should use layer coordinates Instead of passing a scaling factor down to rust-layers and keeping all layers in page coordinates, work in layer coordinates. This is much more natural, as the compositor and rust-layer...

Martin Robinson29/07/2014