Index: ios/chrome/browser/ui/collection_view/collection_view_controller.mm |
diff --git a/ios/chrome/browser/ui/collection_view/collection_view_controller.mm b/ios/chrome/browser/ui/collection_view/collection_view_controller.mm |
index 050eb0ee2a206aac102d4cc3afb2096b5fcac132..cbdc9d81cc656e0cdb37f362a3ea3ef7168948b1 100644 |
--- a/ios/chrome/browser/ui/collection_view/collection_view_controller.mm |
+++ b/ios/chrome/browser/ui/collection_view/collection_view_controller.mm |
@@ -6,28 +6,29 @@ |
#include "base/logging.h" |
#include "base/mac/foundation_util.h" |
-#import "base/mac/scoped_nsobject.h" |
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_item.h" |
#import "ios/chrome/browser/ui/collection_view/collection_view_model.h" |
#import "ios/chrome/browser/ui/material_components/utils.h" |
#import "ios/third_party/material_components_ios/src/components/AppBar/src/MaterialAppBar.h" |
#import "ios/third_party/material_components_ios/src/components/CollectionCells/src/MaterialCollectionCells.h" |
-@implementation CollectionViewController { |
- // The implementation of this controller follows the guidelines from |
- // https://github.com/material-components/material-components-ios/tree/develop/components/AppBar |
- base::scoped_nsobject<MDCAppBar> _appBar; |
- base::scoped_nsobject<CollectionViewModel> _collectionViewModel; |
-} |
+#if !defined(__has_feature) || !__has_feature(objc_arc) |
+#error "This file requires ARC support." |
+#endif |
+ |
+// The implementation of this controller follows the guidelines from |
+// https://github.com/material-components/material-components-ios/tree/develop/components/AppBar |
+@implementation CollectionViewController |
+@synthesize appBar = _appBar; |
+@synthesize collectionViewModel = _collectionViewModel; |
- (instancetype)initWithStyle:(CollectionViewControllerStyle)style { |
- UICollectionViewLayout* layout = |
- [[[MDCCollectionViewFlowLayout alloc] init] autorelease]; |
+ UICollectionViewLayout* layout = [[MDCCollectionViewFlowLayout alloc] init]; |
self = [super initWithCollectionViewLayout:layout]; |
if (self) { |
if (style == CollectionViewControllerStyleAppBar) { |
- _appBar.reset([[MDCAppBar alloc] init]); |
- [self addChildViewController:_appBar.get().headerViewController]; |
+ _appBar = [[MDCAppBar alloc] init]; |
+ [self addChildViewController:_appBar.headerViewController]; |
} |
} |
return self; |
@@ -56,16 +57,8 @@ |
return self.appBar.headerViewController; |
} |
-- (MDCAppBar*)appBar { |
- return _appBar.get(); |
-} |
- |
-- (CollectionViewModel*)collectionViewModel { |
- return _collectionViewModel.get(); |
-} |
- |
- (void)loadModel { |
- _collectionViewModel.reset([[CollectionViewModel alloc] init]); |
+ _collectionViewModel = [[CollectionViewModel alloc] init]; |
} |
- (void)reconfigureCellsForItems:(NSArray*)items |
@@ -121,8 +114,8 @@ |
DCHECK(![MDCCollectionViewController instancesRespondToSelector:_cmd]); |
// Retain the item to be able to move it. |
- base::scoped_nsobject<CollectionViewItem> item( |
- [[self.collectionViewModel itemAtIndexPath:indexPath] retain]); |
+ CollectionViewItem* item = |
+ [self.collectionViewModel itemAtIndexPath:indexPath]; |
// Item coordinates. |
NSInteger sectionIdentifier = |