| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/themes/browser_theme_pack.h" | 5 #include "chrome/browser/themes/browser_theme_pack.h" |
| 6 | 6 |
| 7 #include <limits> | 7 #include <limits> |
| 8 | 8 |
| 9 #include "base/files/file.h" | 9 #include "base/files/file.h" |
| 10 #include "base/memory/ref_counted_memory.h" | 10 #include "base/memory/ref_counted_memory.h" |
| (...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 470 // Computes a bitmap at one scale from a bitmap at a different scale. | 470 // Computes a bitmap at one scale from a bitmap at a different scale. |
| 471 SkBitmap CreateLowQualityResizedBitmap(const SkBitmap& source_bitmap, | 471 SkBitmap CreateLowQualityResizedBitmap(const SkBitmap& source_bitmap, |
| 472 ui::ScaleFactor source_scale_factor, | 472 ui::ScaleFactor source_scale_factor, |
| 473 ui::ScaleFactor desired_scale_factor) { | 473 ui::ScaleFactor desired_scale_factor) { |
| 474 gfx::Size scaled_size = gfx::ToCeiledSize( | 474 gfx::Size scaled_size = gfx::ToCeiledSize( |
| 475 gfx::ScaleSize(gfx::Size(source_bitmap.width(), | 475 gfx::ScaleSize(gfx::Size(source_bitmap.width(), |
| 476 source_bitmap.height()), | 476 source_bitmap.height()), |
| 477 ui::GetScaleForScaleFactor(desired_scale_factor) / | 477 ui::GetScaleForScaleFactor(desired_scale_factor) / |
| 478 ui::GetScaleForScaleFactor(source_scale_factor))); | 478 ui::GetScaleForScaleFactor(source_scale_factor))); |
| 479 SkBitmap scaled_bitmap; | 479 SkBitmap scaled_bitmap; |
| 480 if (!scaled_bitmap.allocN32Pixels(scaled_size.width(), scaled_size.height())) | 480 scaled_bitmap.allocN32Pixels(scaled_size.width(), scaled_size.height()); |
| 481 SK_CRASH(); | |
| 482 scaled_bitmap.eraseARGB(0, 0, 0, 0); | 481 scaled_bitmap.eraseARGB(0, 0, 0, 0); |
| 483 SkCanvas canvas(scaled_bitmap); | 482 SkCanvas canvas(scaled_bitmap); |
| 484 SkRect scaled_bounds = RectToSkRect(gfx::Rect(scaled_size)); | 483 SkRect scaled_bounds = RectToSkRect(gfx::Rect(scaled_size)); |
| 485 // Note(oshima): The following scaling code doesn't work with | 484 // Note(oshima): The following scaling code doesn't work with |
| 486 // a mask image. | 485 // a mask image. |
| 487 canvas.drawBitmapRect(source_bitmap, NULL, scaled_bounds); | 486 canvas.drawBitmapRect(source_bitmap, NULL, scaled_bounds); |
| 488 return scaled_bitmap; | 487 return scaled_bitmap; |
| 489 } | 488 } |
| 490 | 489 |
| 491 // A ImageSkiaSource that scales 100P image to the target scale factor | 490 // A ImageSkiaSource that scales 100P image to the target scale factor |
| (...skipping 1138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1630 false, | 1629 false, |
| 1631 &bitmap_data)) { | 1630 &bitmap_data)) { |
| 1632 NOTREACHED() << "Unable to encode theme image for prs_id=" | 1631 NOTREACHED() << "Unable to encode theme image for prs_id=" |
| 1633 << prs_id << " for scale_factor=" << scale_factors_[i]; | 1632 << prs_id << " for scale_factor=" << scale_factors_[i]; |
| 1634 break; | 1633 break; |
| 1635 } | 1634 } |
| 1636 image_memory_[scaled_raw_id] = | 1635 image_memory_[scaled_raw_id] = |
| 1637 base::RefCountedBytes::TakeVector(&bitmap_data); | 1636 base::RefCountedBytes::TakeVector(&bitmap_data); |
| 1638 } | 1637 } |
| 1639 } | 1638 } |
| OLD | NEW |