Title: [195295] trunk/Source/WebKit2
Revision
195295
Author
[email protected]
Date
2016-01-19 10:21:26 -0800 (Tue, 19 Jan 2016)

Log Message

Unreviewed, rolling out r187471.
https://bugs.webkit.org/show_bug.cgi?id=153236

purportedly caused a significant memory regression and want to
see if that is true (Requested by thorton on #webkit).

Reverted changeset:

"First in-window viewStateChange synchronously blocks despite
not previously being in-window"
https://bugs.webkit.org/show_bug.cgi?id=147344
http://trac.webkit.org/changeset/187471

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (195294 => 195295)


--- trunk/Source/WebKit2/ChangeLog	2016-01-19 17:50:17 UTC (rev 195294)
+++ trunk/Source/WebKit2/ChangeLog	2016-01-19 18:21:26 UTC (rev 195295)
@@ -1,3 +1,18 @@
+2016-01-19  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r187471.
+        https://bugs.webkit.org/show_bug.cgi?id=153236
+
+        purportedly caused a significant memory regression and want to
+        see if that is true (Requested by thorton on #webkit).
+
+        Reverted changeset:
+
+        "First in-window viewStateChange synchronously blocks despite
+        not previously being in-window"
+        https://bugs.webkit.org/show_bug.cgi?id=147344
+        http://trac.webkit.org/changeset/187471
+
 2016-01-19  Carlos Garcia Campos  <[email protected]>
 
         [GTK] Runtime critical warnings when loading a URL after a session restore

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (195294 => 195295)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2016-01-19 17:50:17 UTC (rev 195294)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2016-01-19 18:21:26 UTC (rev 195295)
@@ -1339,8 +1339,10 @@
         m_viewState |= ViewState::IsVisible;
     if (flagsToUpdate & ViewState::IsVisibleOrOccluded && m_pageClient.isViewVisibleOrOccluded())
         m_viewState |= ViewState::IsVisibleOrOccluded;
-    if (flagsToUpdate & ViewState::IsInWindow && m_pageClient.isViewInWindow())
+    if (flagsToUpdate & ViewState::IsInWindow && m_pageClient.isViewInWindow()) {
         m_viewState |= ViewState::IsInWindow;
+        m_viewWasEverInWindow = true;
+    }
     if (flagsToUpdate & ViewState::IsVisuallyIdle && m_pageClient.isVisuallyIdle())
         m_viewState |= ViewState::IsVisuallyIdle;
 }
@@ -1408,9 +1410,8 @@
     updateViewState(m_potentiallyChangedViewStateFlags);
     ViewState::Flags changed = m_viewState ^ previousViewState;
 
-    bool isNowInWindow = (changed & ViewState::IsInWindow) && isInWindow();
     // We always want to wait for the Web process to reply if we've been in-window before and are coming back in-window.
-    if (m_viewWasEverInWindow && isNowInWindow && m_drawingArea->hasVisibleContent())
+    if (m_viewWasEverInWindow && (changed & ViewState::IsInWindow) && isInWindow() && m_drawingArea->hasVisibleContent())
         m_viewStateChangeWantsSynchronousReply = true;
 
     // Don't wait synchronously if the view state is not visible. (This matters in particular on iOS, where a hidden page may be suspended.)
@@ -1445,7 +1446,6 @@
 
     m_potentiallyChangedViewStateFlags = ViewState::NoFlags;
     m_viewStateChangeWantsSynchronousReply = false;
-    m_viewWasEverInWindow |= isNowInWindow;
 }
 
 void WebPageProxy::updateActivityToken()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to