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

Unified Diff: ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm

Issue 2815513008: [ObjC ARC] Converts ios/chrome/browser/ui/settings:settings_arc to ARC. (Closed)
Patch Set: Removes accidental retain from another CL Created 3 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 side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm
diff --git a/ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm b/ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm
index db548f635bed35228e6876b996dfba87d017434c..c562d60245b3aa6b57908ce39c22414674f4175f 100644
--- a/ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm
+++ b/ios/chrome/browser/ui/settings/block_popups_collection_view_controller.mm
@@ -4,10 +4,8 @@
#import "ios/chrome/browser/ui/settings/block_popups_collection_view_controller.h"
-#import "base/ios/weak_nsobject.h"
#include "base/logging.h"
#import "base/mac/foundation_util.h"
-#import "base/mac/scoped_nsobject.h"
#include "base/strings/sys_string_conversions.h"
#include "base/values.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
@@ -24,6 +22,10 @@
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/l10n/l10n_util_mac.h"
+#if !defined(__has_feature) || !__has_feature(objc_arc)
+#error "This file requires ARC support."
+#endif
+
namespace {
typedef NS_ENUM(NSInteger, SectionIdentifier) {
@@ -46,10 +48,10 @@ typedef NS_ENUM(NSInteger, ItemType) {
base::ListValue _exceptions;
// The observable boolean that binds to the "Disable Popups" setting state.
- base::scoped_nsobject<ContentSettingBackedBoolean> _disablePopupsSetting;
+ ContentSettingBackedBoolean* _disablePopupsSetting;
// The item related to the switch for the "Disable Popups" setting.
- base::scoped_nsobject<CollectionViewSwitchItem> _blockPopupsItem;
+ CollectionViewSwitchItem* _blockPopupsItem;
}
// Fetch the urls that can display popups and add them to |_exceptions|.
@@ -69,10 +71,10 @@ typedef NS_ENUM(NSInteger, ItemType) {
_browserState = browserState;
HostContentSettingsMap* settingsMap =
ios::HostContentSettingsMapFactory::GetForBrowserState(_browserState);
- _disablePopupsSetting.reset([[ContentSettingBackedBoolean alloc]
+ _disablePopupsSetting = [[ContentSettingBackedBoolean alloc]
initWithHostContentSettingsMap:settingsMap
settingID:CONTENT_SETTINGS_TYPE_POPUPS
- inverted:YES]);
+ inverted:YES];
[_disablePopupsSetting setObserver:self];
self.title = l10n_util::GetNSString(IDS_IOS_BLOCK_POPUPS);
self.collectionViewAccessibilityIdentifier =
@@ -87,7 +89,6 @@ typedef NS_ENUM(NSInteger, ItemType) {
- (void)dealloc {
[_disablePopupsSetting setObserver:nil];
- [super dealloc];
}
#pragma mark - SettingsRootCollectionViewController
@@ -100,12 +101,11 @@ typedef NS_ENUM(NSInteger, ItemType) {
// Block popups switch.
[model addSectionWithIdentifier:SectionIdentifierMainSwitch];
- _blockPopupsItem.reset(
- [[CollectionViewSwitchItem alloc] initWithType:ItemTypeMainSwitch]);
- _blockPopupsItem.get().text = l10n_util::GetNSString(IDS_IOS_BLOCK_POPUPS);
- _blockPopupsItem.get().on = [_disablePopupsSetting value];
- _blockPopupsItem.get().accessibilityIdentifier =
- @"blockPopupsContentView_switch";
+ _blockPopupsItem =
+ [[CollectionViewSwitchItem alloc] initWithType:ItemTypeMainSwitch];
+ _blockPopupsItem.text = l10n_util::GetNSString(IDS_IOS_BLOCK_POPUPS);
+ _blockPopupsItem.on = [_disablePopupsSetting value];
+ _blockPopupsItem.accessibilityIdentifier = @"blockPopupsContentView_switch";
[model addItem:_blockPopupsItem
toSectionWithIdentifier:SectionIdentifierMainSwitch];
@@ -187,18 +187,17 @@ typedef NS_ENUM(NSInteger, ItemType) {
NSInteger exceptionsSectionIndex = [self.collectionViewModel
sectionForSectionIdentifier:SectionIdentifierExceptions];
if ([collectionView numberOfItemsInSection:exceptionsSectionIndex] == 0) {
- base::WeakNSObject<BlockPopupsCollectionViewController> weakSelf(self);
+ __weak BlockPopupsCollectionViewController* weakSelf = self;
[self.collectionView performBatchUpdates:^{
- base::scoped_nsobject<BlockPopupsCollectionViewController> strongSelf(
- [weakSelf retain]);
+ BlockPopupsCollectionViewController* strongSelf = weakSelf;
if (!strongSelf) {
return;
}
- NSInteger section = [strongSelf.get().collectionViewModel
+ NSInteger section = [strongSelf.collectionViewModel
sectionForSectionIdentifier:SectionIdentifierExceptions];
- [strongSelf.get().collectionViewModel
+ [strongSelf.collectionViewModel
removeSectionWithIdentifier:SectionIdentifierExceptions];
- [strongSelf.get().collectionView
+ [strongSelf.collectionView
deleteSections:[NSIndexSet indexSetWithIndex:section]];
}
completion:nil];
@@ -222,10 +221,10 @@ typedef NS_ENUM(NSInteger, ItemType) {
#pragma mark - BooleanObserver
- (void)booleanDidChange:(id<ObservableBoolean>)observableBoolean {
- DCHECK_EQ(observableBoolean, _disablePopupsSetting.get());
+ DCHECK_EQ(observableBoolean, _disablePopupsSetting);
// Update the item.
- _blockPopupsItem.get().on = [_disablePopupsSetting value];
+ _blockPopupsItem.on = [_disablePopupsSetting value];
// Update the cell.
[self reconfigureCellsForItems:@[ _blockPopupsItem ]
@@ -244,7 +243,7 @@ typedef NS_ENUM(NSInteger, ItemType) {
[_disablePopupsSetting setValue:switchView.on];
// Update the item.
- _blockPopupsItem.get().on = [_disablePopupsSetting value];
+ _blockPopupsItem.on = [_disablePopupsSetting value];
// Update the rest of the UI.
[self.editor setEditing:NO];
@@ -294,8 +293,8 @@ typedef NS_ENUM(NSInteger, ItemType) {
CollectionViewModel* model = self.collectionViewModel;
[model addSectionWithIdentifier:SectionIdentifierExceptions];
- CollectionViewTextItem* header = [
- [[CollectionViewTextItem alloc] initWithType:ItemTypeHeader] autorelease];
+ CollectionViewTextItem* header =
+ [[CollectionViewTextItem alloc] initWithType:ItemTypeHeader];
header.text = l10n_util::GetNSString(IDS_IOS_POPUPS_ALLOWED);
header.textColor = [[MDCPalette greyPalette] tint500];
[model setHeader:header forSectionWithIdentifier:SectionIdentifierExceptions];
@@ -303,8 +302,8 @@ typedef NS_ENUM(NSInteger, ItemType) {
for (size_t i = 0; i < _exceptions.GetSize(); ++i) {
std::string allowed_url;
_exceptions.GetString(i, &allowed_url);
- CollectionViewTextItem* item = [[[CollectionViewTextItem alloc]
- initWithType:ItemTypeException] autorelease];
+ CollectionViewTextItem* item =
+ [[CollectionViewTextItem alloc] initWithType:ItemTypeException];
item.text = base::SysUTF8ToNSString(allowed_url);
[model addItem:item toSectionWithIdentifier:SectionIdentifierExceptions];
}
@@ -318,10 +317,9 @@ typedef NS_ENUM(NSInteger, ItemType) {
if (blockPopupsIsOn && !exceptionsListShown && hasExceptions) {
// Animate in the list of exceptions. Animation looks much better if the
// section is added at once, rather than row-by-row as each object is added.
- base::WeakNSObject<BlockPopupsCollectionViewController> weakSelf(self);
+ __weak BlockPopupsCollectionViewController* weakSelf = self;
[self.collectionView performBatchUpdates:^{
- base::scoped_nsobject<BlockPopupsCollectionViewController> strongSelf(
- [weakSelf retain]);
+ BlockPopupsCollectionViewController* strongSelf = weakSelf;
if (!strongSelf)
return;
[strongSelf populateExceptionsItems];
@@ -333,10 +331,9 @@ typedef NS_ENUM(NSInteger, ItemType) {
completion:nil];
} else if (!blockPopupsIsOn && exceptionsListShown) {
// Make sure the exception section is not shown.
- base::WeakNSObject<BlockPopupsCollectionViewController> weakSelf(self);
+ __weak BlockPopupsCollectionViewController* weakSelf = self;
[self.collectionView performBatchUpdates:^{
- base::scoped_nsobject<BlockPopupsCollectionViewController> strongSelf(
- [weakSelf retain]);
+ BlockPopupsCollectionViewController* strongSelf = weakSelf;
if (!strongSelf)
return;
NSUInteger index = [[strongSelf collectionViewModel]

Powered by Google App Engine
This is Rietveld 408576698