Bug 126457 - [iOS] [WK2] TileController creates all tiles on first paint, making it slow and consuming lots of memory
Summary: [iOS] [WK2] TileController creates all tiles on first paint, making it slow a...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Tim Horton
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2014-01-03 13:41 PST by Tim Horton
Modified: 2014-01-03 16:33 PST (History)
6 users (show)

See Also:


Attachments
patch (13.40 KB, patch)
2014-01-03 13:54 PST, Tim Horton
no flags Details | Formatted Diff | Diff
fix the title for sam (13.43 KB, patch)
2014-01-03 14:03 PST, Tim Horton
simon.fraser: 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 2014-01-03 13:41:34 PST
Otherwise, we make all of the tiles upfront.

We can reuse the view exposed rect mechanism that already exists, we just have to:

1. Hook it up to WKView/WKContentView on iOS.
2. Plumb it through RemoteLayerTreeDrawingArea.
3. Make the WebPage(Proxy) bits available to iOS.

There is a good bit of cleanup of all of this stuff that should happen, but this at least gets us to a functional state.
Comment 1 Radar WebKit Bug Importer 2014-01-03 13:41:45 PST
<rdar://problem/15745931>
Comment 2 Tim Horton 2014-01-03 13:54:35 PST
Created attachment 220335 [details]
patch
Comment 3 Tim Horton 2014-01-03 14:03:38 PST
Created attachment 220336 [details]
fix the title for sam
Comment 4 Tim Horton 2014-01-03 14:11:08 PST
Comment on attachment 220336 [details]
fix the title for sam

View in context: https://bugs.webkit.org/attachment.cgi?id=220336&action=review

> Source/WebKit2/ChangeLog:24
> +        We can't use the existing WKContentView didScrollTo:, because it is
> +        expected to only fire when a scroll lands. Instead, add didLiveScrollTo:,
> +        which fires continually as scrolling progresses.

Naming proposal: rename didScrollTo: to didFinishScrollTo:, and use didScrollTo: instead of didLiveScrollTo:
Comment 5 Simon Fraser (smfr) 2014-01-03 14:11:23 PST
Comment on attachment 220336 [details]
fix the title for sam

View in context: https://bugs.webkit.org/attachment.cgi?id=220336&action=review

> Source/WebKit2/UIProcess/API/ios/WKContentView.h:68
> +- (void)didLiveScrollTo:(CGPoint)contentOffset;

Hmm, we don't really use the term "live scroll" anywhere else.

> Source/WebKit2/UIProcess/API/ios/WKContentView.mm:141
> +    _page->viewExposedRectChanged(FloatRect(_page->viewExposedRect().location(), FloatSize(size)), true);

No idea what true means.

> Source/WebKit2/UIProcess/WebPageProxy.cpp:4398
> +void WebPageProxy::viewExposedRectChanged(const FloatRect& exposedRect, bool clipsToExposedRect)

Please replace clipsToExposedRect with an enum
Comment 6 Tim Horton 2014-01-03 16:33:02 PST
http://trac.webkit.org/changeset/161296