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

Side by Side Diff: content/renderer/render_widget.h

Issue 7136001: GPU compositing surface handle is no longer sent to renderer process. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/renderer/render_view.cc ('k') | content/renderer/render_widget.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_RENDERER_RENDER_WIDGET_H_ 5 #ifndef CONTENT_RENDERER_RENDER_WIDGET_H_
6 #define CONTENT_RENDERER_RENDER_WIDGET_H_ 6 #define CONTENT_RENDERER_RENDER_WIDGET_H_
7 #pragma once 7 #pragma once
8 8
9 #include <vector> 9 #include <vector>
10 10
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 static RenderWidget* Create(int32 opener_id, 70 static RenderWidget* Create(int32 opener_id,
71 RenderThreadBase* render_thread, 71 RenderThreadBase* render_thread,
72 WebKit::WebPopupType popup_type); 72 WebKit::WebPopupType popup_type);
73 73
74 // Creates a WebWidget based on the popup type. 74 // Creates a WebWidget based on the popup type.
75 static WebKit::WebWidget* CreateWebWidget(RenderWidget* render_widget); 75 static WebKit::WebWidget* CreateWebWidget(RenderWidget* render_widget);
76 76
77 // The compositing surface assigned by the RenderWidgetHost 77 // The compositing surface assigned by the RenderWidgetHost
78 // (or RenderViewHost). Will be gfx::kNullPluginWindow if not assigned yet, 78 // (or RenderViewHost). Will be gfx::kNullPluginWindow if not assigned yet,
79 // in which case we should not create any GPU command buffers with it. 79 // in which case we should not create any GPU command buffers with it.
80 gfx::PluginWindowHandle compositing_surface() const {
81 return compositing_surface_;
82 }
83
84 // The routing ID assigned by the RenderProcess. Will be MSG_ROUTING_NONE if 80 // The routing ID assigned by the RenderProcess. Will be MSG_ROUTING_NONE if
85 // not yet assigned a view ID, in which case, the process MUST NOT send 81 // not yet assigned a view ID, in which case, the process MUST NOT send
86 // messages with this ID to the parent. 82 // messages with this ID to the parent.
87 int32 routing_id() const { 83 int32 routing_id() const {
88 return routing_id_; 84 return routing_id_;
89 } 85 }
90 86
91 // May return NULL when the window is closing. 87 // May return NULL when the window is closing.
92 WebKit::WebWidget* webwidget() const { return webwidget_; } 88 WebKit::WebWidget* webwidget() const { return webwidget_; }
93 gfx::NativeViewId host_window() const { return host_window_; } 89 gfx::NativeViewId host_window() const { return host_window_; }
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 // Initializes this view with the given opener. CompleteInit must be called 142 // Initializes this view with the given opener. CompleteInit must be called
147 // later. 143 // later.
148 void Init(int32 opener_id); 144 void Init(int32 opener_id);
149 145
150 // Called by Init and subclasses to perform initialization. 146 // Called by Init and subclasses to perform initialization.
151 void DoInit(int32 opener_id, 147 void DoInit(int32 opener_id,
152 WebKit::WebWidget* web_widget, 148 WebKit::WebWidget* web_widget,
153 IPC::SyncMessage* create_widget_message); 149 IPC::SyncMessage* create_widget_message);
154 150
155 // Finishes creation of a pending view started with Init. 151 // Finishes creation of a pending view started with Init.
156 void CompleteInit(gfx::NativeViewId parent, 152 void CompleteInit(gfx::NativeViewId parent);
157 gfx::PluginWindowHandle compositing_surface);
158 153
159 // Sets whether this RenderWidget has been swapped out to be displayed by 154 // Sets whether this RenderWidget has been swapped out to be displayed by
160 // a RenderWidget in a different process. If so, no new IPC messages will be 155 // a RenderWidget in a different process. If so, no new IPC messages will be
161 // sent (only ACKs) and the process is free to exit when there are no other 156 // sent (only ACKs) and the process is free to exit when there are no other
162 // active RenderWidgets. 157 // active RenderWidgets.
163 void SetSwappedOut(bool is_swapped_out); 158 void SetSwappedOut(bool is_swapped_out);
164 159
165 // Paints the given rectangular region of the WebWidget into canvas (a 160 // Paints the given rectangular region of the WebWidget into canvas (a
166 // shared memory segment returned by AllocPaintBuf on Windows). The caller 161 // shared memory segment returned by AllocPaintBuf on Windows). The caller
167 // must ensure that the given rect fits within the bounds of the WebWidget. 162 // must ensure that the given rect fits within the bounds of the WebWidget.
(...skipping 12 matching lines...) Expand all
180 void DoDeferredClose(); 175 void DoDeferredClose();
181 void DoDeferredSetWindowRect(const WebKit::WebRect& pos); 176 void DoDeferredSetWindowRect(const WebKit::WebRect& pos);
182 177
183 // Set the background of the render widget to a bitmap. The bitmap will be 178 // Set the background of the render widget to a bitmap. The bitmap will be
184 // tiled in both directions if it isn't big enough to fill the area. This is 179 // tiled in both directions if it isn't big enough to fill the area. This is
185 // mainly intended to be used in conjuction with WebView::SetIsTransparent(). 180 // mainly intended to be used in conjuction with WebView::SetIsTransparent().
186 virtual void SetBackground(const SkBitmap& bitmap); 181 virtual void SetBackground(const SkBitmap& bitmap);
187 182
188 // RenderWidget IPC message handlers 183 // RenderWidget IPC message handlers
189 void OnClose(); 184 void OnClose();
190 void OnCreatingNewAck(gfx::NativeViewId parent, 185 void OnCreatingNewAck(gfx::NativeViewId parent);
191 gfx::PluginWindowHandle compositing_surface);
192 virtual void OnResize(const gfx::Size& new_size, 186 virtual void OnResize(const gfx::Size& new_size,
193 const gfx::Rect& resizer_rect); 187 const gfx::Rect& resizer_rect);
194 virtual void OnWasHidden(); 188 virtual void OnWasHidden();
195 virtual void OnWasRestored(bool needs_repainting); 189 virtual void OnWasRestored(bool needs_repainting);
196 virtual void OnWasSwappedOut(); 190 virtual void OnWasSwappedOut();
197 void OnUpdateRectAck(); 191 void OnUpdateRectAck();
198 void OnCreateVideoAck(int32 video_id); 192 void OnCreateVideoAck(int32 video_id);
199 void OnUpdateVideoAck(int32 video_id); 193 void OnUpdateVideoAck(int32 video_id);
200 void OnRequestMoveAck(); 194 void OnRequestMoveAck();
201 void OnHandleInputEvent(const IPC::Message& message); 195 void OnHandleInputEvent(const IPC::Message& message);
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
426 420
427 scoped_ptr<IPC::Message> pending_input_event_ack_; 421 scoped_ptr<IPC::Message> pending_input_event_ack_;
428 422
429 // Indicates if the next sequence of Char events should be suppressed or not. 423 // Indicates if the next sequence of Char events should be suppressed or not.
430 bool suppress_next_char_events_; 424 bool suppress_next_char_events_;
431 425
432 // Set to true if painting to the window is handled by the accelerated 426 // Set to true if painting to the window is handled by the accelerated
433 // compositor. 427 // compositor.
434 bool is_accelerated_compositing_active_; 428 bool is_accelerated_compositing_active_;
435 429
436 // Handle to a surface that is drawn to when accelerated compositing is
437 // active.
438 gfx::PluginWindowHandle compositing_surface_;
439
440 base::Time animation_floor_time_; 430 base::Time animation_floor_time_;
441 bool animation_update_pending_; 431 bool animation_update_pending_;
442 bool animation_task_posted_; 432 bool animation_task_posted_;
443 bool invalidation_task_posted_; 433 bool invalidation_task_posted_;
444 434
445 bool has_disable_gpu_vsync_switch_; 435 bool has_disable_gpu_vsync_switch_;
446 base::TimeTicks last_do_deferred_update_time_; 436 base::TimeTicks last_do_deferred_update_time_;
447 437
448 DISALLOW_COPY_AND_ASSIGN(RenderWidget); 438 DISALLOW_COPY_AND_ASSIGN(RenderWidget);
449 }; 439 };
450 440
451 #endif // CONTENT_RENDERER_RENDER_WIDGET_H_ 441 #endif // CONTENT_RENDERER_RENDER_WIDGET_H_
OLDNEW
« no previous file with comments | « content/renderer/render_view.cc ('k') | content/renderer/render_widget.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698