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

Side by Side Diff: ui/native_theme/native_theme_mac.mm

Issue 1831883002: Use sk_sp-based shader creation APIs (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 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
« no previous file with comments | « ui/native_theme/native_theme_mac.h ('k') | ui/views/controls/scrollbar/cocoa_scroll_bar.mm » ('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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "ui/native_theme/native_theme_mac.h" 5 #include "ui/native_theme/native_theme_mac.h"
6 6
7 #import <Cocoa/Cocoa.h> 7 #import <Cocoa/Cocoa.h>
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include "base/mac/mac_util.h" 10 #include "base/mac/mac_util.h"
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 paint.setColor(GetSystemColor(kColorId_HoverMenuItemBackgroundColor)); 261 paint.setColor(GetSystemColor(kColorId_HoverMenuItemBackgroundColor));
262 canvas->drawRect(gfx::RectToSkRect(rect), paint); 262 canvas->drawRect(gfx::RectToSkRect(rect), paint);
263 break; 263 break;
264 default: 264 default:
265 NOTREACHED(); 265 NOTREACHED();
266 break; 266 break;
267 } 267 }
268 } 268 }
269 269
270 // static 270 // static
271 skia::RefPtr<SkShader> NativeThemeMac::GetButtonBackgroundShader( 271 sk_sp<SkShader> NativeThemeMac::GetButtonBackgroundShader(
272 NativeTheme::State state, int height) { 272 NativeTheme::State state, int height) {
273 typedef SkColor ColorByState[NativeTheme::State::kNumStates]; 273 typedef SkColor ColorByState[NativeTheme::State::kNumStates];
274 SkPoint gradient_points[2]; 274 SkPoint gradient_points[2];
275 gradient_points[0].iset(0, 0); 275 gradient_points[0].iset(0, 0);
276 gradient_points[1].iset(0, height); 276 gradient_points[1].iset(0, height);
277 277
278 SkScalar gradient_positions[] = { 0.0, 0.38, 1.0 }; 278 SkScalar gradient_positions[] = { 0.0, 0.38, 1.0 };
279 279
280 ColorByState start_colors; 280 ColorByState start_colors;
281 start_colors[NativeTheme::State::kDisabled] = gfx::kMaterialGrey300; 281 start_colors[NativeTheme::State::kDisabled] = gfx::kMaterialGrey300;
282 start_colors[NativeTheme::State::kHovered] = gfx::kMaterialBlue300; 282 start_colors[NativeTheme::State::kHovered] = gfx::kMaterialBlue300;
283 start_colors[NativeTheme::State::kNormal] = gfx::kMaterialBlue300; 283 start_colors[NativeTheme::State::kNormal] = gfx::kMaterialBlue300;
284 start_colors[NativeTheme::State::kPressed] = gfx::kMaterialBlue300; 284 start_colors[NativeTheme::State::kPressed] = gfx::kMaterialBlue300;
285 ColorByState end_colors; 285 ColorByState end_colors;
286 end_colors[NativeTheme::State::kDisabled] = gfx::kMaterialGrey300; 286 end_colors[NativeTheme::State::kDisabled] = gfx::kMaterialGrey300;
287 end_colors[NativeTheme::State::kHovered] = gfx::kMaterialBlue700; 287 end_colors[NativeTheme::State::kHovered] = gfx::kMaterialBlue700;
288 end_colors[NativeTheme::State::kNormal] = gfx::kMaterialBlue700; 288 end_colors[NativeTheme::State::kNormal] = gfx::kMaterialBlue700;
289 end_colors[NativeTheme::State::kPressed] = gfx::kMaterialBlue700; 289 end_colors[NativeTheme::State::kPressed] = gfx::kMaterialBlue700;
290 290
291 SkColor gradient_colors[] = { 291 SkColor gradient_colors[] = {
292 start_colors[state], start_colors[state], end_colors[state] 292 start_colors[state], start_colors[state], end_colors[state]
293 }; 293 };
294 294
295 skia::RefPtr<SkShader> gradient_shader = skia::AdoptRef( 295 return SkGradientShader::MakeLinear(
296 SkGradientShader::CreateLinear( 296 gradient_points, gradient_colors, gradient_positions, 3,
297 gradient_points, gradient_colors, gradient_positions, 3, 297 SkShader::kClamp_TileMode);
298 SkShader::kClamp_TileMode));
299 return gradient_shader;
300 } 298 }
301 299
302 NativeThemeMac::NativeThemeMac() { 300 NativeThemeMac::NativeThemeMac() {
303 } 301 }
304 302
305 NativeThemeMac::~NativeThemeMac() { 303 NativeThemeMac::~NativeThemeMac() {
306 } 304 }
307 305
308 } // namespace ui 306 } // namespace ui
OLDNEW
« no previous file with comments | « ui/native_theme/native_theme_mac.h ('k') | ui/views/controls/scrollbar/cocoa_scroll_bar.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698