WebKit Bugzilla
Attachment 371594 Details for
Bug 198664
: REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198664-20190607103216.patch (text/plain), 25.04 KB, created by
Said Abou-Hallawa
on 2019-06-07 10:32:17 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Said Abou-Hallawa
Created:
2019-06-07 10:32:17 PDT
Size:
25.04 KB
patch
obsolete
>Index: Source/WTF/ChangeLog >=================================================================== >--- Source/WTF/ChangeLog (revision 246202) >+++ Source/WTF/ChangeLog (working copy) >@@ -1,3 +1,14 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Rename the RenderingUpdate trace points to include CompositingLayerFlush. >+ >+ * wtf/SystemTracing.h: >+ > 2019-06-06 Caio Lima <ticaiolima@gmail.com> > > [JSCOnly] JSCOnly port is not building on macOS >Index: Source/WTF/wtf/SystemTracing.h >=================================================================== >--- Source/WTF/wtf/SystemTracing.h (revision 246202) >+++ Source/WTF/wtf/SystemTracing.h (working copy) >@@ -79,8 +79,8 @@ enum TracePointCode { > ComputeEventRegionsStart, > ComputeEventRegionsEnd, > >- ScheduleRenderingUpdate, >- TriggerRenderingUpdate, >+ ScheduleCompositingLayerFlush, >+ TriggerCompositingLayerFlush, > RenderingUpdateStart, > RenderingUpdateEnd, > >Index: Source/WebCore/ChangeLog >=================================================================== >--- Source/WebCore/ChangeLog (revision 246202) >+++ Source/WebCore/ChangeLog (working copy) >@@ -1,3 +1,62 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Because WK1 is a single process, scheduleCompositingLayerFlush() has to >+ run immediately when an update is needed. Otherwise no content will be >+ draw for the current frame. Doing this will get smooth scrolling again >+ for WK1. >+ >+ In this patch: >+ >+ -- RenderingUpdateScheduler::scheduleCompositingLayerFlush() is renamed >+ to scheduleCompositingLayerFlushImmediately() because the >+ DispayRefresMonitor is not involved here. >+ >+ -- RenderingUpdateScheduler::scheduleRenderingUpdate() is renamed to >+ scheduleCompositingLayerFlush() because this is what it does when >+ the DispayRefresMonitor fires. Page::updateRendering() is called >+ from the flushLayers() methods. >+ >+ -- RenderLayerCompositor::scheduleLayerFlush() will be calling >+ ChromeClient::scheduleCompositingLayerFlush() which will decide >+ either to call RenderingUpdateScheduler::scheduleCompositingLayerFlush() >+ or DrawingArea::scheduleCompositingLayerFlush(). WK2 will call the >+ former and WK1 will call the later. >+ >+ * animation/DocumentTimeline.cpp: >+ (WebCore::DocumentTimeline::scheduleAnimationResolution): >+ * dom/Document.cpp: >+ (WebCore::Document::scheduleCompositingLayerFlush): >+ (WebCore::Document::scheduleInitialIntersectionObservationUpdate): >+ (WebCore::Document::updateResizeObservations): >+ (WebCore::Document::scheduleRenderingUpdate): Deleted. >+ * dom/Document.h: >+ * dom/ScriptedAnimationController.cpp: >+ (WebCore::ScriptedAnimationController::scheduleAnimation): >+ * loader/EmptyClients.h: >+ * page/ChromeClient.h: >+ * page/Page.h: >+ * page/PageOverlayController.cpp: >+ (WebCore::PageOverlayController::didChangeViewExposedRect): >+ (WebCore::PageOverlayController::notifyFlushRequired): >+ * page/RenderingUpdateScheduler.cpp: >+ (WebCore::RenderingUpdateScheduler::scheduleCompositingLayerFlush): >+ (WebCore::RenderingUpdateScheduler::displayRefreshFired): >+ (WebCore::RenderingUpdateScheduler::scheduleCompositingLayerFlushImmediately): >+ (WebCore::RenderingUpdateScheduler::scheduleRenderingUpdate): Deleted. >+ * page/RenderingUpdateScheduler.h: >+ * page/ResizeObserver.cpp: >+ (WebCore::ResizeObserver::observe): >+ * page/mac/ServicesOverlayController.mm: >+ (WebCore::ServicesOverlayController::Highlight::notifyFlushRequired): >+ * rendering/RenderLayerCompositor.cpp: >+ (WebCore::RenderLayerCompositor::scheduleLayerFlush): >+ (WebCore::RenderLayerCompositor::layerTreeAsText): >+ > 2019-06-07 Joonghun Park <jh718.park@samsung.com> > > Unreviewed. Use const TabSize& instead of TabSize to avoid unnecessary copy. >Index: Source/WebCore/animation/DocumentTimeline.cpp >=================================================================== >--- Source/WebCore/animation/DocumentTimeline.cpp (revision 246202) >+++ Source/WebCore/animation/DocumentTimeline.cpp (working copy) >@@ -318,7 +318,7 @@ void DocumentTimeline::scheduleAnimation > if (!m_document || !m_document->page()) > return; > >- m_document->page()->renderingUpdateScheduler().scheduleRenderingUpdate(); >+ m_document->page()->renderingUpdateScheduler().scheduleCompositingLayerFlush(); > m_animationResolutionScheduled = true; > } > >Index: Source/WebCore/dom/Document.cpp >=================================================================== >--- Source/WebCore/dom/Document.cpp (revision 246202) >+++ Source/WebCore/dom/Document.cpp (working copy) >@@ -540,7 +540,7 @@ Document::Document(Frame* frame, const U > #endif > #if ENABLE(INTERSECTION_OBSERVER) > , m_intersectionObserversNotifyTimer(*this, &Document::notifyIntersectionObserversTimerFired) >- , m_intersectionObserversInitialUpdateTimer(*this, &Document::scheduleRenderingUpdate) >+ , m_intersectionObserversInitialUpdateTimer(*this, &Document::scheduleCompositingLayerFlush) > #endif > , m_loadEventDelayTimer(*this, &Document::loadEventDelayTimerFired) > #if PLATFORM(IOS_FAMILY) && ENABLE(DEVICE_ORIENTATION) >@@ -7291,10 +7291,10 @@ void Document::removeAppearanceDependent > m_appearanceDependentPictures.remove(&picture); > } > >-void Document::scheduleRenderingUpdate() >+void Document::scheduleCompositingLayerFlush() > { > if (auto page = this->page()) >- page->renderingUpdateScheduler().scheduleRenderingUpdate(); >+ page->renderingUpdateScheduler().scheduleCompositingLayerFlush(); > } > > #if ENABLE(INTERSECTION_OBSERVER) >@@ -7522,7 +7522,7 @@ void Document::notifyIntersectionObserve > void Document::scheduleInitialIntersectionObservationUpdate() > { > if (m_readyState == Complete) >- scheduleRenderingUpdate(); >+ scheduleCompositingLayerFlush(); > else if (!m_intersectionObserversInitialUpdateTimer.isActive()) > m_intersectionObserversInitialUpdateTimer.startOneShot(intersectionObserversInitialUpdateDelay); > } >@@ -7604,7 +7604,7 @@ void Document::updateResizeObservations( > getParserLocation(url, line, column); > reportException("ResizeObserver loop completed with undelivered notifications.", line, column, url, nullptr, nullptr); > // Starting a new schedule the next round of notify. >- scheduleRenderingUpdate(); >+ scheduleCompositingLayerFlush(); > } > } > #endif >Index: Source/WebCore/dom/Document.h >=================================================================== >--- Source/WebCore/dom/Document.h (revision 246202) >+++ Source/WebCore/dom/Document.h (working copy) >@@ -1380,7 +1380,7 @@ public: > void addAppearanceDependentPicture(HTMLPictureElement&); > void removeAppearanceDependentPicture(HTMLPictureElement&); > >- void scheduleRenderingUpdate(); >+ void scheduleCompositingLayerFlush(); > > #if ENABLE(INTERSECTION_OBSERVER) > void addIntersectionObserver(IntersectionObserver&); >Index: Source/WebCore/dom/ScriptedAnimationController.cpp >=================================================================== >--- Source/WebCore/dom/ScriptedAnimationController.cpp (revision 246202) >+++ Source/WebCore/dom/ScriptedAnimationController.cpp (working copy) >@@ -256,7 +256,7 @@ void ScriptedAnimationController::schedu > #if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) > if (!m_isUsingTimer && !isThrottled()) { > if (auto* page = this->page()) { >- page->renderingUpdateScheduler().scheduleRenderingUpdate(); >+ page->renderingUpdateScheduler().scheduleCompositingLayerFlush(); > return; > } > >Index: Source/WebCore/loader/EmptyClients.h >=================================================================== >--- Source/WebCore/loader/EmptyClients.h (revision 246202) >+++ Source/WebCore/loader/EmptyClients.h (working copy) >@@ -155,6 +155,7 @@ class EmptyChromeClient : public ChromeC > void attachViewOverlayGraphicsLayer(GraphicsLayer*) final { } > void setNeedsOneShotDrawingSynchronization() final { } > void scheduleCompositingLayerFlush() final { } >+ void scheduleCompositingLayerFlushImmediately() final { } > > #if PLATFORM(WIN) > void setLastSetCursorToCurrentCursor() final { } >Index: Source/WebCore/page/ChromeClient.h >=================================================================== >--- Source/WebCore/page/ChromeClient.h (revision 246202) >+++ Source/WebCore/page/ChromeClient.h (working copy) >@@ -320,6 +320,7 @@ public: > // Sets a flag to specify that the view needs to be updated, so we need > // to do an eager layout before the drawing. > virtual void scheduleCompositingLayerFlush() = 0; >+ virtual void scheduleCompositingLayerFlushImmediately() = 0; > // Returns whether or not the client can render the composited layer, > // regardless of the settings. > virtual bool allowsAcceleratedCompositing() const { return true; } >Index: Source/WebCore/page/Page.h >=================================================================== >--- Source/WebCore/page/Page.h (revision 246202) >+++ Source/WebCore/page/Page.h (working copy) >@@ -268,7 +268,7 @@ public: > > PerformanceMonitor* performanceMonitor() { return m_performanceMonitor.get(); } > >- RenderingUpdateScheduler& renderingUpdateScheduler(); >+ WEBCORE_EXPORT RenderingUpdateScheduler& renderingUpdateScheduler(); > > ValidationMessageClient* validationMessageClient() const { return m_validationMessageClient.get(); } > void updateValidationBubbleStateIfNeeded(); >Index: Source/WebCore/page/PageOverlayController.cpp >=================================================================== >--- Source/WebCore/page/PageOverlayController.cpp (revision 246202) >+++ Source/WebCore/page/PageOverlayController.cpp (working copy) >@@ -318,7 +318,7 @@ void PageOverlayController::didChangeDev > > void PageOverlayController::didChangeViewExposedRect() > { >- m_page.renderingUpdateScheduler().scheduleRenderingUpdate(); >+ m_page.renderingUpdateScheduler().scheduleCompositingLayerFlush(); > } > > void PageOverlayController::didScrollFrame(Frame& frame) >@@ -412,7 +412,7 @@ float PageOverlayController::deviceScale > > void PageOverlayController::notifyFlushRequired(const GraphicsLayer*) > { >- m_page.renderingUpdateScheduler().scheduleRenderingUpdate(); >+ m_page.renderingUpdateScheduler().scheduleCompositingLayerFlush(); > } > > void PageOverlayController::didChangeOverlayFrame(PageOverlay& overlay) >Index: Source/WebCore/page/RenderingUpdateScheduler.cpp >=================================================================== >--- Source/WebCore/page/RenderingUpdateScheduler.cpp (revision 246202) >+++ Source/WebCore/page/RenderingUpdateScheduler.cpp (working copy) >@@ -42,18 +42,18 @@ RenderingUpdateScheduler::RenderingUpdat > #endif > } > >-void RenderingUpdateScheduler::scheduleRenderingUpdate() >+void RenderingUpdateScheduler::scheduleCompositingLayerFlush() > { > if (isScheduled()) > return; > > // Optimize the case when an invisible page wants just to schedule layer flush. > if (!m_page.isVisible()) { >- scheduleCompositingLayerFlush(); >+ scheduleCompositingLayerFlushImmediately(); > return; > } > >- tracePoint(ScheduleRenderingUpdate); >+ tracePoint(ScheduleCompositingLayerFlush); > > #if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) > if (!DisplayRefreshMonitorManager::sharedManager().scheduleAnimation(*this)) >@@ -99,15 +99,15 @@ void RenderingUpdateScheduler::windowScr > > void RenderingUpdateScheduler::displayRefreshFired() > { >- tracePoint(TriggerRenderingUpdate); >+ tracePoint(TriggerCompositingLayerFlush); > > clearScheduled(); >- scheduleCompositingLayerFlush(); >+ scheduleCompositingLayerFlushImmediately(); > } > >-void RenderingUpdateScheduler::scheduleCompositingLayerFlush() >+void RenderingUpdateScheduler::scheduleCompositingLayerFlushImmediately() > { >- m_page.chrome().client().scheduleCompositingLayerFlush(); >+ m_page.chrome().client().scheduleCompositingLayerFlushImmediately(); > } > > } >Index: Source/WebCore/page/RenderingUpdateScheduler.h >=================================================================== >--- Source/WebCore/page/RenderingUpdateScheduler.h (revision 246202) >+++ Source/WebCore/page/RenderingUpdateScheduler.h (working copy) >@@ -46,8 +46,8 @@ public: > } > > RenderingUpdateScheduler(Page&); >- void scheduleRenderingUpdate(); >- void scheduleCompositingLayerFlush(); >+ WEBCORE_EXPORT void scheduleCompositingLayerFlush(); >+ void scheduleCompositingLayerFlushImmediately(); > > private: > #if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) >Index: Source/WebCore/page/ResizeObserver.cpp >=================================================================== >--- Source/WebCore/page/ResizeObserver.cpp (revision 246202) >+++ Source/WebCore/page/ResizeObserver.cpp (working copy) >@@ -73,7 +73,7 @@ void ResizeObserver::observe(Element& ta > > if (m_document) { > m_document->addResizeObserver(*this); >- m_document->scheduleRenderingUpdate(); >+ m_document->scheduleCompositingLayerFlush(); > } > } > >Index: Source/WebCore/page/mac/ServicesOverlayController.mm >=================================================================== >--- Source/WebCore/page/mac/ServicesOverlayController.mm (revision 246202) >+++ Source/WebCore/page/mac/ServicesOverlayController.mm (working copy) >@@ -121,7 +121,7 @@ void ServicesOverlayController::Highligh > if (!m_controller) > return; > >- m_controller->page().renderingUpdateScheduler().scheduleRenderingUpdate(); >+ m_controller->page().renderingUpdateScheduler().scheduleCompositingLayerFlush(); > } > > void ServicesOverlayController::Highlight::paintContents(const GraphicsLayer*, GraphicsContext& graphicsContext, OptionSet<GraphicsLayerPaintingPhase>, const FloatRect&, GraphicsLayerPaintBehavior) >Index: Source/WebCore/rendering/RenderLayerCompositor.cpp >=================================================================== >--- Source/WebCore/rendering/RenderLayerCompositor.cpp (revision 246202) >+++ Source/WebCore/rendering/RenderLayerCompositor.cpp (working copy) >@@ -466,7 +466,7 @@ void RenderLayerCompositor::scheduleLaye > m_hasPendingLayerFlush = true; > else { > m_hasPendingLayerFlush = false; >- page().renderingUpdateScheduler().scheduleRenderingUpdate(); >+ page().chrome().client().scheduleCompositingLayerFlush(); > } > } > >@@ -2061,7 +2061,7 @@ String RenderLayerCompositor::layerTreeA > return String(); > > flushPendingLayerChanges(true); >- page().renderingUpdateScheduler().scheduleCompositingLayerFlush(); >+ page().renderingUpdateScheduler().scheduleCompositingLayerFlushImmediately(); > > LayerTreeAsTextBehavior layerTreeBehavior = LayerTreeAsTextBehaviorNormal; > if (flags & LayerTreeFlagsIncludeDebugInfo) >Index: Source/WebKit/ChangeLog >=================================================================== >--- Source/WebKit/ChangeLog (revision 246202) >+++ Source/WebKit/ChangeLog (working copy) >@@ -1,3 +1,18 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ No change for WK2. Updating the page still uses DisplayRefreshMonitor to >+ scheduleCompositingLayerFlush(). >+ >+ * WebProcess/WebCoreSupport/WebChromeClient.cpp: >+ (WebKit::WebChromeClient::scheduleCompositingLayerFlush): >+ (WebKit::WebChromeClient::scheduleCompositingLayerFlushImmediately): >+ * WebProcess/WebCoreSupport/WebChromeClient.h: >+ > 2019-06-07 Andy Estes <aestes@apple.com> > > process-swap-on-navigation error when loading blocked website on iOS 12.2 only. >Index: Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp >=================================================================== >--- Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp (revision 246202) >+++ Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp (working copy) >@@ -923,6 +923,12 @@ void WebChromeClient::setNeedsOneShotDra > > void WebChromeClient::scheduleCompositingLayerFlush() > { >+ if (Page* corePage = m_page.corePage()) >+ corePage->renderingUpdateScheduler().scheduleCompositingLayerFlush(); >+} >+ >+void WebChromeClient::scheduleCompositingLayerFlushImmediately() >+{ > if (m_page.drawingArea()) > m_page.drawingArea()->scheduleCompositingLayerFlush(); > } >Index: Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h >=================================================================== >--- Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h (revision 246202) >+++ Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.h (working copy) >@@ -222,6 +222,7 @@ private: > void attachViewOverlayGraphicsLayer(WebCore::GraphicsLayer*) final; > void setNeedsOneShotDrawingSynchronization() final; > void scheduleCompositingLayerFlush() final; >+ void scheduleCompositingLayerFlushImmediately() final; > bool adjustLayerFlushThrottling(WebCore::LayerFlushThrottleState::Flags) final; > > void contentRuleListNotification(const URL&, const WebCore::ContentRuleListResults&) final; >Index: Source/WebKitLegacy/mac/ChangeLog >=================================================================== >--- Source/WebKitLegacy/mac/ChangeLog (revision 246202) >+++ Source/WebKitLegacy/mac/ChangeLog (working copy) >@@ -1 +1,16 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ scheduleCompositingLayerFlush() will skip using the DisplayRefreshMonitor. >+ It will call scheduleCompositingLayerFlushImmediately(). >+ >+ * WebCoreSupport/WebChromeClient.h: >+ * WebCoreSupport/WebChromeClient.mm: >+ (WebChromeClient::scheduleCompositingLayerFlushImmediately): >+ (WebChromeClient::scheduleCompositingLayerFlush): Deleted. >+ > == Rolled over to ChangeLog-2019-06-05 == >Index: Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.h >=================================================================== >--- Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.h (revision 246202) >+++ Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.h (working copy) >@@ -175,7 +175,8 @@ private: > void attachRootGraphicsLayer(WebCore::Frame&, WebCore::GraphicsLayer*) override; > void attachViewOverlayGraphicsLayer(WebCore::GraphicsLayer*) final; > void setNeedsOneShotDrawingSynchronization() final; >- void scheduleCompositingLayerFlush() final; >+ void scheduleCompositingLayerFlush() final { scheduleCompositingLayerFlushImmediately(); } >+ void scheduleCompositingLayerFlushImmediately() final; > > CompositingTriggerFlags allowedCompositingTriggers() const final > { >Index: Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm >=================================================================== >--- Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm (revision 246202) >+++ Source/WebKitLegacy/mac/WebCoreSupport/WebChromeClient.mm (working copy) >@@ -966,7 +966,7 @@ void WebChromeClient::setNeedsOneShotDra > END_BLOCK_OBJC_EXCEPTIONS; > } > >-void WebChromeClient::scheduleCompositingLayerFlush() >+void WebChromeClient::scheduleCompositingLayerFlushImmediately() > { > BEGIN_BLOCK_OBJC_EXCEPTIONS; > [m_webView _scheduleCompositingLayerFlush]; >Index: Source/WebKitLegacy/win/ChangeLog >=================================================================== >--- Source/WebKitLegacy/win/ChangeLog (revision 246206) >+++ Source/WebKitLegacy/win/ChangeLog (working copy) >@@ -1,3 +1,18 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ scheduleCompositingLayerFlush() will skip using the DisplayRefreshMonitor. >+ It will call scheduleCompositingLayerFlushImmediately(). >+ >+ * WebCoreSupport/WebChromeClient.cpp: >+ (WebChromeClient::scheduleCompositingLayerFlushImmediately): >+ (WebChromeClient::scheduleCompositingLayerFlush): Deleted. >+ * WebCoreSupport/WebChromeClient.h: >+ > 2019-05-31 Don Olmstead <don.olmstead@sony.com> > > [CMake] Add WebKit::WTF target >Index: Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.cpp >=================================================================== >--- Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.cpp (revision 246202) >+++ Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.cpp (working copy) >@@ -751,7 +751,7 @@ void WebChromeClient::attachViewOverlayG > // FIXME: If we want view-relative page overlays in Legacy WebKit on Windows, this would be the place to hook them up. > } > >-void WebChromeClient::scheduleCompositingLayerFlush() >+void WebChromeClient::scheduleCompositingLayerFlushImmediately() > { > m_webView->flushPendingGraphicsLayerChangesSoon(); > } >Index: Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.h >=================================================================== >--- Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.h (revision 246202) >+++ Source/WebKitLegacy/win/WebCoreSupport/WebChromeClient.h (working copy) >@@ -132,7 +132,8 @@ public: > void setNeedsOneShotDrawingSynchronization() final { } > // Sets a flag to specify that the view needs to be updated, so we need > // to do an eager layout before the drawing. >- void scheduleCompositingLayerFlush() final; >+ void scheduleCompositingLayerFlush() final { scheduleCompositingLayerFlushImmediately(); } >+ void scheduleCompositingLayerFlushImmediately() final; > > #if PLATFORM(WIN) && USE(AVFOUNDATION) > WebCore::GraphicsDeviceAdapter* graphicsDeviceAdapter() const final; >Index: Tools/ChangeLog >=================================================================== >--- Tools/ChangeLog (revision 246203) >+++ Tools/ChangeLog (working copy) >@@ -1,3 +1,15 @@ >+2019-06-07 Said Abou-Hallawa <sabouhallawa@apple.com> >+ >+ REGRESSION (r244182) [WK1]: Page updates should always scheduleCompositingLayerFlush() immediately >+ https://bugs.webkit.org/show_bug.cgi?id=198664 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Fix the CompositingLayerFlush trace points' names and delete repeated >+ entries which were submitted by mistake. >+ >+ * Tracing/SystemTracePoints.plist: >+ > 2019-06-07 Wenson Hsieh <wenson_hsieh@apple.com> > > [iOS] At least 6 API tests are failing due to an exception when writing NSAttributedString to the pasteboard >Index: Tools/Tracing/SystemTracePoints.plist >=================================================================== >--- Tools/Tracing/SystemTracePoints.plist (revision 246202) >+++ Tools/Tracing/SystemTracePoints.plist (working copy) >@@ -230,7 +230,7 @@ > </dict> > <dict> > <key>Name</key> >- <string>Schedule rendering update</string> >+ <string>Schedule compositing layer flush</string> > <key>Type</key> > <string>Impulse</string> > <key>Component</key> >@@ -240,39 +240,7 @@ > </dict> > <dict> > <key>Name</key> >- <string>Trigger rendering update</string> >- <key>Type</key> >- <string>Impulse</string> >- <key>Component</key> >- <string>47</string> >- <key>Code</key> >- <string>5029</string> >- </dict> >- <dict> >- <key>Name</key> >- <string>Rendering update</string> >- <key>Type</key> >- <string>Interval</string> >- <key>Component</key> >- <string>47</string> >- <key>CodeBegin</key> >- <string>5030</string> >- <key>CodeEnd</key> >- <string>5031</string> >- </dict> >- <dict> >- <key>Name</key> >- <string>Schedule rendering update</string> >- <key>Type</key> >- <string>Impulse</string> >- <key>Component</key> >- <string>47</string> >- <key>Code</key> >- <string>5028</string> >- </dict> >- <dict> >- <key>Name</key> >- <string>Trigger rendering update</string> >+ <string>Trigger compositing layer flush</string> > <key>Type</key> > <string>Impulse</string> > <key>Component</key>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198664
:
371594
|
371603
|
371626
|
371638
|
371642
|
371644