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

Side by Side Diff: chrome/browser/views/tabs/tab.cc

Issue 2862025: Canvas refactoring part 2.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 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 | « chrome/browser/views/tabs/dragged_tab_view.cc ('k') | chrome/browser/views/theme_helpers.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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/views/tabs/tab.h" 5 #include "chrome/browser/views/tabs/tab.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "app/multi_animation.h" 9 #include "app/multi_animation.h"
10 #include "app/resource_bundle.h" 10 #include "app/resource_bundle.h"
11 #include "app/slide_animation.h" 11 #include "app/slide_animation.h"
12 #include "app/throb_animation.h" 12 #include "app/throb_animation.h"
13 #include "base/utf_string_conversions.h" 13 #include "base/utf_string_conversions.h"
14 #include "chrome/browser/browser_theme_provider.h" 14 #include "chrome/browser/browser_theme_provider.h"
15 #include "chrome/browser/defaults.h" 15 #include "chrome/browser/defaults.h"
16 #include "gfx/canvas.h" 16 #include "gfx/canvas.h"
17 #include "gfx/canvas_skia.h"
17 #include "gfx/favicon_size.h" 18 #include "gfx/favicon_size.h"
18 #include "gfx/font.h" 19 #include "gfx/font.h"
19 #include "gfx/path.h" 20 #include "gfx/path.h"
20 #include "gfx/skbitmap_operations.h" 21 #include "gfx/skbitmap_operations.h"
21 #include "grit/app_resources.h" 22 #include "grit/app_resources.h"
22 #include "grit/generated_resources.h" 23 #include "grit/generated_resources.h"
23 #include "grit/theme_resources.h" 24 #include "grit/theme_resources.h"
24 #include "third_party/skia/include/effects/SkGradientShader.h" 25 #include "third_party/skia/include/effects/SkGradientShader.h"
25 #include "views/controls/button/image_button.h" 26 #include "views/controls/button/image_button.h"
26 #include "views/widget/root_view.h" 27 #include "views/widget/root_view.h"
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 SkCanvas::kARGB_ClipLayer_SaveFlag); 386 SkCanvas::kARGB_ClipLayer_SaveFlag);
386 canvas->drawARGB(0, 255, 255, 255, SkXfermode::kClear_Mode); 387 canvas->drawARGB(0, 255, 255, 255, SkXfermode::kClear_Mode);
387 PaintActiveTabBackground(canvas); 388 PaintActiveTabBackground(canvas);
388 canvas->restore(); 389 canvas->restore();
389 } 390 }
390 } 391 }
391 } 392 }
392 393
393 void Tab::PaintInactiveTabBackgroundWithTitleChange(gfx::Canvas* canvas) { 394 void Tab::PaintInactiveTabBackgroundWithTitleChange(gfx::Canvas* canvas) {
394 // Render the inactive tab background. We'll use this for clipping. 395 // Render the inactive tab background. We'll use this for clipping.
395 gfx::Canvas background_canvas(width(), height(), false); 396 gfx::CanvasSkia background_canvas(width(), height(), false);
396 PaintInactiveTabBackground(&background_canvas); 397 PaintInactiveTabBackground(background_canvas.AsCanvas());
397 398
398 SkBitmap background_image = background_canvas.ExtractBitmap(); 399 SkBitmap background_image = background_canvas.ExtractBitmap();
399 400
400 // Draw a radial gradient to hover_canvas. 401 // Draw a radial gradient to hover_canvas.
401 gfx::Canvas hover_canvas(width(), height(), false); 402 gfx::CanvasSkia hover_canvas(width(), height(), false);
402 int radius = kMiniTitleChangeGradientRadius; 403 int radius = kMiniTitleChangeGradientRadius;
403 int x0 = width() + radius - kMiniTitleChangeInitialXOffset; 404 int x0 = width() + radius - kMiniTitleChangeInitialXOffset;
404 int x1 = radius; 405 int x1 = radius;
405 int x2 = -radius; 406 int x2 = -radius;
406 int x; 407 int x;
407 if (mini_title_animation_->current_part_index() == 0) { 408 if (mini_title_animation_->current_part_index() == 0) {
408 x = mini_title_animation_->CurrentValueBetween(x0, x1); 409 x = mini_title_animation_->CurrentValueBetween(x0, x1);
409 } else if (mini_title_animation_->current_part_index() == 1) { 410 } else if (mini_title_animation_->current_part_index() == 1) {
410 x = x1; 411 x = x1;
411 } else { 412 } else {
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after
635 tab_inactive.l_width = tab_inactive.image_l->width(); 636 tab_inactive.l_width = tab_inactive.image_l->width();
636 tab_inactive.r_width = tab_inactive.image_r->width(); 637 tab_inactive.r_width = tab_inactive.image_r->width();
637 638
638 tab_inactive_nano.image_l = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_LEFT); 639 tab_inactive_nano.image_l = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_LEFT);
639 tab_inactive_nano.image_c = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_CENTER); 640 tab_inactive_nano.image_c = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_CENTER);
640 tab_inactive_nano.image_r = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_RIGHT); 641 tab_inactive_nano.image_r = rb.GetBitmapNamed(IDR_TAB_INACTIVE_NANO_RIGHT);
641 tab_inactive_nano.l_width = tab_inactive_nano.image_l->width(); 642 tab_inactive_nano.l_width = tab_inactive_nano.image_l->width();
642 tab_inactive_nano.r_width = tab_inactive_nano.image_r->width(); 643 tab_inactive_nano.r_width = tab_inactive_nano.image_r->width();
643 tab_inactive_nano.y_offset = kNanoTabDiffHeight; 644 tab_inactive_nano.y_offset = kNanoTabDiffHeight;
644 } 645 }
OLDNEW
« no previous file with comments | « chrome/browser/views/tabs/dragged_tab_view.cc ('k') | chrome/browser/views/theme_helpers.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698