diff --git a/iphone/Maps/Bookmarks/BookmarksCoordinator.swift b/iphone/Maps/Bookmarks/BookmarksCoordinator.swift index a28fc56c54..a1bae12fcc 100644 --- a/iphone/Maps/Bookmarks/BookmarksCoordinator.swift +++ b/iphone/Maps/Bookmarks/BookmarksCoordinator.swift @@ -9,6 +9,7 @@ import UIKit private weak var navigationController: UINavigationController? private weak var controlsManager: MWMMapViewControlsManager? + private weak var navigationManager: MWMNavigationDashboardManager? private var bookmarksControllers: [UIViewController]? @objc var state: BookmarksState = .closed { didSet { @@ -17,9 +18,11 @@ import UIKit } @objc init(navigationController: UINavigationController, - controlsManager: MWMMapViewControlsManager) { + controlsManager: MWMMapViewControlsManager, + navigationManager: MWMNavigationDashboardManager) { self.navigationController = navigationController self.controlsManager = controlsManager + self.navigationManager = navigationManager } private func updateForState(newState: BookmarksState) { @@ -56,7 +59,8 @@ import UIKit animations: { self.bookmarksControllers = navigationController.popToRootViewController(animated: false) }, completion: nil) - controlsManager?.bookmarksBackButtonHidden = false + let isNavigation = navigationManager?.state != .hidden + controlsManager?.bookmarksBackButtonHidden = false || isNavigation } } } diff --git a/iphone/Maps/Classes/MapViewController.mm b/iphone/Maps/Classes/MapViewController.mm index 3f91497add..1191406e18 100644 --- a/iphone/Maps/Classes/MapViewController.mm +++ b/iphone/Maps/Classes/MapViewController.mm @@ -896,7 +896,8 @@ NSString *const kPP2BookmarkEditingSegue = @"PP2BookmarkEditing"; - (BookmarksCoordinator *)bookmarksCoordinator { if (!_bookmarksCoordinator) _bookmarksCoordinator = [[BookmarksCoordinator alloc] initWithNavigationController:self.navigationController - controlsManager:self.controlsManager]; + controlsManager:self.controlsManager + navigationManager:[MWMNavigationDashboardManager sharedManager]]; return _bookmarksCoordinator; }