Title: [137185] trunk/Source
- Revision
- 137185
- Author
- [email protected]
- Date
- 2012-12-10 11:05:44 -0800 (Mon, 10 Dec 2012)
Log Message
Source/WebCore: Make hiddenPageDomTimerInterval a setting
https://bugs.webkit.org/show_bug.cgi?id=104555
Patch by Parth Patel <[email protected]> on 2012-12-10
Reviewed by Yong Li.
Make hiddenPageDomTimerInterval a setting so client can customize it.
No new tests are needed.
* page/Page.cpp:
(WebCore):
(WebCore::Page::setVisibilityState):
* page/Settings.cpp:
(WebCore):
(WebCore::Settings::setHiddenPageDOMTimerAlignmentInterval):
(WebCore::Settings::hiddenPageDOMTimerAlignmentInterval):
* page/Settings.h:
(Settings):
Source/WebKit/blackberry: [BlackBerry] Make hiddenPageDomTimerInterval a setting
https://bugs.webkit.org/show_bug.cgi?id=104555
Patch by Parth Patel <[email protected]> on 2012-12-10
Reviewed by Yong Li.
HiddenPageDomTimerInterval in setting in webcore can be utilized by browser application
when needed.
* Api/BlackBerryGlobal.cpp:
(BlackBerry::WebKit::globalInitialize):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (137184 => 137185)
--- trunk/Source/WebCore/ChangeLog 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebCore/ChangeLog 2012-12-10 19:05:44 UTC (rev 137185)
@@ -1,3 +1,24 @@
+2012-12-10 Parth Patel <[email protected]>
+
+ Make hiddenPageDomTimerInterval a setting
+ https://bugs.webkit.org/show_bug.cgi?id=104555
+
+ Reviewed by Yong Li.
+
+ Make hiddenPageDomTimerInterval a setting so client can customize it.
+
+ No new tests are needed.
+
+ * page/Page.cpp:
+ (WebCore):
+ (WebCore::Page::setVisibilityState):
+ * page/Settings.cpp:
+ (WebCore):
+ (WebCore::Settings::setHiddenPageDOMTimerAlignmentInterval):
+ (WebCore::Settings::hiddenPageDOMTimerAlignmentInterval):
+ * page/Settings.h:
+ (Settings):
+
2012-12-10 [email protected] <[email protected]>
[WinCairo] Compile fix in ImageCairoWin.cpp
Modified: trunk/Source/WebCore/page/Page.cpp (137184 => 137185)
--- trunk/Source/WebCore/page/Page.cpp 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebCore/page/Page.cpp 2012-12-10 19:05:44 UTC (rev 137185)
@@ -82,7 +82,6 @@
namespace WebCore {
static HashSet<Page*>* allPages;
-static const double hiddenPageTimerAlignmentInterval = 1.0; // once a second
DEFINE_DEBUG_ONLY_GLOBAL(WTF::RefCountedLeakCounter, pageCounter, ("Page"));
@@ -1129,7 +1128,7 @@
#if ENABLE(HIDDEN_PAGE_DOM_TIMER_THROTTLING)
if (visibilityState == WebCore::PageVisibilityStateHidden)
- setTimerAlignmentInterval(hiddenPageTimerAlignmentInterval);
+ setTimerAlignmentInterval(Settings::hiddenPageDOMTimerAlignmentInterval());
else
setTimerAlignmentInterval(Settings::defaultDOMTimerAlignmentInterval());
#if !ENABLE(PAGE_VISIBILITY_API)
Modified: trunk/Source/WebCore/page/Settings.cpp (137184 => 137185)
--- trunk/Source/WebCore/page/Settings.cpp 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebCore/page/Settings.cpp 2012-12-10 19:05:44 UTC (rev 137185)
@@ -83,6 +83,7 @@
double Settings::gDefaultMinDOMTimerInterval = 0.010; // 10 milliseconds
double Settings::gDefaultDOMTimerAlignmentInterval = 0;
+double Settings::gHiddenPageDOMTimerAlignmentInterval = 1.0;
#if USE(SAFARI_THEME)
bool Settings::gShouldPaintNativeControls = true;
@@ -199,6 +200,16 @@
return adoptPtr(new Settings(page));
}
+void Settings::setHiddenPageDOMTimerAlignmentInterval(double hiddenPageDOMTimerAlignmentinterval)
+{
+ gHiddenPageDOMTimerAlignmentInterval = hiddenPageDOMTimerAlignmentinterval;
+}
+
+double Settings::hiddenPageDOMTimerAlignmentInterval()
+{
+ return gHiddenPageDOMTimerAlignmentInterval;
+}
+
#if !PLATFORM(MAC) && !PLATFORM(BLACKBERRY)
void Settings::initializeDefaultFontFamilies()
{
Modified: trunk/Source/WebCore/page/Settings.h (137184 => 137185)
--- trunk/Source/WebCore/page/Settings.h 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebCore/page/Settings.h 2012-12-10 19:05:44 UTC (rev 137185)
@@ -192,6 +192,9 @@
static void setDefaultMinDOMTimerInterval(double); // Interval specified in seconds.
static double defaultMinDOMTimerInterval();
+ static void setHiddenPageDOMTimerAlignmentInterval(double); // Interval specified in seconds.
+ static double hiddenPageDOMTimerAlignmentInterval();
+
void setMinDOMTimerInterval(double); // Per-page; initialized to default value.
double minDOMTimerInterval();
@@ -385,6 +388,8 @@
#if USE(JSC)
static bool gShouldRespectPriorityInCSSAttributeSetters;
#endif
+
+ static double gHiddenPageDOMTimerAlignmentInterval;
};
} // namespace WebCore
Modified: trunk/Source/WebKit/blackberry/Api/BlackBerryGlobal.cpp (137184 => 137185)
--- trunk/Source/WebKit/blackberry/Api/BlackBerryGlobal.cpp 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebKit/blackberry/Api/BlackBerryGlobal.cpp 2012-12-10 19:05:44 UTC (rev 137185)
@@ -57,6 +57,7 @@
return;
gIsGlobalInitialized = true;
+ WebCore::Settings::setHiddenPageDOMTimerAlignmentInterval(BlackBerry::Platform::Settings::instance()->isChromeProcess() ? 0 : 1);
#if ENABLE(BLACKBERRY_DEBUG_MEMORY)
blackberryDebugInitialize();
#endif
Modified: trunk/Source/WebKit/blackberry/ChangeLog (137184 => 137185)
--- trunk/Source/WebKit/blackberry/ChangeLog 2012-12-10 19:04:57 UTC (rev 137184)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2012-12-10 19:05:44 UTC (rev 137185)
@@ -1,3 +1,16 @@
+2012-12-10 Parth Patel <[email protected]>
+
+ [BlackBerry] Make hiddenPageDomTimerInterval a setting
+ https://bugs.webkit.org/show_bug.cgi?id=104555
+
+ Reviewed by Yong Li.
+
+ HiddenPageDomTimerInterval in setting in webcore can be utilized by browser application
+ when needed.
+
+ * Api/BlackBerryGlobal.cpp:
+ (BlackBerry::WebKit::globalInitialize):
+
2012-12-10 Nima Ghanavatian <[email protected]>
[BlackBerry] Fix warning for comparison between signed and unsigned
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes