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

Unified Diff: content/browser/renderer_host/render_widget_host_view_mac.h

Issue 25942002: Make software compositing work on Mac. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Touch-ups Created 7 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: content/browser/renderer_host/render_widget_host_view_mac.h
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.h b/content/browser/renderer_host/render_widget_host_view_mac.h
index 11b1d973a42a88d49ce55080c73135e43280546c..a398f70e4b7f9fa3acbf832954639c668bb0c45b 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.h
+++ b/content/browser/renderer_host/render_widget_host_view_mac.h
@@ -18,6 +18,7 @@
#include "base/time/time.h"
#include "content/browser/accessibility/browser_accessibility_delegate_mac.h"
#include "content/browser/renderer_host/render_widget_host_view_base.h"
+#include "content/browser/renderer_host/software_framebuffer.h"
#include "content/common/edit_command.h"
#import "content/public/browser/render_widget_host_view_mac_base.h"
#include "ipc/ipc_sender.h"
@@ -196,6 +197,7 @@ class RenderWidgetHostImpl;
//
// RenderWidgetHostView class hierarchy described in render_widget_host_view.h.
class RenderWidgetHostViewMac : public RenderWidgetHostViewBase,
+ public SoftwareFramebufferClient,
public IPC::Sender {
public:
virtual ~RenderWidgetHostViewMac();
@@ -283,6 +285,9 @@ class RenderWidgetHostViewMac : public RenderWidgetHostViewBase,
virtual void BeginFrameSubscription(
scoped_ptr<RenderWidgetHostViewFrameSubscriber> subscriber) OVERRIDE;
virtual void EndFrameSubscription() OVERRIDE;
+ virtual void OnSwapCompositorFrame(
+ uint32 output_surface_id,
+ scoped_ptr<cc::CompositorFrame> frame) OVERRIDE;
virtual void OnAcceleratedCompositingStateChange() OVERRIDE;
virtual void OnAccessibilityEvents(
const std::vector<AccessibilityHostMsg_EventParams>& params
@@ -313,6 +318,9 @@ class RenderWidgetHostViewMac : public RenderWidgetHostViewBase,
virtual void UnhandledWheelEvent(
const WebKit::WebMouseWheelEvent& event) OVERRIDE;
+ // SoftwareFramebufferClient implementation.
+ virtual void CurrentSoftwareFrameWasDiscarded() OVERRIDE {}
+
// IPC::Sender implementation.
virtual bool Send(IPC::Message* message) OVERRIDE;
@@ -412,6 +420,9 @@ class RenderWidgetHostViewMac : public RenderWidgetHostViewBase,
scoped_ptr<CompositingIOSurfaceMac> compositing_iosurface_;
scoped_refptr<CompositingIOSurfaceContext> compositing_iosurface_context_;
+ // Framebuffer for software compositing.
+ scoped_ptr<SoftwareFramebuffer> software_framebuffer_;
+
// Whether to allow overlapping views.
bool allow_overlapping_views_;

Powered by Google App Engine
This is Rietveld 408576698