Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(290)

Unified Diff: cc/settings.cc

Issue 11186039: Move CC switches to cc/switches.h. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Add cc to DEPS in chrome/ and content/ Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/settings.cc
diff --git a/cc/settings.cc b/cc/settings.cc
index cfdc25835d41e13c027e763da5c089ac85b5cd52..ff514d07f3a95f956640b42ad2239b3a07faefcf 100644
--- a/cc/settings.cc
+++ b/cc/settings.cc
@@ -9,42 +9,91 @@
#include "cc/switches.h"
namespace {
+static bool s_settingsInitialized = false;
+
static bool s_perTilePaintingEnabled = false;
static bool s_partialSwapEnabled = false;
static bool s_acceleratedAnimationEnabled = false;
static bool s_pageScalePinchZoomEnabled = false;
-} // namespace
+static bool s_jankInsteadOfCheckerboard = false;
+static bool s_backgroundColorInsteadOfCheckerboard = false;
+
+void reset()
+{
+ s_settingsInitialized = true;
+
+ s_perTilePaintingEnabled = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kEnablePerTilePainting);
+ s_partialSwapEnabled = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kEnablePartialSwap);
+ s_acceleratedAnimationEnabled = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kDisableThreadedAnimation);
+ s_pageScalePinchZoomEnabled = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kEnablePinchInCompositor);
+ s_jankInsteadOfCheckerboard = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kJankInsteadOfCheckerboard);
+ s_backgroundColorInsteadOfCheckerboard = CommandLine::ForCurrentProcess()->HasSwitch(cc::switches::kBackgroundColorInsteadOfCheckerboard);
+}
+
+}
namespace cc {
-bool CCSettings::perTilePaintingEnabled() { return s_perTilePaintingEnabled; }
-void CCSettings::setPerTilePaintingEnabled(bool enabled) { s_perTilePaintingEnabled = enabled; }
+bool CCSettings::perTilePaintingEnabled()
+{
+ if (!s_settingsInitialized)
+ reset();
+ return s_perTilePaintingEnabled;
+}
-bool CCSettings::partialSwapEnabled() { return s_partialSwapEnabled; }
-void CCSettings::setPartialSwapEnabled(bool enabled) { s_partialSwapEnabled = enabled; }
+bool CCSettings::partialSwapEnabled()
+{
+ if (!s_settingsInitialized)
+ reset();
+ return s_partialSwapEnabled;
+}
-bool CCSettings::acceleratedAnimationEnabled() { return s_acceleratedAnimationEnabled; }
-void CCSettings::setAcceleratedAnimationEnabled(bool enabled) { s_acceleratedAnimationEnabled = enabled; }
+bool CCSettings::acceleratedAnimationEnabled()
+{
+ if (!s_settingsInitialized)
+ reset();
+ return s_acceleratedAnimationEnabled;
+}
-bool CCSettings::pageScalePinchZoomEnabled() { return s_pageScalePinchZoomEnabled; }
-void CCSettings::setPageScalePinchZoomEnabled(bool enabled) { s_pageScalePinchZoomEnabled = enabled; }
+bool CCSettings::pageScalePinchZoomEnabled()
+{
+ if (!s_settingsInitialized)
+ reset();
+ return s_pageScalePinchZoomEnabled;
+}
bool CCSettings::jankInsteadOfCheckerboard()
{
- return CommandLine::ForCurrentProcess()->HasSwitch(switches::kJankInsteadOfCheckerboard);
+ if (!s_settingsInitialized)
+ reset();
+ return s_jankInsteadOfCheckerboard;
}
bool CCSettings::backgroundColorInsteadOfCheckerboard()
{
- return CommandLine::ForCurrentProcess()->HasSwitch(switches::kBackgroundColorInsteadOfCheckerboard);
+ if (!s_settingsInitialized)
+ reset();
+ return s_backgroundColorInsteadOfCheckerboard;
+}
+
+void CCSettings::resetForTest()
+{
+ reset();
+}
+
+void CCSettings::setPartialSwapEnabledForTest(bool enabled)
+{
+ s_partialSwapEnabled = enabled;
+}
+
+void CCSettings::setAcceleratedAnimationEnabledForTest(bool enabled)
+{
+ s_acceleratedAnimationEnabled = enabled;
}
-void CCSettings::reset()
+void CCSettings::setPageScalePinchZoomEnabledForTest(bool enabled)
{
- s_perTilePaintingEnabled = false;
- s_partialSwapEnabled = false;
- s_acceleratedAnimationEnabled = false;
- s_pageScalePinchZoomEnabled = false;
+ s_pageScalePinchZoomEnabled = enabled;
}
} // namespace cc

Powered by Google App Engine
This is Rietveld 408576698