Bug 111662 - [wk2] Page overlays shouldn't dirty the entire layer when flushing if the main frame can't scroll
Summary: [wk2] Page overlays shouldn't dirty the entire layer when flushing if the mai...
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Tim Horton
Keywords: InRadar
Depends on: 111945
  Show dependency treegraph
Reported: 2013-03-06 19:01 PST by Tim Horton
Modified: 2013-03-21 16:50 PDT (History)
3 users (show)

See Also:

patch (2.42 KB, patch)
2013-03-06 19:05 PST, Tim Horton
simon.fraser: review+
Details | Formatted Diff | Diff
better patch! (2.50 KB, patch)
2013-03-21 16:39 PDT, Tim Horton
dino: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Tim Horton 2013-03-06 19:01:41 PST
We currently setNeedsDisplay() on the whole page overlay layer every time through TCADA::flushLayers. This is necessary to keep things painted in the right place when we scroll, but is quite wasteful in apps that don’t scroll.

Instead, we can setNeedsDisplay() at scroll time instead. Testing with the Find overlay and other Safari overlays seems to work.

Comment 1 Tim Horton 2013-03-06 19:05:00 PST
Created attachment 191891 [details]
Comment 2 Simon Fraser (smfr) 2013-03-06 19:16:41 PST
Comment on attachment 191891 [details]

Comment 3 Tim Horton 2013-03-06 22:01:05 PST
Comment 4 WebKit Review Bot 2013-03-10 12:23:44 PDT
Re-opened since this is blocked by bug 111945
Comment 5 Tim Horton 2013-03-21 16:39:26 PDT
Created attachment 194381 [details]
better patch!
Comment 6 Dean Jackson 2013-03-21 16:42:18 PDT
Comment on attachment 194381 [details]
better patch!

you said you'd remove local var on irc
Comment 7 Tim Horton 2013-03-21 16:50:32 PDT