Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorv.mikhaylenko <v.mikhaylenko@corp.mail.ru>2015-06-16 20:21:32 +0300
committerAlex Zolotarev <alex@maps.me>2015-09-23 02:52:40 +0300
commit4e8f1cc18f1a594e5cd35a7ee85937939ac3a4f2 (patch)
tree878b831909555983c98433dd0435e02b10b1787c /iphone/Maps/Classes/MWMPlacePageNavigationBar.mm
parent00c153b50ff6c92c312fb9fdc7662df4eef54388 (diff)
[ios] Added safety interface for work with metadata dictionary.
Diffstat (limited to 'iphone/Maps/Classes/MWMPlacePageNavigationBar.mm')
-rw-r--r--iphone/Maps/Classes/MWMPlacePageNavigationBar.mm32
1 files changed, 16 insertions, 16 deletions
diff --git a/iphone/Maps/Classes/MWMPlacePageNavigationBar.mm b/iphone/Maps/Classes/MWMPlacePageNavigationBar.mm
index 7690a5e050..8b1b848ce1 100644
--- a/iphone/Maps/Classes/MWMPlacePageNavigationBar.mm
+++ b/iphone/Maps/Classes/MWMPlacePageNavigationBar.mm
@@ -15,18 +15,16 @@
#import <objc/runtime.h>
static NSString * const kPlacePageNavigationBarNibName = @"PlacePageNavigationBar";
-static int kNavigationBarKey;
+static CGFloat const kNavigationBarHeight = 64.;
-static CGFloat const kHeight = 64.;
-
-static CGPoint const openCenter(CGFloat xPosition)
+static inline CGPoint const openCenter(CGFloat xPosition)
{
- return CGPointMake(xPosition, kHeight / 2.);
+ return CGPointMake(xPosition, kNavigationBarHeight / 2.);
}
-static CGPoint const dismissCenter(CGFloat xPosition)
+static inline CGPoint const dismissCenter(CGFloat xPosition)
{
- return CGPointMake(xPosition, - kHeight / 2.);
+ return CGPointMake(xPosition, - kNavigationBarHeight / 2.);
}
@interface MWMPlacePageNavigationBar ()
@@ -41,24 +39,23 @@ static CGPoint const dismissCenter(CGFloat xPosition)
+ (void)remove
{
UIScreen * screen = [UIScreen mainScreen];
- MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, &kNavigationBarKey);
+ MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, @selector(navigationBarWithPlacePage:));
if (!navBar)
return;
[navBar removeFromSuperview];
- objc_setAssociatedObject(screen, &kNavigationBarKey, nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
+ objc_setAssociatedObject(screen, @selector(navigationBarWithPlacePage:), nil, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
+ (void)showNavigationBarForPlacePage:(MWMiPhonePortraitPlacePage *)placePage
{
UIView const * superview = placePage.manager.ownerViewController.view;
-
UIScreen * screen = [UIScreen mainScreen];
- MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, &kNavigationBarKey);
+ MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, @selector(navigationBarWithPlacePage:));
if (!navBar)
{
navBar = [self navigationBarWithPlacePage:placePage];
- objc_setAssociatedObject(screen, &kNavigationBarKey, navBar, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
+ objc_setAssociatedObject(screen, @selector(navigationBarWithPlacePage:), navBar, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
[superview addSubview:navBar];
}
@@ -71,8 +68,7 @@ static CGPoint const dismissCenter(CGFloat xPosition)
+ (void)dismissNavigationBar
{
UIScreen * screen = [UIScreen mainScreen];
- MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, &kNavigationBarKey);
-
+ MWMPlacePageNavigationBar * navBar = objc_getAssociatedObject(screen, @selector(navigationBarWithPlacePage:));
if (!navBar)
return;
@@ -118,9 +114,13 @@ static CGPoint const dismissCenter(CGFloat xPosition)
- (void)layoutSubviews
{
if (self)
- self.origin = CGPointMake(0., 0.);
+ self.origin = CGPointZero;
}
-- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { }
+- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
+{
+// Prevent super call to stop event propagation
+// [super touchesBegan:touches withEvent:event];
+}
@end