It appears that we don't layerize the overview, so the entire normal tile has to be repainted.
Created attachment 230691 [details]
tile repaint counts - should show compositing layer
Also noticeably slower when the scrollbar overlay shows up (scroll with window focused) vs not (scroll when window inactive).
I would prefer to ditch the scrollbar and paint our own ticker that shows the entire range and the currently visible subrange, if zoomed beyond 1x/showing everything.
We don't have any kind of accelerated overflow:scroll on OS X.
Some of the slowness could be coming from our handling of scroll events (which are async) to update the rendered area of the overview graphs.
STEPS TO REPRODUCE:
* Go to CNN.com
* Open Inspector
* Wait for auto-recording to stop (20s)
* Open timelines panel
* Zoom in on timelines overview (using wheel / trackpad)
* scroll horizontally with wheel, trackpad, or dragging scrollbar
* select a small range of the timeline, and scroll horizontally again
* horizontal scrolling speed shouldn't be affected by the size of the selection range.
* as the selection becomes wider, horizontal scrolling has worse performance.
* Maybe we are doing work we shouldn't be doing- that's O(records in range) - when the view range changes.
It could be the code in TimelineRecordBar.createCombinedBars, which has a comment:
// FIXME: Do a binary search for records that fall inside start and current time.