Index: ios/chrome/browser/ui/bookmarks/bookmark_promo_controller.mm |
diff --git a/ios/chrome/browser/ui/bookmarks/bookmark_promo_controller.mm b/ios/chrome/browser/ui/bookmarks/bookmark_promo_controller.mm |
index 49dbd24bc22fdcbcd4e9b0ebdbf1c2448432d949..688f89e5355c0159e781d2dacc01b6d62a546f12 100644 |
--- a/ios/chrome/browser/ui/bookmarks/bookmark_promo_controller.mm |
+++ b/ios/chrome/browser/ui/bookmarks/bookmark_promo_controller.mm |
@@ -6,7 +6,6 @@ |
#include <memory> |
-#include "base/mac/scoped_nsobject.h" |
#include "base/metrics/histogram_macros.h" |
#include "base/metrics/user_metrics.h" |
#include "components/pref_registry/pref_registry_syncable.h" |
@@ -20,6 +19,10 @@ |
#import "ios/chrome/browser/ui/commands/show_signin_command.h" |
#import "ios/chrome/browser/ui/ui_util.h" |
+#if !defined(__has_feature) || !__has_feature(objc_arc) |
+#error "This file requires ARC support." |
+#endif |
+ |
namespace { |
// Enum is used to record the actions performed by the user on the promo cell. |
// |Stars.PromoActions|. |
@@ -86,8 +89,7 @@ class SignInObserver : public SigninManagerBase::Observer { |
} |
private: |
- // Weak |
- BookmarkPromoController* controller_; |
+ __weak BookmarkPromoController* controller_; |
}; |
} // namespace |
@@ -128,7 +130,6 @@ class SignInObserver : public SigninManagerBase::Observer { |
ios::SigninManagerFactory::GetForBrowserState(_browserState); |
signinManager->RemoveObserver(_signinObserver.get()); |
} |
- [super dealloc]; |
} |
- (void)showSignIn { |
@@ -137,10 +138,10 @@ class SignInObserver : public SigninManagerBase::Observer { |
BOOKMARKS_PROMO_ACTION_COUNT); |
base::RecordAction( |
base::UserMetricsAction("Signin_Signin_FromBookmarkManager")); |
- base::scoped_nsobject<ShowSigninCommand> command([[ShowSigninCommand alloc] |
+ ShowSigninCommand* command = [[ShowSigninCommand alloc] |
initWithOperation:AUTHENTICATION_OPERATION_SIGNIN |
signInAccessPoint:signin_metrics::AccessPoint:: |
- ACCESS_POINT_BOOKMARK_MANAGER]); |
+ ACCESS_POINT_BOOKMARK_MANAGER]; |
[self chromeExecuteCommand:command]; |
} |