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

Side by Side Diff: chrome/browser/ui/cocoa/download/download_shelf_controller.mm

Issue 11673004: No need to pass DownloadItemModel ownership. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: DownloadShelfContextMenu class cleanup and require GetMenuModel() to return non-NULL Created 7 years, 11 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/download/download_shelf_controller.h" 5 #import "chrome/browser/ui/cocoa/download/download_shelf_controller.h"
6 6
7 #include "base/mac/bundle_locations.h" 7 #include "base/mac/bundle_locations.h"
8 #include "base/mac/mac_util.h" 8 #include "base/mac/mac_util.h"
9 #include "base/sys_string_conversions.h" 9 #include "base/sys_string_conversions.h"
10 #include "chrome/browser/download/download_util.h" 10 #include "chrome/browser/download/download_util.h"
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 [[[itemController view] animator] setFrame:frame]; 285 [[[itemController view] animator] setFrame:frame];
286 currentX += frame.size.width + kDownloadItemPadding; 286 currentX += frame.size.width + kDownloadItemPadding;
287 skipFirst = NO; 287 skipFirst = NO;
288 } 288 }
289 } 289 }
290 290
291 - (void)layoutItems { 291 - (void)layoutItems {
292 [self layoutItems:NO]; 292 [self layoutItems:NO];
293 } 293 }
294 294
295 - (void)addDownloadItem:(DownloadItemModel*)model { 295 - (void)addDownloadItem:(DownloadItem*)downloadItem {
296 DCHECK([NSThread isMainThread]); 296 DCHECK([NSThread isMainThread]);
297 [self cancelAutoCloseAndRemoveTrackingArea]; 297 [self cancelAutoCloseAndRemoveTrackingArea];
298 298
299 // Insert new item at the left. 299 // Insert new item at the left.
300 scoped_nsobject<DownloadItemController> controller( 300 scoped_nsobject<DownloadItemController> controller(
301 [[DownloadItemController alloc] initWithModel:model 301 [[DownloadItemController alloc] initWithDownload:downloadItem
302 shelf:self 302 shelf:self
303 navigator:navigator_]); 303 navigator:navigator_]);
304 304
305 // Adding at index 0 in NSMutableArrays is O(1). 305 // Adding at index 0 in NSMutableArrays is O(1).
306 [downloadItemControllers_ insertObject:controller.get() atIndex:0]; 306 [downloadItemControllers_ insertObject:controller.get() atIndex:0];
307 307
308 [itemContainerView_ addSubview:[controller view]]; 308 [itemContainerView_ addSubview:[controller view]];
309 309
310 // The controller is in charge of removing itself as an observer in its 310 // The controller is in charge of removing itself as an observer in its
311 // dealloc. 311 // dealloc.
312 [[NSNotificationCenter defaultCenter] 312 [[NSNotificationCenter defaultCenter]
313 addObserver:controller 313 addObserver:controller
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 } 460 }
461 461
462 // Set the tracking off to create a new tracking area for the control. 462 // Set the tracking off to create a new tracking area for the control.
463 // When changing the bounds/frame on a HoverButton, the tracking isn't updated 463 // When changing the bounds/frame on a HoverButton, the tracking isn't updated
464 // correctly, it needs to be turned off and back on. 464 // correctly, it needs to be turned off and back on.
465 [hoverCloseButton_ setTrackingEnabled:NO]; 465 [hoverCloseButton_ setTrackingEnabled:NO];
466 [hoverCloseButton_ setFrame:bounds]; 466 [hoverCloseButton_ setFrame:bounds];
467 [hoverCloseButton_ setTrackingEnabled:YES]; 467 [hoverCloseButton_ setTrackingEnabled:YES];
468 } 468 }
469 @end 469 @end
OLDNEW
« no previous file with comments | « chrome/browser/ui/cocoa/download/download_shelf_controller.h ('k') | chrome/browser/ui/cocoa/download/download_shelf_mac.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698