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

Side by Side Diff: chrome/browser/renderer_host/render_widget_helper.cc

Issue 155133: Windowed plugins like Flash would cause the hung plugin dialog to show up whe... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 5 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
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 #include "chrome/browser/renderer_host/render_widget_helper.h" 5 #include "chrome/browser/renderer_host/render_widget_helper.h"
6 6
7 #include "base/eintr_wrapper.h" 7 #include "base/eintr_wrapper.h"
8 #include "base/thread.h" 8 #include "base/thread.h"
9 #include "chrome/browser/browser_process.h" 9 #include "chrome/browser/browser_process.h"
10 #include "chrome/browser/renderer_host/render_process_host.h" 10 #include "chrome/browser/renderer_host/render_process_host.h"
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 activatable)); 258 activatable));
259 } 259 }
260 260
261 void RenderWidgetHelper::OnCreateWidgetOnUI( 261 void RenderWidgetHelper::OnCreateWidgetOnUI(
262 int opener_id, int route_id, bool activatable) { 262 int opener_id, int route_id, bool activatable) {
263 RenderViewHost* host = RenderViewHost::FromID(render_process_id_, opener_id); 263 RenderViewHost* host = RenderViewHost::FromID(render_process_id_, opener_id);
264 if (host) 264 if (host)
265 host->CreateNewWidget(route_id, activatable); 265 host->CreateNewWidget(route_id, activatable);
266 } 266 }
267 267
268 void RenderWidgetHelper::SignalModalDialogEvent(int routing_id) {
269 ui_loop()->PostTask(FROM_HERE,
270 NewRunnableMethod(
271 this, &RenderWidgetHelper::SignalModalDialogEventOnUI,
272 routing_id));
273 }
274
275 void RenderWidgetHelper::SignalModalDialogEventOnUI(int routing_id) {
276 RenderViewHost* host = RenderViewHost::FromID(render_process_id_,
277 routing_id);
278 if (host) {
279 host->SignalModalDialogEvent();
280 }
281 }
282
283 void RenderWidgetHelper::ResetModalDialogEvent(int routing_id) {
284 ui_loop()->PostTask(FROM_HERE,
285 NewRunnableMethod(
286 this, &RenderWidgetHelper::ResetModalDialogEventOnUI,
287 routing_id));
288 }
289
290 void RenderWidgetHelper::ResetModalDialogEventOnUI(int routing_id) {
291 RenderViewHost* host = RenderViewHost::FromID(render_process_id_,
292 routing_id);
293 if (host) {
294 host->ResetModalDialogEvent();
295 }
296 }
297
268 #if defined(OS_MACOSX) 298 #if defined(OS_MACOSX)
269 TransportDIB* RenderWidgetHelper::MapTransportDIB(TransportDIB::Id dib_id) { 299 TransportDIB* RenderWidgetHelper::MapTransportDIB(TransportDIB::Id dib_id) {
270 AutoLock locked(allocated_dibs_lock_); 300 AutoLock locked(allocated_dibs_lock_);
271 301
272 const std::map<TransportDIB::Id, int>::iterator 302 const std::map<TransportDIB::Id, int>::iterator
273 i = allocated_dibs_.find(dib_id); 303 i = allocated_dibs_.find(dib_id);
274 if (i == allocated_dibs_.end()) 304 if (i == allocated_dibs_.end())
275 return NULL; 305 return NULL;
276 306
277 base::FileDescriptor fd(dup(i->second), true); 307 base::FileDescriptor fd(dup(i->second), true);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 342
313 void RenderWidgetHelper::ClearAllocatedDIBs() { 343 void RenderWidgetHelper::ClearAllocatedDIBs() {
314 for (std::map<TransportDIB::Id, int>::iterator 344 for (std::map<TransportDIB::Id, int>::iterator
315 i = allocated_dibs_.begin(); i != allocated_dibs_.end(); ++i) { 345 i = allocated_dibs_.begin(); i != allocated_dibs_.end(); ++i) {
316 HANDLE_EINTR(close(i->second)); 346 HANDLE_EINTR(close(i->second));
317 } 347 }
318 348
319 allocated_dibs_.clear(); 349 allocated_dibs_.clear();
320 } 350 }
321 #endif 351 #endif
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/render_widget_helper.h ('k') | chrome/browser/renderer_host/resource_message_filter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698