Bug 172626 - [iOS] Disable async image decoding when synchronously painting a newly parented WKWebView
Summary: [iOS] Disable async image decoding when synchronously painting a newly parent...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Images (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Said Abou-Hallawa
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-05-25 18:34 PDT by Said Abou-Hallawa
Modified: 2017-05-25 21:41 PDT (History)
5 users (show)

See Also:


Attachments
Patch (6.97 KB, patch)
2017-05-25 18:46 PDT, Said Abou-Hallawa
no flags Details | Formatted Diff | Diff
Patch (6.97 KB, patch)
2017-05-25 19:12 PDT, Said Abou-Hallawa
no flags Details | Formatted Diff | Diff
Patch (7.01 KB, patch)
2017-05-25 20:46 PDT, Said Abou-Hallawa
no flags Details | Formatted Diff | Diff
Patch (6.97 KB, patch)
2017-05-25 20:58 PDT, Said Abou-Hallawa
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Said Abou-Hallawa 2017-05-25 18:34:43 PDT
When brining a WebView to the foreground we have to draw the page synchronously so the user does not see empty rectangles in the window. This means the large images has to be synchronously decoded as well so the user does not see flashes in the page because the images are not ready to paint.
Comment 1 Said Abou-Hallawa 2017-05-25 18:35:29 PDT
<rdar://problem/32414363>
Comment 2 Radar WebKit Bug Importer 2017-05-25 18:36:23 PDT
<rdar://problem/32417948>
Comment 3 Said Abou-Hallawa 2017-05-25 18:40:25 PDT
<rdar://problem/32414363>
Comment 4 Said Abou-Hallawa 2017-05-25 18:46:03 PDT
Created attachment 311324 [details]
Patch
Comment 5 Tim Horton 2017-05-25 18:55:37 PDT
Comment on attachment 311324 [details]
Patch

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

> Source/WebKit2/ChangeLog:8
> +        Large images has to be synchronously decoded when brining a WebView to the

have to be; bringing; because we want the whole page to be painted when we unblock the UI process

> Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:384
> +    m_remoteLayerTreeContext->setNextFlushIsForImmediatePaint(m_nextFlushIsForImmediatePaint = false);

whaaaaat please don't do this weird compound statement
Comment 6 Said Abou-Hallawa 2017-05-25 19:12:04 PDT
Created attachment 311326 [details]
Patch
Comment 7 Jon Lee 2017-05-25 19:38:56 PDT
Comment on attachment 311326 [details]
Patch

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

> Source/WebKit2/ChangeLog:3
> +        [iOS] Disbale Async image decoding when synchronously painting a newly parented WebView

Disable async
Comment 8 Said Abou-Hallawa 2017-05-25 20:46:05 PDT
Created attachment 311331 [details]
Patch
Comment 9 Said Abou-Hallawa 2017-05-25 20:58:00 PDT
Created attachment 311332 [details]
Patch
Comment 10 WebKit Commit Bot 2017-05-25 20:59:55 PDT
Comment on attachment 311332 [details]
Patch

Rejecting attachment 311332 [details] from commit-queue.

Failed to run "['/Volumes/Data/EWS/WebKit/Tools/Scripts/webkit-patch', '--status-host=webkit-queues.webkit.org', '--bot-id=webkit-cq-01', 'validate-changelog', '--check-oops', '--non-interactive', 311332, '--port=mac']" exit_code: 1 cwd: /Volumes/Data/EWS/WebKit

ChangeLog entry in Source/WebKit2/ChangeLog contains OOPS!.

Full output: http://webkit-queues.webkit.org/results/3819454
Comment 11 WebKit Commit Bot 2017-05-25 21:41:25 PDT
Comment on attachment 311332 [details]
Patch

Clearing flags on attachment: 311332

Committed r217475: <http://trac.webkit.org/changeset/217475>
Comment 12 WebKit Commit Bot 2017-05-25 21:41:27 PDT
All reviewed patches have been landed.  Closing bug.