| Index: ios/chrome/browser/ui/settings/translate_collection_view_controller.mm
 | 
| diff --git a/ios/chrome/browser/ui/settings/translate_collection_view_controller.mm b/ios/chrome/browser/ui/settings/translate_collection_view_controller.mm
 | 
| index 29d62e009c63583364eacb96e206a632353d9033..abce1f057aab6a4c0a28f812e99c29a261542bb9 100644
 | 
| --- a/ios/chrome/browser/ui/settings/translate_collection_view_controller.mm
 | 
| +++ b/ios/chrome/browser/ui/settings/translate_collection_view_controller.mm
 | 
| @@ -8,7 +8,6 @@
 | 
|  #include <memory>
 | 
|  
 | 
|  #include "base/mac/foundation_util.h"
 | 
| -#include "base/mac/scoped_nsobject.h"
 | 
|  #include "components/google/core/browser/google_util.h"
 | 
|  #include "components/prefs/pref_member.h"
 | 
|  #include "components/prefs/pref_service.h"
 | 
| @@ -32,6 +31,10 @@
 | 
|  #include "ui/base/l10n/l10n_util.h"
 | 
|  #include "url/gurl.h"
 | 
|  
 | 
| +#if !defined(__has_feature) || !__has_feature(objc_arc)
 | 
| +#error "This file requires ARC support."
 | 
| +#endif
 | 
| +
 | 
|  namespace {
 | 
|  
 | 
|  typedef NS_ENUM(NSInteger, SectionIdentifier) {
 | 
| @@ -54,9 +57,9 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|  @interface TranslateCollectionViewController ()<BooleanObserver> {
 | 
|    // Profile preferences.
 | 
|    PrefService* _prefs;  // weak
 | 
| -  base::scoped_nsobject<PrefBackedBoolean> _translationEnabled;
 | 
| +  PrefBackedBoolean* _translationEnabled;
 | 
|    // The item related to the switch for the translation setting.
 | 
| -  base::scoped_nsobject<CollectionViewSwitchItem> _translationItem;
 | 
| +  CollectionViewSwitchItem* _translationItem;
 | 
|  }
 | 
|  
 | 
|  @end
 | 
| @@ -73,9 +76,9 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|      self.collectionViewAccessibilityIdentifier =
 | 
|          @"translate_settings_view_controller";
 | 
|      _prefs = prefs;
 | 
| -    _translationEnabled.reset([[PrefBackedBoolean alloc]
 | 
| -        initWithPrefService:_prefs
 | 
| -                   prefName:prefs::kEnableTranslate]);
 | 
| +    _translationEnabled =
 | 
| +        [[PrefBackedBoolean alloc] initWithPrefService:_prefs
 | 
| +                                              prefName:prefs::kEnableTranslate];
 | 
|      [_translationEnabled setObserver:self];
 | 
|      [self loadModel];
 | 
|    }
 | 
| @@ -84,7 +87,6 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|  
 | 
|  - (void)dealloc {
 | 
|    [_translationEnabled setObserver:nil];
 | 
| -  [super dealloc];
 | 
|  }
 | 
|  
 | 
|  #pragma mark - SettingsRootCollectionViewController
 | 
| @@ -95,16 +97,15 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|  
 | 
|    // Translate Section
 | 
|    [model addSectionWithIdentifier:SectionIdentifierTranslate];
 | 
| -  _translationItem.reset(
 | 
| -      [[CollectionViewSwitchItem alloc] initWithType:ItemTypeTranslate]);
 | 
| -  _translationItem.get().text =
 | 
| -      l10n_util::GetNSString(IDS_IOS_TRANSLATE_SETTING);
 | 
| -  _translationItem.get().on = [_translationEnabled value];
 | 
| +  _translationItem =
 | 
| +      [[CollectionViewSwitchItem alloc] initWithType:ItemTypeTranslate];
 | 
| +  _translationItem.text = l10n_util::GetNSString(IDS_IOS_TRANSLATE_SETTING);
 | 
| +  _translationItem.on = [_translationEnabled value];
 | 
|    [model addItem:_translationItem
 | 
|        toSectionWithIdentifier:SectionIdentifierTranslate];
 | 
|  
 | 
| -  CollectionViewTextItem* resetTranslate = [[[CollectionViewTextItem alloc]
 | 
| -      initWithType:ItemTypeResetTranslate] autorelease];
 | 
| +  CollectionViewTextItem* resetTranslate =
 | 
| +      [[CollectionViewTextItem alloc] initWithType:ItemTypeResetTranslate];
 | 
|    resetTranslate.text = l10n_util::GetNSString(IDS_IOS_TRANSLATE_SETTING_RESET);
 | 
|    resetTranslate.accessibilityTraits |= UIAccessibilityTraitButton;
 | 
|    resetTranslate.textFont = [MDCTypography body2Font];
 | 
| @@ -113,8 +114,8 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|  
 | 
|    // Footer Section
 | 
|    [model addSectionWithIdentifier:SectionIdentifierFooter];
 | 
| -  CollectionViewFooterItem* footer = [[[CollectionViewFooterItem alloc]
 | 
| -      initWithType:ItemTypeFooter] autorelease];
 | 
| +  CollectionViewFooterItem* footer =
 | 
| +      [[CollectionViewFooterItem alloc] initWithType:ItemTypeFooter];
 | 
|    footer.text = l10n_util::GetNSString(IDS_IOS_TRANSLATE_SETTING_DESCRIPTION);
 | 
|    footer.linkURL = google_util::AppendGoogleLocaleParam(
 | 
|        GURL(kTranslateLearnMoreUrl),
 | 
| @@ -223,10 +224,10 @@ NSString* const kTranslateSettingsCategory = @"ChromeTranslateSettings";
 | 
|  #pragma mark - BooleanObserver
 | 
|  
 | 
|  - (void)booleanDidChange:(id<ObservableBoolean>)observableBoolean {
 | 
| -  DCHECK_EQ(observableBoolean, _translationEnabled.get());
 | 
| +  DCHECK_EQ(observableBoolean, _translationEnabled);
 | 
|  
 | 
|    // Update the item.
 | 
| -  _translationItem.get().on = [_translationEnabled value];
 | 
| +  _translationItem.on = [_translationEnabled value];
 | 
|  
 | 
|    // Update the cell.
 | 
|    [self reconfigureCellsForItems:@[ _translationItem ]];
 | 
| 
 |