From abc639c18c120c5cfff5f91b9698f680e3e2314c Mon Sep 17 00:00:00 2001 From: Andreas Linde Date: Sun, 17 Feb 2013 19:08:44 +0100 Subject: [PATCH] Improve and fix adjusting status bar style - Only adjust the status bar style, if the navigation bar style is the default one - Fix a bug not resetting the status bar style correctly when presenting the update view in a navigation bar stack --- Classes/BITHockeyBaseViewController.m | 9 +++++++-- Classes/BITUpdateViewController.m | 4 ---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/Classes/BITHockeyBaseViewController.m b/Classes/BITHockeyBaseViewController.m index f54a1eb4fe..394b13b38a 100644 --- a/Classes/BITHockeyBaseViewController.m +++ b/Classes/BITHockeyBaseViewController.m @@ -7,6 +7,7 @@ // #import "BITHockeyBaseViewController.h" +#import "HockeySDKPrivate.h" @implementation BITHockeyBaseViewController { @@ -65,13 +66,17 @@ [super viewWillAppear:animated]; _statusBarStyle = [[UIApplication sharedApplication] statusBarStyle]; - [[UIApplication sharedApplication] setStatusBarStyle:(self.navigationController.navigationBar.barStyle == UIBarStyleDefault) ? UIStatusBarStyleDefault : UIStatusBarStyleBlackOpaque]; + if ([self.navigationController.navigationBar.tintColor isEqual:BIT_RGBCOLOR(25, 25, 25)]) { + [[UIApplication sharedApplication] setStatusBarStyle:(self.navigationController.navigationBar.barStyle == UIBarStyleDefault) ? UIStatusBarStyleDefault : UIStatusBarStyleBlackOpaque]; + } } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; - [[UIApplication sharedApplication] setStatusBarStyle:_statusBarStyle]; + if ([self.navigationController.navigationBar.tintColor isEqual:BIT_RGBCOLOR(25, 25, 25)]) { + [[UIApplication sharedApplication] setStatusBarStyle:_statusBarStyle]; + } } diff --git a/Classes/BITUpdateViewController.m b/Classes/BITUpdateViewController.m index 4551f37bf8..36bc7634cf 100644 --- a/Classes/BITUpdateViewController.m +++ b/Classes/BITUpdateViewController.m @@ -49,7 +49,6 @@ @implementation BITUpdateViewController { BOOL _kvoRegistered; BOOL _showAllVersions; - UIStatusBarStyle _statusBarStyle; BITAppStoreHeader *_appStoreHeader; BITStoreButton *_appStoreButton; @@ -339,8 +338,6 @@ self.appStoreButtonState = AppStoreButtonStateOffline; _updateManager.currentHockeyViewController = self; [super viewWillAppear:animated]; - _statusBarStyle = [[UIApplication sharedApplication] statusBarStyle]; - [[UIApplication sharedApplication] setStatusBarStyle:(self.navigationController.navigationBar.barStyle == UIBarStyleDefault) ? UIStatusBarStyleDefault : UIStatusBarStyleBlackOpaque]; [self redrawTableView]; } @@ -349,7 +346,6 @@ //if the popover is still visible, dismiss it [_popOverController dismissPopoverAnimated:YES]; [super viewWillDisappear:animated]; - [[UIApplication sharedApplication] setStatusBarStyle:_statusBarStyle]; } - (void)redrawTableView {