Bug 116336 - Headers and footers will sometimes disappear and re-appear during page loads
Summary: Headers and footers will sometimes disappear and re-appear during page loads
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Beth Dakin
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2013-05-17 11:32 PDT by Beth Dakin
Modified: 2013-05-17 16:13 PDT (History)
12 users (show)

See Also:


Attachments
Patch (17.12 KB, patch)
2013-05-17 11:46 PDT, Beth Dakin
no flags Details | Formatted Diff | Diff
Patch (17.12 KB, patch)
2013-05-17 11:48 PDT, Beth Dakin
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
Patch (17.28 KB, patch)
2013-05-17 12:38 PDT, Beth Dakin
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
Patch (17.29 KB, patch)
2013-05-17 12:56 PDT, Beth Dakin
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
Patch (22.53 KB, patch)
2013-05-17 13:04 PDT, Beth Dakin
no flags Details | Formatted Diff | Diff
Patch (17.33 KB, patch)
2013-05-17 13:12 PDT, Beth Dakin
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
Patch (17.37 KB, patch)
2013-05-17 13:30 PDT, Beth Dakin
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
Patch (17.37 KB, patch)
2013-05-17 13:45 PDT, Beth Dakin
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 Beth Dakin 2013-05-17 11:32:19 PDT
We can fix this by making the RenderLayerCompositor add the header/footer layer as early as possible in its creation process if one has been set for the Page/WKView.

<rdar://problem/13886753>
Comment 1 Beth Dakin 2013-05-17 11:46:21 PDT
Created attachment 202129 [details]
Patch
Comment 2 WebKit Commit Bot 2013-05-17 11:47:52 PDT
Attachment 202129 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/WebCore.exp.in', u'Source/WebCore/page/ChromeClient.h', u'Source/WebCore/page/FrameView.cpp', u'Source/WebCore/page/FrameView.h', u'Source/WebCore/page/Page.cpp', u'Source/WebCore/page/Page.h', u'Source/WebCore/rendering/RenderLayerCompositor.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp', u'Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h', u'Source/WebKit2/WebProcess/WebPage/PageBanner.cpp', u'Source/WebKit2/WebProcess/WebPage/PageBanner.h', u'Source/WebKit2/WebProcess/WebPage/mac/PageBannerMac.mm']" exit_code: 1
Source/WebKit2/WebProcess/WebPage/PageBanner.h:39:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 1 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Beth Dakin 2013-05-17 11:48:41 PDT
Created attachment 202130 [details]
Patch
Comment 4 Early Warning System Bot 2013-05-17 11:57:06 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/494370
Comment 5 Early Warning System Bot 2013-05-17 11:57:46 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/497073
Comment 6 EFL EWS Bot 2013-05-17 12:03:04 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/486518
Comment 7 Build Bot 2013-05-17 12:11:03 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/486519
Comment 8 EFL EWS Bot 2013-05-17 12:15:26 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/482888
Comment 9 kov's GTK+ EWS bot 2013-05-17 12:27:23 PDT
Comment on attachment 202130 [details]
Patch

Attachment 202130 [details] did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/495383
Comment 10 Beth Dakin 2013-05-17 12:38:44 PDT
Created attachment 202135 [details]
Patch
Comment 11 Early Warning System Bot 2013-05-17 12:44:44 PDT
Comment on attachment 202135 [details]
Patch

Attachment 202135 [details] did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/486528
Comment 12 Early Warning System Bot 2013-05-17 12:44:57 PDT
Comment on attachment 202135 [details]
Patch

Attachment 202135 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/497089
Comment 13 EFL EWS Bot 2013-05-17 12:44:58 PDT
Comment on attachment 202135 [details]
Patch

Attachment 202135 [details] did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/484787
Comment 14 EFL EWS Bot 2013-05-17 12:48:59 PDT
Comment on attachment 202135 [details]
Patch

Attachment 202135 [details] did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/487522
Comment 15 Beth Dakin 2013-05-17 12:56:04 PDT
Created attachment 202138 [details]
Patch
Comment 16 Early Warning System Bot 2013-05-17 13:02:35 PDT
Comment on attachment 202138 [details]
Patch

Attachment 202138 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/498015
Comment 17 Early Warning System Bot 2013-05-17 13:03:11 PDT
Comment on attachment 202138 [details]
Patch

Attachment 202138 [details] did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/495393
Comment 18 Beth Dakin 2013-05-17 13:04:02 PDT
Created attachment 202139 [details]
Patch
Comment 19 WebKit Commit Bot 2013-05-17 13:06:13 PDT
Attachment 202139 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/WebCore.exp.in', u'Source/WebCore/page/ChromeClient.h', u'Source/WebCore/page/FrameView.cpp', u'Source/WebCore/page/FrameView.h', u'Source/WebCore/page/Page.cpp', u'Source/WebCore/page/Page.h', u'Source/WebCore/rendering/RenderLayerCompositor.cpp', u'Source/WebKit2/ChangeLog', u'Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp', u'Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h', u'Source/WebKit2/WebProcess/WebPage/PageBanner.cpp', u'Source/WebKit2/WebProcess/WebPage/PageBanner.h', u'Source/WebKit2/WebProcess/WebPage/mac/PageBannerMac.mm']" exit_code: 1
Source/WebKit2/ChangeLog:40:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 20 Beth Dakin 2013-05-17 13:12:59 PDT
Created attachment 202142 [details]
Patch
Comment 21 Early Warning System Bot 2013-05-17 13:23:41 PDT
Comment on attachment 202142 [details]
Patch

Attachment 202142 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/483873
Comment 22 Early Warning System Bot 2013-05-17 13:29:12 PDT
Comment on attachment 202142 [details]
Patch

Attachment 202142 [details] did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/493403
Comment 23 Beth Dakin 2013-05-17 13:30:25 PDT
Created attachment 202146 [details]
Patch
Comment 24 Early Warning System Bot 2013-05-17 13:44:39 PDT
Comment on attachment 202146 [details]
Patch

Attachment 202146 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/490460
Comment 25 Beth Dakin 2013-05-17 13:45:59 PDT
Created attachment 202153 [details]
Patch
Comment 26 Simon Fraser (smfr) 2013-05-17 15:59:14 PDT
Comment on attachment 202153 [details]
Patch

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

> Source/WebKit2/WebProcess/WebPage/mac/PageBannerMac.mm:77
> +    [parentLayer->platformLayer() addSublayer:m_layer.get()];

GraphicsLayers own their sublayer tree, so if changes to the parentLayer get flushed, that will nuke the sublayers. What prevents that from happening to headers and footers?
Comment 27 Simon Fraser (smfr) 2013-05-17 16:10:56 PDT
Comment on attachment 202153 [details]
Patch

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

>> Source/WebKit2/WebProcess/WebPage/mac/PageBannerMac.mm:77
>> +    [parentLayer->platformLayer() addSublayer:m_layer.get()];
> 
> GraphicsLayers own their sublayer tree, so if changes to the parentLayer get flushed, that will nuke the sublayers. What prevents that from happening to headers and footers?

We think this is OK because the banner GraphicsLayers are outside the normal flush tree.
Comment 28 Beth Dakin 2013-05-17 16:13:30 PDT
Thank you! http://trac.webkit.org/changeset/150307