Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

[chromium] Rollout r100751, this mechanism does not work and is very …

…slow


https://bugs.webkit.org/show_bug.cgi?id=77055

Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
but it still triggers a very slow codepath and triggers races on some platforms.

Patch by James Robinson <jamesr@chromium.org> on 2012-01-25

Source/WebCore:

* platform/PlatformScreen.h:
(WebCore):
* platform/chromium/PlatformScreenChromium.cpp:
* platform/chromium/PlatformSupport.h:
(PlatformSupport):
():
* platform/graphics/chromium/cc/CCLayerTreeHost.h:
(WebCore::CCSettings::CCSettings):
(CCSettings):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeImplOnImplThread):

Source/WebKit/chromium:

* public/WebScreenInfo.h:
(WebScreenInfo):
(WebKit::WebScreenInfo::WebScreenInfo):
* src/PlatformSupport.cpp:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
* tests/CCLayerTreeHostTest.cpp:
(WTF::CCLayerTreeHostTest::runTest):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@105961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information...
commit 4f6abf0a9864537da7c529d6d45c5e76cc8d5221 1 parent eb6104c
commit-queue authored
20 Source/WebCore/ChangeLog
View
@@ -1,3 +1,23 @@
+2012-01-25 James Robinson <jamesr@chromium.org>
+
+ [chromium] Rollout r100751, this mechanism does not work and is very slow
+ https://bugs.webkit.org/show_bug.cgi?id=77055
+
+ Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
+ but it still triggers a very slow codepath and triggers races on some platforms.
+
+ * platform/PlatformScreen.h:
+ (WebCore):
+ * platform/chromium/PlatformScreenChromium.cpp:
+ * platform/chromium/PlatformSupport.h:
+ (PlatformSupport):
+ ():
+ * platform/graphics/chromium/cc/CCLayerTreeHost.h:
+ (WebCore::CCSettings::CCSettings):
+ (CCSettings):
+ * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+ (WebCore::CCThreadProxy::initializeImplOnImplThread):
+
2012-01-25 Mark Rowe <mrowe@apple.com>
Reapply Daniel Bates's build fix from r105847 after the exact same issue was reintroduced in r105930.
5 Source/WebCore/platform/PlatformScreen.h
View
@@ -51,11 +51,6 @@ namespace WebCore {
FloatRect screenRect(Widget*);
FloatRect screenAvailableRect(Widget*);
-#if PLATFORM(CHROMIUM)
- // Measured in frames per second. 0 if the refresh rate is unknown, or not applicable.
- double screenRefreshRate(Widget*);
-#endif
-
#if PLATFORM(MAC)
NSScreen *screenForWindow(NSWindow *);
5 Source/WebCore/platform/chromium/PlatformScreenChromium.cpp
View
@@ -71,9 +71,4 @@ FloatRect screenAvailableRect(Widget* widget)
return PlatformSupport::screenAvailableRect(widget);
}
-double screenRefreshRate(Widget* widget)
-{
- return PlatformSupport::screenRefreshRate(widget);
-}
-
} // namespace WebCore
1  Source/WebCore/platform/chromium/PlatformSupport.h
View
@@ -247,7 +247,6 @@ class PlatformSupport {
static bool screenIsMonochrome(Widget*);
static IntRect screenRect(Widget*);
static IntRect screenAvailableRect(Widget*);
- static double screenRefreshRate(Widget*);
// SharedTimers -------------------------------------------------------
static void setSharedTimerFiredFunction(void (*func)());
3  Source/WebCore/platform/graphics/chromium/cc/CCThreadProxy.cpp
View
@@ -533,8 +533,7 @@ void CCThreadProxy::initializeImplOnImplThread(CCCompletionEvent* completion)
TRACE_EVENT("CCThreadProxy::initializeImplOnImplThread", this, 0);
ASSERT(isImplThread());
m_layerTreeHostImpl = m_layerTreeHost->createLayerTreeHostImpl(this);
- ASSERT(m_layerTreeHostImpl->settings().refreshRate > 0);
- const double displayRefreshIntervalMs = 1000.0 / m_layerTreeHostImpl->settings().refreshRate;
+ const double displayRefreshIntervalMs = 1000.0 / 60.0;
OwnPtr<CCFrameRateController> frameRateController = adoptPtr(new CCFrameRateController(CCDelayBasedTimeSource::create(displayRefreshIntervalMs, CCProxy::implThread())));
m_schedulerOnImplThread = CCScheduler::create(this, frameRateController.release());
m_schedulerOnImplThread->setVisible(m_layerTreeHostImpl->visible());
17 Source/WebKit/chromium/ChangeLog
View
@@ -1,3 +1,20 @@
+2012-01-25 James Robinson <jamesr@chromium.org>
+
+ [chromium] Rollout r100751, this mechanism does not work and is very slow
+ https://bugs.webkit.org/show_bug.cgi?id=77055
+
+ Unreviewed rollout of http://trac.webkit.org/changeset/100751. The refresh rate mechanism is not implemented,
+ but it still triggers a very slow codepath and triggers races on some platforms.
+
+ * public/WebScreenInfo.h:
+ (WebScreenInfo):
+ (WebKit::WebScreenInfo::WebScreenInfo):
+ * src/PlatformSupport.cpp:
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
+ * tests/CCLayerTreeHostTest.cpp:
+ (WTF::CCLayerTreeHostTest::runTest):
+
2012-01-25 Eric Uhrhane <ericu@chromium.org>
Add full support for filesystem URLs.
6 Source/WebKit/chromium/public/WebScreenInfo.h
View
@@ -69,16 +69,12 @@ struct WebScreenInfo {
// some of the rectangle's coordinates may be negative values".
WebRect availableRect;
- // Measured in frames per second. 0 if the rate is unknown or not applicable.
- double refreshRate;
-
WebScreenInfo()
: horizontalDPI(0)
, verticalDPI(0)
, depth(0)
, depthPerComponent(0)
- , isMonochrome(false)
- , refreshRate(0) { }
+ , isMonochrome(false) { }
};
} // namespace WebKit
8 Source/WebKit/chromium/src/PlatformSupport.cpp
View
@@ -1108,14 +1108,6 @@ IntRect PlatformSupport::screenAvailableRect(Widget* widget)
return client->screenInfo().availableRect;
}
-double PlatformSupport::screenRefreshRate(Widget* widget)
-{
- WebWidgetClient* client = toWebWidgetClient(widget);
- if (!client)
- return 0;
- return client->screenInfo().refreshRate;
-}
-
bool PlatformSupport::popupsAllowed(NPP npp)
{
// FIXME: Give the embedder a way to control this.
8 Source/WebKit/chromium/src/WebViewImpl.cpp
View
@@ -87,7 +87,6 @@
#include "PlatformContextSkia.h"
#include "PlatformKeyboardEvent.h"
#include "PlatformMouseEvent.h"
-#include "PlatformScreen.h"
#include "PlatformThemeChromiumLinux.h"
#include "PlatformWheelEvent.h"
#include "PopupContainer.h"
@@ -3010,18 +3009,11 @@ void WebViewImpl::setIsAcceleratedCompositingActive(bool active)
} else {
TRACE_EVENT("WebViewImpl::setIsAcceleratedCompositingActive(true)", this, 0);
- static const double defaultRefreshRate = 60.0;
-
WebCore::CCSettings ccSettings;
ccSettings.acceleratePainting = page()->settings()->acceleratedDrawingEnabled();
ccSettings.compositeOffscreen = settings()->compositeToTextureEnabled();
ccSettings.showFPSCounter = settings()->showFPSCounter();
ccSettings.showPlatformLayerTree = settings()->showPlatformLayerTree();
- ccSettings.refreshRate = screenRefreshRate(page()->mainFrame()->view());
-
- ASSERT(ccSettings.refreshRate >= 0);
- if (!ccSettings.refreshRate)
- ccSettings.refreshRate = defaultRefreshRate;
ccSettings.perTilePainting = page()->settings()->perTileDrawingEnabled();
ccSettings.partialSwapEnabled = page()->settings()->partialSwapEnabled();
2  Source/WebKit/chromium/tests/CCLayerTreeHostTest.cpp
View
@@ -396,8 +396,6 @@ class CCLayerTreeHostTest : public testing::Test, TestHooks {
virtual void runTest(bool threaded)
{
- m_settings.refreshRate = 100.0;
-
if (threaded) {
m_webThread = adoptPtr(webKitPlatformSupport()->createThread("CCLayerTreeHostTest"));
WebCompositor::initialize(m_webThread.get());
Please sign in to comment.
Something went wrong with that request. Please try again.