Bug 39874 - [Qt] Make tiled backing store more configurable
Summary: [Qt] Make tiled backing store more configurable
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC OS X 10.5
: P3 Normal
Assignee: Nobody
Keywords: Qt
Depends on:
Blocks: 35784
  Show dependency treegraph
Reported: 2010-05-28 06:09 PDT by Antti Koivisto
Modified: 2010-06-14 06:35 PDT (History)
6 users (show)

See Also:

trivial webcore patch and qt api using dynamic properties (8.09 KB, patch)
2010-05-28 06:13 PDT, Antti Koivisto
kenneth: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Antti Koivisto 2010-05-28 06:09:37 PDT
Make tile size, tile creation delay and tiling area dynamically configurable.
Comment 1 Antti Koivisto 2010-05-28 06:13:38 PDT
Created attachment 57321 [details]
trivial webcore patch and qt api using dynamic properties
Comment 2 WebKit Review Bot 2010-05-28 06:16:41 PDT
Attachment 57321 [details] did not pass style-queue:

Failed to run "['WebKitTools/Scripts/check-webkit-style', '--no-squash']" exit_code: 1
WARNING: File exempt from style guide. Skipping: "WebKit/qt/Api/qwebpage.cpp"
WebCore/platform/graphics/TiledBackingStore.h:62:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 5 files

If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Viatcheslav Ostapenko 2010-05-28 06:23:33 PDT
I like it! I need it!
Comment 4 Antti Koivisto 2010-05-28 06:29:13 PDT
Comment 5 WebKit Review Bot 2010-05-28 06:35:36 PDT
http://trac.webkit.org/changeset/60350 might have broken Qt Linux Release minimal
Comment 6 Antti Koivisto 2010-05-28 06:58:55 PDT
..and http://trac.webkit.org/changeset/60352
Comment 7 Simon Hausmann 2010-05-29 14:39:38 PDT
<cherry-pick-for-backport: r60350>
Comment 8 Simon Hausmann 2010-05-29 14:40:10 PDT
<cherry-pick-for-backport: r60352>
Comment 9 Simon Hausmann 2010-05-29 14:45:59 PDT
Revision r60350 cherry-picked into qtwebkit-2.0 with commit a65262d9e153242fcbe8b95a69d6b260abcf0eed
Revision r60352 cherry-picked into qtwebkit-2.0 with commit b9be716cfede8047581969927fc49736fddf4414
Comment 10 Antti Koivisto 2010-06-14 00:39:13 PDT
To configure the backing store, do something along the lines of

webView->page()->setProperty("_q_TiledBackingStoreTileSize", QSize(256, 256));
webView->page()->setProperty("_q_TiledBackingStoreTileCreationDelay", 25);
webView->page()->setProperty("_q_TiledBackingStoreCoverAreaMultiplier", QSizeF(1.5, 1.5));
webView->page()->setProperty("_q_TiledBackingStoreKeepAreaMultiplier", QSizeF(2., 2.5));

for a page. 

The settings above would set tile size to (256, 256) and add 25ms delay between constructing individual tiles. The settings would try to cache an area 1.5x width and 1.5x height of the current viewport (centered to the viewport) with tiles and would drop tiles after they are outside an area 2x the width and 2.5x the height of the viewport.
Comment 11 Kenneth Rohde Christiansen 2010-06-14 06:35:07 PDT
should we document our private api on the wiki?