diff options
author | Ilya Grechuhin <i.grechuhin@mapswithme.com> | 2015-06-29 14:22:10 +0300 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:53:15 +0300 |
commit | e3de687ff5934af65b5b3ac4cab6016f5e89bd5b (patch) | |
tree | af7e015abb253d6046149f7f2853835b4cc22b28 /iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm | |
parent | 9bb5cfa1c3ea1fb3a3f756dd16a672b75a9a330f (diff) |
[ios] Fixed PP sticking.
Diffstat (limited to 'iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm')
-rw-r--r-- | iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm b/iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm index 032c250efe..554560f78d 100644 --- a/iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm +++ b/iphone/Maps/Classes/MWMiPhonePortraitPlacePage.mm @@ -186,6 +186,7 @@ typedef NS_ENUM(NSUInteger, MWMiPhonePortraitPlacePageState) ppv.minY += [sender translationInView:ppvSuper].y; ppv.midY = MAX(ppv.midY, [self getOpenTargetPoint].y); + _targetPoint = ppv.center; if (ppv.minY <= 0.0) [MWMPlacePageNavigationBar showNavigationBarForPlacePage:self]; else @@ -200,13 +201,24 @@ typedef NS_ENUM(NSUInteger, MWMiPhonePortraitPlacePageState) CGFloat const bound1 = ppvSuper.height * 0.2; CGFloat const bound2 = ppvSuper.height * 0.5; if (estimatedYPosition < bound1) - self.state = MWMiPhonePortraitPlacePageStateHover; + { + if (self.panVelocity <= 0.0) + self.state = MWMiPhonePortraitPlacePageStateHover; + else + self.state = MWMiPhonePortraitPlacePageStateOpen; + } else if (self.panVelocity <= 0.0) + { self.state = MWMiPhonePortraitPlacePageStateOpen; + } else if (ppv.minY < bound2) + { self.state = MWMiPhonePortraitPlacePageStatePreview; + } else + { [self.manager dismissPlacePage]; + } } } |