Widget::setCursor() seems to get called on every mouse motion event and it seems the underlying implementation gdk_window_set_cursor() isn't too cheap. This looks like it might be a WebCore bug. Confirmation on ports other than GTK+ would be helpful.
Created attachment 17827 [details] Workaround (cache the current GdkCursor*)
Comment on attachment 17827 [details] Workaround (cache the current GdkCursor*) r=me
Landed in r28655.