WIP: Modes

Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
This commit is contained in:
Yannik Bloscheck
2026-01-19 21:43:39 +01:00
parent 2621b30399
commit bf75728e7d
289 changed files with 2698 additions and 6484 deletions

View File

@@ -6,7 +6,7 @@
#import "MWMPlacePageManager.h"
#import "MWMPlacePageProtocol.h"
#import "MWMSideButtons.h"
#import "MWMTrafficButtonViewController.h"
#import "MWMModeButtonViewController.h"
#import "MWMMapWidgetsHelper.h"
#import "MapViewController.h"
#import "MapsAppDelegate.h"
@@ -29,7 +29,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
@interface MWMMapViewControlsManager () <BottomMenuDelegate>
@property(nonatomic) MWMSideButtons * sideButtons;
@property(nonatomic) MWMTrafficButtonViewController * trafficButton;
@property(nonatomic) MWMModeButtonViewController * modeButton;
@property(nonatomic) UIButton * promoButton;
@property(nonatomic) UIViewController * menuController;
@property(nonatomic) id<MWMPlacePageProtocol> placePageManager;
@@ -58,7 +58,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
self.ownerController = controller;
self.hidden = NO;
self.sideButtonsHidden = NO;
self.trafficButtonHidden = NO;
self.modeButtonHidden = NO;
self.isDirectionViewHidden = YES;
self.menuState = MWMBottomMenuStateInactive;
self.menuRestoreState = MWMBottomMenuStateInactive;
@@ -90,7 +90,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
- (void)viewWillTransitionToSize:(CGSize)size
withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator {
[self.trafficButton viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
[self.modeButton viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
[self.trackRecordingButton viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
[self.tabBarController viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
}
@@ -120,7 +120,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
- (void)didFinishAddingPlace {
self.isAddingPlace = NO;
self.trafficButtonHidden = NO;
self.modeButtonHidden = NO;
self.menuState = MWMBottomMenuStateInactive;
}
@@ -134,7 +134,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
self.isAddingPlace = YES;
[self.searchManager close];
self.menuState = MWMBottomMenuStateHidden;
self.trafficButtonHidden = YES;
self.modeButtonHidden = YES;
[ownerController dismissPlacePage];
@@ -193,7 +193,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
self.sideButtons.zoomHidden = self.zoomHidden;
self.sideButtonsHidden = NO;
self.disableStandbyOnRouteFollowing = YES;
self.trafficButtonHidden = YES;
self.modeButtonHidden = YES;
[self.navigationManager onRouteStart];
self.promoButton.hidden = YES;
}
@@ -202,7 +202,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
self.sideButtons.zoomHidden = self.zoomHidden;
[self.navigationManager onRouteStop];
self.disableStandbyOnRouteFollowing = NO;
self.trafficButtonHidden = NO;
self.modeButtonHidden = NO;
self.promoButton.hidden = YES;
}
@@ -214,10 +214,10 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
return _sideButtons;
}
- (MWMTrafficButtonViewController *)trafficButton {
if (!_trafficButton)
_trafficButton = [[MWMTrafficButtonViewController alloc] init];
return _trafficButton;
- (MWMModeButtonViewController *)modeButton {
if (!_modeButton)
_modeButton = [[MWMModeButtonViewController alloc] init];
return _modeButton;
}
- (BottomTabBarViewController *)tabBarController {
@@ -253,7 +253,7 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
if (!_isAddingPlace)
_hidden = hidden;
self.sideButtonsHidden = _sideButtonsHidden;
self.trafficButtonHidden = _trafficButtonHidden;
self.modeButtonHidden = _modeButtonHidden;
self.menuState = hidden ? MWMBottomMenuStateHidden : MWMBottomMenuStateInactive;
}
@@ -267,10 +267,10 @@ NSString *const kMapToCategorySelectorSegue = @"MapToCategorySelectorSegue";
self.sideButtons.hidden = self.hidden || sideButtonsHidden;
}
- (void)setTrafficButtonHidden:(BOOL)trafficButtonHidden {
- (void)setModeButtonHidden:(BOOL)modeButtonHidden {
BOOL const isNavigation = self.navigationManager.state == MWMNavigationDashboardStateNavigation;
_trafficButtonHidden = isNavigation || trafficButtonHidden;
self.trafficButton.hidden = self.hidden || _trafficButtonHidden;
_modeButtonHidden = isNavigation || modeButtonHidden;
self.modeButton.hidden = self.hidden || _modeButtonHidden;
}
- (void)setTrackRecordingButtonState:(TrackRecordingButtonState)state {