Commit 464ebff9 authored by Eugene But's avatar Eugene But Committed by Commit Bot

Ensure that DownloadManagerTabHelper has a delegate.

DownloadManagerTabHelper does not work without delegate, so make sure
that DownloadManagerCoordinator is created before
DownloadManagerTabHelper.

Previously DownloadManagerCoordinator was created in viewDidLoad which
is called after all Tab Helpers are attached to the restored tabs.

Bug: 832210
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Id5bcbec42b0723007aef4d8a25a065cb30238484
Reviewed-on: https://chromium-review.googlesource.com/1011182Reviewed-by: default avatarSylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550731}
parent 80485cd5
......@@ -1034,6 +1034,13 @@ applicationCommandEndpoint:(id<ApplicationCommands>)applicationCommandEndpoint {
_passKitCoordinator =
[[PassKitCoordinator alloc] initWithBaseViewController:self];
// DownloadManagerCoordinator must be created before
// DownloadManagerTabHelper.
_downloadManagerCoordinator =
[[DownloadManagerCoordinator alloc] initWithBaseViewController:self];
_downloadManagerCoordinator.presenter =
[[VerticalAnimationContainer alloc] init];
_appLauncherCoordinator =
[[AppLauncherCoordinator alloc] initWithBaseViewController:self];
......@@ -2235,11 +2242,9 @@ applicationCommandEndpoint:(id<ApplicationCommands>)applicationCommandEndpoint {
[self.primaryToolbarCoordinator QRScannerResultLoader];
_qrScannerCoordinator.presentationProvider = self;
_downloadManagerCoordinator =
[[DownloadManagerCoordinator alloc] initWithBaseViewController:self];
// DownloadManagerCoordinator is already created.
DCHECK(_downloadManagerCoordinator);
_downloadManagerCoordinator.webStateList = [_model webStateList];
_downloadManagerCoordinator.presenter =
[[VerticalAnimationContainer alloc] init];
if (IsUIRefreshPhase1Enabled()) {
self.popupMenuCoordinator = [[PopupMenuCoordinator alloc]
......@@ -3029,6 +3034,9 @@ bubblePresenterForFeature:(const base::Feature&)feature
AppLauncherTabHelper::CreateForWebState(
tab.webState, [[ExternalAppsLaunchPolicyDecider alloc] init],
_appLauncherCoordinator);
// DownloadManagerTabHelper cannot function without delegate.
DCHECK(_downloadManagerCoordinator);
DownloadManagerTabHelper::CreateForWebState(tab.webState,
_downloadManagerCoordinator);
......
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