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

Side by Side Diff: chrome/browser/ui/cocoa/dock_icon.mm

Issue 17593006: mac: Update clients of scoped_nsobject.h. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: iwyu, scoped_nsprotocol Created 7 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) 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 #import "chrome/browser/ui/cocoa/dock_icon.h" 5 #import "chrome/browser/ui/cocoa/dock_icon.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/mac/bundle_locations.h" 8 #include "base/mac/bundle_locations.h"
9 #include "base/memory/scoped_nsobject.h" 9 #include "base/mac/scoped_nsobject.h"
10 #include "content/public/browser/browser_thread.h" 10 #include "content/public/browser/browser_thread.h"
11 #include "ui/gfx/scoped_ns_graphics_context_save_gstate_mac.h" 11 #include "ui/gfx/scoped_ns_graphics_context_save_gstate_mac.h"
12 12
13 using content::BrowserThread; 13 using content::BrowserThread;
14 14
15 namespace { 15 namespace {
16 16
17 // The fraction of the size of the dock icon that the badge is. 17 // The fraction of the size of the dock icon that the badge is.
18 const float kBadgeFraction = 0.4f; 18 const float kBadgeFraction = 0.4f;
19 19
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 NSPoint badgeCenter = NSMakePoint(NSMidX(badgeRect), NSMidY(badgeRect)); 78 NSPoint badgeCenter = NSMakePoint(NSMidX(badgeRect), NSMidY(badgeRect));
79 79
80 // Background 80 // Background
81 NSColor* backgroundColor = [NSColor colorWithCalibratedRed:0.85 81 NSColor* backgroundColor = [NSColor colorWithCalibratedRed:0.85
82 green:0.85 82 green:0.85
83 blue:0.85 83 blue:0.85
84 alpha:1.0]; 84 alpha:1.0];
85 NSColor* backgroundHighlight = 85 NSColor* backgroundHighlight =
86 [backgroundColor blendedColorWithFraction:0.85 86 [backgroundColor blendedColorWithFraction:0.85
87 ofColor:[NSColor whiteColor]]; 87 ofColor:[NSColor whiteColor]];
88 scoped_nsobject<NSGradient> backgroundGradient( 88 base::scoped_nsobject<NSGradient> backgroundGradient(
89 [[NSGradient alloc] initWithStartingColor:backgroundHighlight 89 [[NSGradient alloc] initWithStartingColor:backgroundHighlight
90 endingColor:backgroundColor]); 90 endingColor:backgroundColor]);
91 NSBezierPath* badgeEdge = [NSBezierPath bezierPathWithOvalInRect:badgeRect]; 91 NSBezierPath* badgeEdge = [NSBezierPath bezierPathWithOvalInRect:badgeRect];
92 { 92 {
93 gfx::ScopedNSGraphicsContextSaveGState scopedGState; 93 gfx::ScopedNSGraphicsContextSaveGState scopedGState;
94 [badgeEdge addClip]; 94 [badgeEdge addClip];
95 [backgroundGradient drawFromCenter:badgeCenter 95 [backgroundGradient drawFromCenter:badgeCenter
96 radius:0.0 96 radius:0.0
97 toCenter:badgeCenter 97 toCenter:badgeCenter
98 radius:badgeRadius 98 radius:badgeRadius
99 options:0]; 99 options:0];
100 } 100 }
101 101
102 // Slice 102 // Slice
103 if (!indeterminate_) { 103 if (!indeterminate_) {
104 NSColor* sliceColor = [NSColor colorWithCalibratedRed:0.45 104 NSColor* sliceColor = [NSColor colorWithCalibratedRed:0.45
105 green:0.8 105 green:0.8
106 blue:0.25 106 blue:0.25
107 alpha:1.0]; 107 alpha:1.0];
108 NSColor* sliceHighlight = 108 NSColor* sliceHighlight =
109 [sliceColor blendedColorWithFraction:0.4 109 [sliceColor blendedColorWithFraction:0.4
110 ofColor:[NSColor whiteColor]]; 110 ofColor:[NSColor whiteColor]];
111 scoped_nsobject<NSGradient> sliceGradient( 111 base::scoped_nsobject<NSGradient> sliceGradient(
112 [[NSGradient alloc] initWithStartingColor:sliceHighlight 112 [[NSGradient alloc] initWithStartingColor:sliceHighlight
113 endingColor:sliceColor]); 113 endingColor:sliceColor]);
114 NSBezierPath* progressSlice; 114 NSBezierPath* progressSlice;
115 if (progress_ >= 1.0) { 115 if (progress_ >= 1.0) {
116 progressSlice = [NSBezierPath bezierPathWithOvalInRect:badgeRect]; 116 progressSlice = [NSBezierPath bezierPathWithOvalInRect:badgeRect];
117 } else { 117 } else {
118 CGFloat endAngle = 90.0 - 360.0 * progress_; 118 CGFloat endAngle = 90.0 - 360.0 * progress_;
119 if (endAngle < 0.0) 119 if (endAngle < 0.0)
120 endAngle += 360.0; 120 endAngle += 360.0;
121 progressSlice = [NSBezierPath bezierPath]; 121 progressSlice = [NSBezierPath bezierPath];
(...skipping 11 matching lines...) Expand all
133 radius:0.0 133 radius:0.0
134 toCenter:badgeCenter 134 toCenter:badgeCenter
135 radius:badgeRadius 135 radius:badgeRadius
136 options:0]; 136 options:0];
137 } 137 }
138 138
139 // Edge 139 // Edge
140 { 140 {
141 gfx::ScopedNSGraphicsContextSaveGState scopedGState; 141 gfx::ScopedNSGraphicsContextSaveGState scopedGState;
142 [[NSColor whiteColor] set]; 142 [[NSColor whiteColor] set];
143 scoped_nsobject<NSShadow> shadow([[NSShadow alloc] init]); 143 base::scoped_nsobject<NSShadow> shadow([[NSShadow alloc] init]);
144 [shadow.get() setShadowOffset:NSMakeSize(0, -2)]; 144 [shadow.get() setShadowOffset:NSMakeSize(0, -2)];
145 [shadow setShadowBlurRadius:2]; 145 [shadow setShadowBlurRadius:2];
146 [shadow set]; 146 [shadow set];
147 [badgeEdge setLineWidth:2]; 147 [badgeEdge setLineWidth:2];
148 [badgeEdge stroke]; 148 [badgeEdge stroke];
149 } 149 }
150 150
151 // Download count 151 // Download count
152 scoped_nsobject<NSNumberFormatter> formatter( 152 base::scoped_nsobject<NSNumberFormatter> formatter(
153 [[NSNumberFormatter alloc] init]); 153 [[NSNumberFormatter alloc] init]);
154 NSString* countString = 154 NSString* countString =
155 [formatter stringFromNumber:[NSNumber numberWithInt:downloads_]]; 155 [formatter stringFromNumber:[NSNumber numberWithInt:downloads_]];
156 156
157 scoped_nsobject<NSShadow> countShadow([[NSShadow alloc] init]); 157 base::scoped_nsobject<NSShadow> countShadow([[NSShadow alloc] init]);
158 [countShadow setShadowBlurRadius:3.0]; 158 [countShadow setShadowBlurRadius:3.0];
159 [countShadow.get() setShadowColor:[NSColor whiteColor]]; 159 [countShadow.get() setShadowColor:[NSColor whiteColor]];
160 [countShadow.get() setShadowOffset:NSMakeSize(0.0, 0.0)]; 160 [countShadow.get() setShadowOffset:NSMakeSize(0.0, 0.0)];
161 NSMutableDictionary* countAttrsDict = 161 NSMutableDictionary* countAttrsDict =
162 [NSMutableDictionary dictionaryWithObjectsAndKeys: 162 [NSMutableDictionary dictionaryWithObjectsAndKeys:
163 [NSColor blackColor], NSForegroundColorAttributeName, 163 [NSColor blackColor], NSForegroundColorAttributeName,
164 countShadow.get(), NSShadowAttributeName, 164 countShadow.get(), NSShadowAttributeName,
165 nil]; 165 nil];
166 CGFloat countFontSize = badgeRadius; 166 CGFloat countFontSize = badgeRadius;
167 NSSize countSize = NSZeroSize; 167 NSSize countSize = NSZeroSize;
168 scoped_nsobject<NSAttributedString> countAttrString; 168 base::scoped_nsobject<NSAttributedString> countAttrString;
169 while (1) { 169 while (1) {
170 NSFont* countFont = [NSFont fontWithName:@"Helvetica-Bold" 170 NSFont* countFont = [NSFont fontWithName:@"Helvetica-Bold"
171 size:countFontSize]; 171 size:countFontSize];
172 172
173 // This will generally be plain Helvetica. 173 // This will generally be plain Helvetica.
174 if (!countFont) 174 if (!countFont)
175 countFont = [NSFont userFontOfSize:countFontSize]; 175 countFont = [NSFont userFontOfSize:countFontSize];
176 176
177 // Continued failure would generate an NSException. 177 // Continued failure would generate an NSException.
178 if (!countFont) 178 if (!countFont)
(...skipping 21 matching lines...) Expand all
200 @end 200 @end
201 201
202 202
203 @implementation DockIcon 203 @implementation DockIcon
204 204
205 + (DockIcon*)sharedDockIcon { 205 + (DockIcon*)sharedDockIcon {
206 static DockIcon* icon; 206 static DockIcon* icon;
207 if (!icon) { 207 if (!icon) {
208 NSDockTile* dockTile = [[NSApplication sharedApplication] dockTile]; 208 NSDockTile* dockTile = [[NSApplication sharedApplication] dockTile];
209 209
210 scoped_nsobject<DockTileView> dockTileView([[DockTileView alloc] init]); 210 base::scoped_nsobject<DockTileView> dockTileView(
211 [[DockTileView alloc] init]);
211 [dockTile setContentView:dockTileView]; 212 [dockTile setContentView:dockTileView];
212 213
213 icon = [[DockIcon alloc] init]; 214 icon = [[DockIcon alloc] init];
214 } 215 }
215 216
216 return icon; 217 return icon;
217 } 218 }
218 219
219 - (void)updateIcon { 220 - (void)updateIcon {
220 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 221 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 259
259 - (void)setProgress:(float)progress { 260 - (void)setProgress:(float)progress {
260 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 261 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
261 NSDockTile* dockTile = [[NSApplication sharedApplication] dockTile]; 262 NSDockTile* dockTile = [[NSApplication sharedApplication] dockTile];
262 DockTileView* dockTileView = (DockTileView*)([dockTile contentView]); 263 DockTileView* dockTileView = (DockTileView*)([dockTile contentView]);
263 264
264 [dockTileView setProgress:progress]; 265 [dockTileView setProgress:progress];
265 } 266 }
266 267
267 @end 268 @end
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698