Title: [152579] trunk/Source
Revision
152579
Author
[email protected]
Date
2013-07-11 15:33:11 -0700 (Thu, 11 Jul 2013)

Log Message

[mac] No API for getting the page visibility state of a WebView
https://bugs.webkit.org/show_bug.cgi?id=118578

Reviewed by Simon Fraser.

Source/WebCore: 

* WebCore.exp.in: Export WebCore::Page::visibilityState().

Source/WebKit/mac: 

* WebView/WebView.mm:
(kit): Added. Converts from WebCore::PageVisibilityState to WebPageVisibilityState.
(-[WebView _visibilityState]): Added.
* WebView/WebViewPrivate.h: Declared -_visibilityState.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (152578 => 152579)


--- trunk/Source/WebCore/ChangeLog	2013-07-11 22:27:04 UTC (rev 152578)
+++ trunk/Source/WebCore/ChangeLog	2013-07-11 22:33:11 UTC (rev 152579)
@@ -1,3 +1,12 @@
+2013-07-11  Dan Bernstein  <[email protected]>
+
+        [mac] No API for getting the page visibility state of a WebView
+        https://bugs.webkit.org/show_bug.cgi?id=118578
+
+        Reviewed by Simon Fraser.
+
+        * WebCore.exp.in: Export WebCore::Page::visibilityState().
+
 2013-07-11  Mario Sanchez Prada  <[email protected]>
 
         [GTK] Layout Test accessibility/deleting-iframe-destroys-axcache.html, platform/gtk/accessibility/replaced-objects-in-anonymous-blocks.html are failing

Modified: trunk/Source/WebCore/WebCore.exp.in (152578 => 152579)


--- trunk/Source/WebCore/WebCore.exp.in	2013-07-11 22:27:04 UTC (rev 152578)
+++ trunk/Source/WebCore/WebCore.exp.in	2013-07-11 22:33:11 UTC (rev 152579)
@@ -1565,6 +1565,7 @@
 __ZNK7WebCore4Page10pluginDataEv
 __ZNK7WebCore4Page14renderTreeSizeEv
 __ZNK7WebCore4Page15backForwardListEv
+__ZNK7WebCore4Page15visibilityStateEv
 __ZNK7WebCore4Page16hasSeenAnyPluginEv
 __ZNK7WebCore4Page17viewportArgumentsEv
 __ZNK7WebCore4Page34inLowQualityImageInterpolationModeEv

Modified: trunk/Source/WebKit/mac/ChangeLog (152578 => 152579)


--- trunk/Source/WebKit/mac/ChangeLog	2013-07-11 22:27:04 UTC (rev 152578)
+++ trunk/Source/WebKit/mac/ChangeLog	2013-07-11 22:33:11 UTC (rev 152579)
@@ -1,3 +1,15 @@
+2013-07-11  Dan Bernstein  <[email protected]>
+
+        [mac] No API for getting the page visibility state of a WebView
+        https://bugs.webkit.org/show_bug.cgi?id=118578
+
+        Reviewed by Simon Fraser.
+
+        * WebView/WebView.mm:
+        (kit): Added. Converts from WebCore::PageVisibilityState to WebPageVisibilityState.
+        (-[WebView _visibilityState]): Added.
+        * WebView/WebViewPrivate.h: Declared -_visibilityState.
+
 2013-07-11  Timothy Hatcher  <[email protected]>
 
         Revert r152267 and soft link WebInspectorUI.framework again.

Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (152578 => 152579)


--- trunk/Source/WebKit/mac/WebView/WebView.mm	2013-07-11 22:27:04 UTC (rev 152578)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm	2013-07-11 22:33:11 UTC (rev 152579)
@@ -430,6 +430,23 @@
     return PageVisibilityStateVisible;
 }
 
+static WebPageVisibilityState kit(PageVisibilityState visibilityState)
+{
+    switch (visibilityState) {
+    case PageVisibilityStateVisible:
+        return WebPageVisibilityStateVisible;
+    case PageVisibilityStateHidden:
+        return WebPageVisibilityStateHidden;
+    case PageVisibilityStatePrerender:
+        return WebPageVisibilityStatePrerender;
+    case PageVisibilityStateUnloaded:
+        return WebPageVisibilityStateUnloaded;
+    }
+
+    ASSERT_NOT_REACHED();
+    return WebPageVisibilityStateVisible;
+}
+
 @interface WebView (WebFileInternal)
 - (float)_deviceScaleFactor;
 - (BOOL)_isLoading;
@@ -2951,6 +2968,15 @@
     return kitLayoutMilestones(page->requestedLayoutMilestones());
 }
 
+- (WebPageVisibilityState)_visibilityState
+{
+#if ENABLE(PAGE_VISIBILITY_API) || ENABLE(HIDDEN_PAGE_DOM_TIMER_THROTTLING)
+    if (_private->page)
+        return kit(_private->page->visibilityState());
+#endif
+    return WebPageVisibilityStateVisible;
+}
+
 - (void)_setVisibilityState:(WebPageVisibilityState)visibilityState isInitialState:(BOOL)isInitialState
 {
 #if ENABLE(PAGE_VISIBILITY_API) || ENABLE(HIDDEN_PAGE_DOM_TIMER_THROTTLING)

Modified: trunk/Source/WebKit/mac/WebView/WebViewPrivate.h (152578 => 152579)


--- trunk/Source/WebKit/mac/WebView/WebViewPrivate.h	2013-07-11 22:27:04 UTC (rev 152578)
+++ trunk/Source/WebKit/mac/WebView/WebViewPrivate.h	2013-07-11 22:33:11 UTC (rev 152579)
@@ -584,6 +584,7 @@
 - (void)_listenForLayoutMilestones:(WebLayoutMilestones)layoutMilestones;
 - (WebLayoutMilestones)_layoutMilestones;
 
+- (WebPageVisibilityState)_visibilityState;
 - (void)_setVisibilityState:(WebPageVisibilityState)visibilityState isInitialState:(BOOL)isInitialState;
 
 // Whether the column-break-{before,after} properties are respected instead of the
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to