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

Unified Diff: ios/chrome/browser/itunes_links/itunes_links_observer.mm

Issue 2731553005: Introduced StoreKitTabHelper class (Closed)
Patch Set: line break for 80 columns Created 3 years, 9 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/itunes_links/itunes_links_observer.mm
diff --git a/ios/chrome/browser/itunes_links/itunes_links_observer.mm b/ios/chrome/browser/itunes_links/itunes_links_observer.mm
index fc39792bbc8280871c587f2f4d7e705fac6326ae..7347f7251a089579645d18d3fe644bf57266f711 100644
--- a/ios/chrome/browser/itunes_links/itunes_links_observer.mm
+++ b/ios/chrome/browser/itunes_links/itunes_links_observer.mm
@@ -8,9 +8,9 @@
#include "base/logging.h"
#include "base/strings/sys_string_conversions.h"
-#import "ios/chrome/browser/storekit_launcher.h"
-#import "ios/web/public/web_state/web_state_observer_bridge.h"
+#import "ios/chrome/browser/store_kit/store_kit_tab_helper.h"
#include "ios/web/public/web_state/web_state.h"
sdefresne 2017/03/06 19:44:03 #import (this forward-declares UIView, so it is an
pkl (ping after 24h if needed) 2017/03/07 01:17:53 Done.
+#import "ios/web/public/web_state/web_state_observer_bridge.h"
#include "url/gurl.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
@@ -28,7 +28,7 @@
@end
@implementation ITunesLinksObserver {
- __weak id<StoreKitLauncher> _storeKitLauncher;
+ web::WebState* _webState;
std::unique_ptr<web::WebStateObserverBridge> _webStateObserverBridge;
}
@@ -37,6 +37,7 @@
if (self) {
_webStateObserverBridge.reset(
new web::WebStateObserverBridge(webState, self));
+ _webState = webState;
}
return self;
}
@@ -57,17 +58,22 @@
return base::SysUTF8ToNSString(productID);
}
-#pragma mark - CRWWebStateObserver
+#pragma mark - WebStateObserverBridge
- (void)webState:(web::WebState*)webState didLoadPageWithSuccess:(BOOL)success {
GURL URL = webState->GetLastCommittedURL();
NSString* productID = [ITunesLinksObserver productIDFromURL:URL];
- if (productID)
- [_storeKitLauncher openAppStore:productID];
+ if (productID) {
+ StoreKitTabHelper* tab_helper = StoreKitTabHelper::FromWebState(_webState);
+ if (tab_helper)
+ tab_helper->OpenAppStore(productID);
+ }
}
- (void)setStoreKitLauncher:(id<StoreKitLauncher>)storeKitLauncher {
- _storeKitLauncher = storeKitLauncher;
+ StoreKitTabHelper* tab_helper = StoreKitTabHelper::FromWebState(_webState);
+ if (tab_helper)
+ tab_helper->SetLauncher(storeKitLauncher);
}
@end

Powered by Google App Engine
This is Rietveld 408576698