Diff
Modified: trunk/Source/WebKit/chromium/ChangeLog (126932 => 126933)
--- trunk/Source/WebKit/chromium/ChangeLog 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/ChangeLog 2012-08-28 22:14:40 UTC (rev 126933)
@@ -1,3 +1,26 @@
+2012-08-28 Sheriff Bot <[email protected]>
+
+ Unreviewed, rolling out r126344.
+ http://trac.webkit.org/changeset/126344
+ https://bugs.webkit.org/show_bug.cgi?id=95253
+
+ This change is no longer needed (Requested by abarth on
+ #webkit).
+
+ * public/WebWidget.h:
+ (WebKit::WebWidget::paint):
+ * src/WebPagePopupImpl.cpp:
+ (WebKit::WebPagePopupImpl::paint):
+ * src/WebPagePopupImpl.h:
+ (WebPagePopupImpl):
+ * src/WebPopupMenuImpl.cpp:
+ (WebKit::WebPopupMenuImpl::paint):
+ * src/WebPopupMenuImpl.h:
+ * src/WebViewImpl.cpp:
+ (WebKit::WebViewImpl::paint):
+ * src/WebViewImpl.h:
+ (WebViewImpl):
+
2012-08-28 Dominic Mazzoni <[email protected]>
AX: Crash due to object getting deleted inside updateBackingStore
Modified: trunk/Source/WebKit/chromium/public/WebWidget.h (126932 => 126933)
--- trunk/Source/WebKit/chromium/public/WebWidget.h 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/public/WebWidget.h 2012-08-28 22:14:40 UTC (rev 126933)
@@ -41,7 +41,6 @@
#define WEBKIT_HAS_NEW_FULLSCREEN_API 1
#define WEBWIDGET_HAS_SETCOMPOSITORSURFACEREADY 1
-#define WEBWIDGET_HAS_PAINT_OPTIONS 1
namespace WebKit {
@@ -91,21 +90,6 @@
// and it may result in calls to WebWidgetClient::didInvalidateRect.
virtual void layout() { }
- enum PaintOptions {
- // Attempt to fulfill the painting request by reading back from the
- // compositor, assuming we're using a compositor to render.
- ReadbackFromCompositorIfAvailable,
-
- // Force the widget to rerender onto the canvas using software. This
- // mode ignores 3d transforms and ignores GPU-resident content, such
- // as video, canvas, and WebGL.
- //
- // Note: This option exists on OS(ANDROID) and will hopefully be
- // removed once the link disambiguation feature renders using
- // the compositor.
- ForceSoftwareRenderingAndIgnoreGPUResidentContent,
- };
-
// Called to paint the rectangular region within the WebWidget
// onto the specified canvas at (viewPort.x,viewPort.y). You MUST call
// Layout before calling this method. It is okay to call paint
@@ -113,7 +97,7 @@
// changes are made to the WebWidget (e.g., once events are
// processed, it should be assumed that another call to layout is
// warranted before painting again).
- virtual void paint(WebCanvas*, const WebRect& viewPort, PaintOptions = ReadbackFromCompositorIfAvailable) { }
+ virtual void paint(WebCanvas*, const WebRect& viewPort) { }
// In non-threaded compositing mode, triggers compositing of the current
// layers onto the screen. You MUST call Layout before calling this method,
Modified: trunk/Source/WebKit/chromium/src/WebPagePopupImpl.cpp (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebPagePopupImpl.cpp 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebPagePopupImpl.cpp 2012-08-28 22:14:40 UTC (rev 126933)
@@ -225,7 +225,7 @@
PageWidgetDelegate::layout(m_page.get());
}
-void WebPagePopupImpl::paint(WebCanvas* canvas, const WebRect& rect, PaintOptions)
+void WebPagePopupImpl::paint(WebCanvas* canvas, const WebRect& rect)
{
PageWidgetDelegate::paint(m_page.get(), 0, canvas, rect, PageWidgetDelegate::Opaque);
}
Modified: trunk/Source/WebKit/chromium/src/WebPagePopupImpl.h (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebPagePopupImpl.h 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebPagePopupImpl.h 2012-08-28 22:14:40 UTC (rev 126933)
@@ -72,7 +72,7 @@
virtual void setCompositorSurfaceReady() OVERRIDE;
virtual void composite(bool) OVERRIDE;
virtual void layout() OVERRIDE;
- virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable) OVERRIDE;
+ virtual void paint(WebCanvas*, const WebRect&) OVERRIDE;
virtual void resize(const WebSize&) OVERRIDE;
virtual void close() OVERRIDE;
virtual bool handleInputEvent(const WebInputEvent&) OVERRIDE;
Modified: trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.cpp 2012-08-28 22:14:40 UTC (rev 126933)
@@ -193,7 +193,7 @@
{
}
-void WebPopupMenuImpl::paint(WebCanvas* canvas, const WebRect& rect, PaintOptions)
+void WebPopupMenuImpl::paint(WebCanvas* canvas, const WebRect& rect)
{
if (!m_widget)
return;
Modified: trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.h (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.h 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebPopupMenuImpl.h 2012-08-28 22:14:40 UTC (rev 126933)
@@ -73,7 +73,7 @@
virtual void willEndLiveResize() OVERRIDE;
virtual void animate(double frameBeginTime) OVERRIDE;
virtual void layout() OVERRIDE;
- virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable) OVERRIDE;
+ virtual void paint(WebCanvas*, const WebRect&) OVERRIDE;
virtual void themeChanged() OVERRIDE;
virtual void setCompositorSurfaceReady() OVERRIDE;
virtual void composite(bool finish) OVERRIDE;
Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp 2012-08-28 22:14:40 UTC (rev 126933)
@@ -1738,15 +1738,9 @@
}
#endif
-void WebViewImpl::paint(WebCanvas* canvas, const WebRect& rect, PaintOptions option)
+void WebViewImpl::paint(WebCanvas* canvas, const WebRect& rect)
{
-#if !OS(ANDROID)
- // ReadbackFromCompositorIfAvailable is the only option available on non-Android.
- // Ideally, Android would always use ReadbackFromCompositorIfAvailable as well.
- ASSERT(option == ReadbackFromCompositorIfAvailable);
-#endif
-
- if (option == ReadbackFromCompositorIfAvailable && isAcceleratedCompositingActive()) {
+ if (isAcceleratedCompositingActive()) {
#if USE(ACCELERATED_COMPOSITING)
// If a canvas was passed in, we use it to grab a copy of the
// freshly-rendered pixels.
@@ -1758,24 +1752,12 @@
}
#endif
} else {
- FrameView* view = page()->mainFrame()->view();
- PaintBehavior oldPaintBehavior = view->paintBehavior();
- if (isAcceleratedCompositingActive()) {
- ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);
- view->setPaintBehavior(oldPaintBehavior | PaintBehaviorFlattenCompositingLayers);
- }
-
double paintStart = currentTime();
PageWidgetDelegate::paint(m_page.get(), pageOverlays(), canvas, rect, isTransparent() ? PageWidgetDelegate::Translucent : PageWidgetDelegate::Opaque);
double paintEnd = currentTime();
double pixelsPerSec = (rect.width * rect.height) / (paintEnd - paintStart);
WebKit::Platform::current()->histogramCustomCounts("Renderer4.SoftwarePaintDurationMS", (paintEnd - paintStart) * 1000, 0, 120, 30);
WebKit::Platform::current()->histogramCustomCounts("Renderer4.SoftwarePaintMegapixPerSecond", pixelsPerSec / 1000000, 10, 210, 30);
-
- if (isAcceleratedCompositingActive()) {
- ASSERT(option == ForceSoftwareRenderingAndIgnoreGPUResidentContent);
- view->setPaintBehavior(oldPaintBehavior);
- }
}
}
Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.h (126932 => 126933)
--- trunk/Source/WebKit/chromium/src/WebViewImpl.h 2012-08-28 21:58:35 UTC (rev 126932)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.h 2012-08-28 22:14:40 UTC (rev 126933)
@@ -144,7 +144,7 @@
virtual void setCompositorSurfaceReady();
virtual void animate(double);
virtual void layout(); // Also implements WebLayerTreeViewClient::layout()
- virtual void paint(WebCanvas*, const WebRect&, PaintOptions = ReadbackFromCompositorIfAvailable);
+ virtual void paint(WebCanvas*, const WebRect&);
virtual void themeChanged();
virtual void composite(bool finish);
virtual void setNeedsRedraw();