diff options
author | Ilya Grechuhin <i.grechuhin@gmail.com> | 2016-12-06 15:26:52 +0300 |
---|---|---|
committer | Ilya Grechuhin <i.grechuhin@gmail.com> | 2016-12-06 15:49:03 +0300 |
commit | c5f5384d3a876a0913495283ca38b6e2a471ae40 (patch) | |
tree | b6cfcd19ae65dada658416c0e4be240982e0c24b /iphone | |
parent | 1d2f02c0e6512db38658d916baf7d1e73c5b7904 (diff) |
[traffic] [ios] Fixed traffic states handling.
Diffstat (limited to 'iphone')
-rw-r--r-- | iphone/Maps/Classes/CustomViews/MapViewControls/TrafficButton/MWMTrafficButtonViewController.mm | 24 |
1 files changed, 17 insertions, 7 deletions
diff --git a/iphone/Maps/Classes/CustomViews/MapViewControls/TrafficButton/MWMTrafficButtonViewController.mm b/iphone/Maps/Classes/CustomViews/MapViewControls/TrafficButton/MWMTrafficButtonViewController.mm index bd79ede3c2..f87520e24b 100644 --- a/iphone/Maps/Classes/CustomViews/MapViewControls/TrafficButton/MWMTrafficButtonViewController.mm +++ b/iphone/Maps/Classes/CustomViews/MapViewControls/TrafficButton/MWMTrafficButtonViewController.mm @@ -139,25 +139,35 @@ NSArray<UIImage *> * imagesWithName(NSString * name) { MWMButton * btn = static_cast<MWMButton *>(self.view); UIImageView * iv = btn.imageView; - [iv stopAnimating]; + + // Traffic state machine: https://confluence.mail.ru/pages/viewpage.action?pageId=103680959 switch ([MWMTrafficManager state]) { - case TrafficManager::TrafficState::Disabled: btn.imageName = @"btn_traffic_off"; break; - case TrafficManager::TrafficState::Enabled: btn.imageName = @"btn_traffic_on"; break; + case TrafficManager::TrafficState::Disabled: + [iv stopAnimating]; + btn.imageName = @"btn_traffic_off"; + break; + case TrafficManager::TrafficState::Enabled: + [iv stopAnimating]; + btn.imageName = @"btn_traffic_on"; + break; case TrafficManager::TrafficState::WaitingData: iv.animationImages = imagesWithName(@"btn_traffic_update"); iv.animationDuration = 0.8; iv.image = iv.animationImages.lastObject; [iv startAnimating]; break; - case TrafficManager::TrafficState::Outdated: btn.imageName = @"btn_traffic_outdated"; break; - case TrafficManager::TrafficState::NetworkError: - [MWMTrafficManager enableTraffic:NO]; - [[MWMAlertViewController activeAlertController] presentNoConnectionAlert]; + case TrafficManager::TrafficState::Outdated: + [iv stopAnimating]; + btn.imageName = @"btn_traffic_outdated"; break; case TrafficManager::TrafficState::NoData: [MWMToast showWithText:L(@"traffic_state_no_data")]; break; + case TrafficManager::TrafficState::NetworkError: + [MWMTrafficManager enableTraffic:NO]; + [[MWMAlertViewController activeAlertController] presentNoConnectionAlert]; + break; case TrafficManager::TrafficState::ExpiredApp: [MWMToast showWithText:L(@"traffic_state_expired_app")]; break; |