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

Side by Side Diff: chrome/browser/renderer_host/render_widget_host_view_mac.mm

Issue 118420: Adds kind-of-live thumbnail generation for a potential tab switcher. This... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 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
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_host_view_mac.h" 5 #include "chrome/browser/renderer_host/render_widget_host_view_mac.h"
6 6
7 #include "base/histogram.h" 7 #include "base/histogram.h"
8 #include "base/sys_string_conversions.h" 8 #include "base/sys_string_conversions.h"
9 #include "chrome/browser/browser_trial.h" 9 #include "chrome/browser/browser_trial.h"
10 #include "chrome/browser/renderer_host/backing_store.h" 10 #include "chrome/browser/renderer_host/backing_store.h"
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
260 if (tooltip_text_.length() > kMaxTooltipLength) 260 if (tooltip_text_.length() > kMaxTooltipLength)
261 tooltip_text_ = tooltip_text_.substr(0, kMaxTooltipLength); 261 tooltip_text_ = tooltip_text_.substr(0, kMaxTooltipLength);
262 262
263 NSString* tooltip_nsstring = base::SysWideToNSString(tooltip_text_); 263 NSString* tooltip_nsstring = base::SysWideToNSString(tooltip_text_);
264 [cocoa_view_ setToolTip:tooltip_nsstring]; 264 [cocoa_view_ setToolTip:tooltip_nsstring];
265 } 265 }
266 } 266 }
267 267
268 BackingStore* RenderWidgetHostViewMac::AllocBackingStore( 268 BackingStore* RenderWidgetHostViewMac::AllocBackingStore(
269 const gfx::Size& size) { 269 const gfx::Size& size) {
270 return new BackingStore(size); 270 return new BackingStore(render_widget_host_, size);
271 } 271 }
272 272
273 // Display a popup menu for WebKit using Cocoa widgets. 273 // Display a popup menu for WebKit using Cocoa widgets.
274 void RenderWidgetHostViewMac::ShowPopupWithItems( 274 void RenderWidgetHostViewMac::ShowPopupWithItems(
275 gfx::Rect bounds, 275 gfx::Rect bounds,
276 int item_height, 276 int item_height,
277 int selected_item, 277 int selected_item,
278 const std::vector<WebMenuItem>& items) { 278 const std::vector<WebMenuItem>& items) {
279 NSRect view_rect = [cocoa_view_ bounds]; 279 NSRect view_rect = [cocoa_view_ bounds];
280 NSRect parent_rect = [parent_view_ bounds]; 280 NSRect parent_rect = [parent_view_ bounds];
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
378 renderWidgetHostView_->render_widget_host_->WasResized(); 378 renderWidgetHostView_->render_widget_host_->WasResized();
379 } 379 }
380 380
381 - (void)drawRect:(NSRect)dirtyRect { 381 - (void)drawRect:(NSRect)dirtyRect {
382 DCHECK(renderWidgetHostView_->render_widget_host_->process()->channel()); 382 DCHECK(renderWidgetHostView_->render_widget_host_->process()->channel());
383 DCHECK(!renderWidgetHostView_->about_to_validate_and_paint_); 383 DCHECK(!renderWidgetHostView_->about_to_validate_and_paint_);
384 384
385 renderWidgetHostView_->invalid_rect_ = dirtyRect; 385 renderWidgetHostView_->invalid_rect_ = dirtyRect;
386 renderWidgetHostView_->about_to_validate_and_paint_ = true; 386 renderWidgetHostView_->about_to_validate_and_paint_ = true;
387 BackingStore* backing_store = 387 BackingStore* backing_store =
388 renderWidgetHostView_->render_widget_host_->GetBackingStore(); 388 renderWidgetHostView_->render_widget_host_->GetBackingStore(true);
389 skia::PlatformCanvas* canvas = backing_store->canvas(); 389 skia::PlatformCanvas* canvas = backing_store->canvas();
390 renderWidgetHostView_->about_to_validate_and_paint_ = false; 390 renderWidgetHostView_->about_to_validate_and_paint_ = false;
391 dirtyRect = renderWidgetHostView_->invalid_rect_; 391 dirtyRect = renderWidgetHostView_->invalid_rect_;
392 392
393 if (backing_store) { 393 if (backing_store) {
394 gfx::Rect damaged_rect([self NSRectToRect:dirtyRect]); 394 gfx::Rect damaged_rect([self NSRectToRect:dirtyRect]);
395 395
396 gfx::Rect bitmap_rect(0, 0, 396 gfx::Rect bitmap_rect(0, 0,
397 backing_store->size().width(), 397 backing_store->size().width(),
398 backing_store->size().height()); 398 backing_store->size().height());
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
452 452
453 - (BOOL)acceptsFirstResponder { 453 - (BOOL)acceptsFirstResponder {
454 return canBeKeyView_; 454 return canBeKeyView_;
455 } 455 }
456 456
457 - (BOOL)becomeFirstResponder { 457 - (BOOL)becomeFirstResponder {
458 if (![self superview]) { 458 if (![self superview]) {
459 // We're dead, so becoming first responder is probably a bad idea. 459 // We're dead, so becoming first responder is probably a bad idea.
460 return NO; 460 return NO;
461 } 461 }
462 462
463 renderWidgetHostView_->render_widget_host_->Focus(); 463 renderWidgetHostView_->render_widget_host_->Focus();
464 return YES; 464 return YES;
465 } 465 }
466 466
467 - (BOOL)resignFirstResponder { 467 - (BOOL)resignFirstResponder {
468 if (![self superview]) { 468 if (![self superview]) {
469 // We're dead, so touching renderWidgetHostView_ is probably a bad 469 // We're dead, so touching renderWidgetHostView_ is probably a bad
470 // idea. 470 // idea.
471 return YES; 471 return YES;
472 } 472 }
473 473
474 if (closeOnDeactivate_) 474 if (closeOnDeactivate_)
475 renderWidgetHostView_->KillSelf(); 475 renderWidgetHostView_->KillSelf();
476 476
477 renderWidgetHostView_->render_widget_host_->Blur(); 477 renderWidgetHostView_->render_widget_host_->Blur();
478 478
479 return YES; 479 return YES;
480 } 480 }
481 481
482 @end 482 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698