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

Unified Diff: ios/web/web_state/ui/crw_web_controller.mm

Issue 2578973002: Reload offline version on load failure (Closed)
Patch Set: feedback Created 4 years 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/web/web_state/ui/crw_web_controller.mm
diff --git a/ios/web/web_state/ui/crw_web_controller.mm b/ios/web/web_state/ui/crw_web_controller.mm
index 31356fbb2a44a2876d05b1a63083384a7cc2d317..4db5b1c4143f46969394f1d6b91a4797d0127aed 100644
--- a/ios/web/web_state/ui/crw_web_controller.mm
+++ b/ios/web/web_state/ui/crw_web_controller.mm
@@ -1201,6 +1201,8 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
// Don't create the web view; let it be lazy created as needed.
} else {
[self clearTransientContentView];
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)])
+ [self.nativeController willBeDismissed];
[self removeWebViewAllowingCachedReconstruction:YES];
_touchTrackingRecognizer.get().touchTrackingDelegate = nil;
_touchTrackingRecognizer.reset();
@@ -1278,6 +1280,8 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
self.nativeProvider = nil;
self.swipeRecognizerProvider = nil;
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)])
+ [self.nativeController willBeDismissed];
if ([self.nativeController respondsToSelector:@selector(close)])
[self.nativeController close];
@@ -2018,6 +2022,9 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
// addPendingEntry is called.
[_delegate webWillInitiateLoadWithParams:params];
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)]) {
+ [self.nativeController willBeDismissed];
+ }
GURL navUrl = params.url;
ui::PageTransition transition = params.transition_type;
@@ -2076,6 +2083,9 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
// Reset current WebUI if one exists.
[self clearWebUI];
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)])
+ [self.nativeController willBeDismissed];
Eugene But (OOO till 7-30) 2016/12/19 18:47:05 It looks like |willBeDismissed| should be called o
Olivier 2016/12/20 12:29:47 Done.
+
// Abort any outstanding page load. This ensures the delegate gets informed
// about the outgoing page, and further messages from the page are suppressed.
if (_loadPhase != web::PAGE_LOADED)
@@ -2279,6 +2289,9 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
if (!_webStateImpl->IsShowingWebInterstitial())
[self recordStateInHistory];
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)])
Eugene But (OOO till 7-30) 2016/12/19 18:47:05 |goToItemAtIndex:| calls |loadCurrentURL| or |load
Olivier 2016/12/20 12:29:47 Done.
+ [self.nativeController willBeDismissed];
+
CRWSessionEntry* fromEntry = self.sessionController.currentEntry;
NSUserDefaults* userDefaults = [NSUserDefaults standardUserDefaults];
@@ -4863,6 +4876,8 @@ const NSTimeInterval kSnapshotOverlayTransition = 0.5;
- (void)loadHTML:(NSString*)HTML forURL:(const GURL&)URL {
// Remove the transient content view.
[self clearTransientContentView];
+ if ([self.nativeController respondsToSelector:@selector(willBeDismissed)])
+ [self.nativeController willBeDismissed];
_loadPhase = web::LOAD_REQUESTED;

Powered by Google App Engine
This is Rietveld 408576698