| 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/ui/gtk/gtk_theme_service.h" | 5 #include "chrome/browser/ui/gtk/gtk_theme_service.h" |
| 6 | 6 |
| 7 #include <gtk/gtk.h> | 7 #include <gtk/gtk.h> |
| 8 | 8 |
| 9 #include <set> | 9 #include <set> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 998 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1009 gtk_widget_style_get(GTK_WIDGET(fake_frame_), | 1009 gtk_widget_style_get(GTK_WIDGET(fake_frame_), |
| 1010 "frame-gradient-size", &gradient_size, | 1010 "frame-gradient-size", &gradient_size, |
| 1011 gradient_name, &gradient_top_color, | 1011 gradient_name, &gradient_top_color, |
| 1012 NULL); | 1012 NULL); |
| 1013 if (gradient_size) { | 1013 if (gradient_size) { |
| 1014 SkColor lighter = gradient_top_color ? | 1014 SkColor lighter = gradient_top_color ? |
| 1015 gfx::GdkColorToSkColor(*gradient_top_color) : | 1015 gfx::GdkColorToSkColor(*gradient_top_color) : |
| 1016 color_utils::HSLShift(base, kGtkFrameShift); | 1016 color_utils::HSLShift(base, kGtkFrameShift); |
| 1017 if (gradient_top_color) | 1017 if (gradient_top_color) |
| 1018 gdk_color_free(gradient_top_color); | 1018 gdk_color_free(gradient_top_color); |
| 1019 SkShader* shader = gfx::CreateGradientShader( | 1019 skia::RefPtr<SkShader> shader = gfx::CreateGradientShader( |
| 1020 0, gradient_size, lighter, base); | 1020 0, gradient_size, lighter, base); |
| 1021 SkPaint paint; | 1021 SkPaint paint; |
| 1022 paint.setStyle(SkPaint::kFill_Style); | 1022 paint.setStyle(SkPaint::kFill_Style); |
| 1023 paint.setAntiAlias(true); | 1023 paint.setAntiAlias(true); |
| 1024 paint.setShader(shader); | 1024 paint.setShader(shader.get()); |
| 1025 shader->unref(); | |
| 1026 | 1025 |
| 1027 canvas.DrawRect(gfx::Rect(0, 0, kToolbarImageWidth, gradient_size), paint); | 1026 canvas.DrawRect(gfx::Rect(0, 0, kToolbarImageWidth, gradient_size), paint); |
| 1028 } | 1027 } |
| 1029 | 1028 |
| 1030 canvas.FillRect(gfx::Rect(0, gradient_size, kToolbarImageWidth, | 1029 canvas.FillRect(gfx::Rect(0, gradient_size, kToolbarImageWidth, |
| 1031 kToolbarImageHeight - gradient_size), base); | 1030 kToolbarImageHeight - gradient_size), base); |
| 1032 return canvas.ExtractImageRep().sk_bitmap(); | 1031 return canvas.ExtractImageRep().sk_bitmap(); |
| 1033 } | 1032 } |
| 1034 | 1033 |
| 1035 SkBitmap GtkThemeService::GenerateTabImage(int base_id) const { | 1034 SkBitmap GtkThemeService::GenerateTabImage(int base_id) const { |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1144 cairo_stroke(cr); | 1143 cairo_stroke(cr); |
| 1145 cairo_destroy(cr); | 1144 cairo_destroy(cr); |
| 1146 cairo_pattern_destroy(pattern); | 1145 cairo_pattern_destroy(pattern); |
| 1147 | 1146 |
| 1148 return TRUE; | 1147 return TRUE; |
| 1149 } | 1148 } |
| 1150 | 1149 |
| 1151 void GtkThemeService::OnUsesSystemThemeChanged() { | 1150 void GtkThemeService::OnUsesSystemThemeChanged() { |
| 1152 use_gtk_ = profile()->GetPrefs()->GetBoolean(prefs::kUsesSystemTheme); | 1151 use_gtk_ = profile()->GetPrefs()->GetBoolean(prefs::kUsesSystemTheme); |
| 1153 } | 1152 } |
| OLD | NEW |