Commit c29d05df authored by sczs's avatar sczs Committed by Commit Bot

[ios] Reland Stops observing FeedView when its VC is removed.

Bug: 1085419
Change-Id: Ie4c211b2b725f8ae5b82bb8a7e2c545fbd162d03
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2367737
Commit-Queue: Sergio Collazos <sczs@chromium.org>
Commit-Queue: Ganggui Tang <gogerald@chromium.org>
Auto-Submit: Sergio Collazos <sczs@chromium.org>
Reviewed-by: default avatarGanggui Tang <gogerald@chromium.org>
Cr-Commit-Position: refs/heads/master@{#800382}
parent 5b55c176
......@@ -111,9 +111,15 @@ NSString* const kContentSuggestionsMostVisitedAccessibilityIdentifierPrefix =
}
- (void)dealloc {
[self.discoverFeedVC willMoveToParentViewController:nil];
[self.discoverFeedVC.view removeFromSuperview];
[self.discoverFeedVC removeFromParentViewController];
// Only remove the FeedVC and observer if it was actually added to the
// hierarchy. |self.discoverFeedVC| is only added to the hierarchy at the same
// time the KVO observer is added to |self.feedView|, so its safe to remove.
if (self.discoverFeedVC.parentViewController) {
[self.feedView removeObserver:self forKeyPath:@"contentSize"];
[self.discoverFeedVC willMoveToParentViewController:nil];
[self.discoverFeedVC.view removeFromSuperview];
[self.discoverFeedVC removeFromParentViewController];
}
[self.overscrollActionsController invalidate];
}
......@@ -419,8 +425,10 @@ NSString* const kContentSuggestionsMostVisitedAccessibilityIdentifierPrefix =
UIViewController* newFeedViewController = discoverFeedItem.discoverFeed;
if (newFeedViewController != self.discoverFeedVC) {
// If previous VC is not nil, remove it from the view hierarchy.
// If previous VC is not nil, remove it from the view hierarchy and stop
// osberving its feedView.
if (self.discoverFeedVC) {
[self.feedView removeObserver:self forKeyPath:@"contentSize"];
[self.discoverFeedVC willMoveToParentViewController:nil];
[self.discoverFeedVC.view removeFromSuperview];
[self.discoverFeedVC removeFromParentViewController];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment