Brion VIBBER has submitted this change and it was merged. Change subject: Variety of small UX/Design tweaks. ......................................................................
Variety of small UX/Design tweaks. Search field's clear "x" button larger. Search field reverts to "Search Wikipedia" after 5 seconds, but when you tap on search field again it remembers your last search term. Lightened search field's "Search Wikipedia" text color. Change-Id: I97491fd962ed8637253440b5fc47afc9c31ebc08 --- M wikipedia/View Controllers/TopNav/NavController.m M wikipedia/View Controllers/WebView/WebViewController.m M wikipedia/Wikipedia-Info.plist 3 files changed, 30 insertions(+), 5 deletions(-) Approvals: Brion VIBBER: Verified; Looks good to me, approved diff --git a/wikipedia/View Controllers/TopNav/NavController.m b/wikipedia/View Controllers/TopNav/NavController.m index eaa252a..ec5092d 100644 --- a/wikipedia/View Controllers/TopNav/NavController.m +++ b/wikipedia/View Controllers/TopNav/NavController.m @@ -54,6 +54,8 @@ @property (nonatomic) BOOL isTransitioningBetweenViewControllers; @property (strong, nonatomic) NSString *wikipediaZeroLearnMoreExternalUrl; +@property (strong, nonatomic) NSString *lastSearchString; + @end @implementation NavController @@ -84,6 +86,8 @@ self.navBarSubViewMetrics = [self getNavBarSubViewMetrics]; self.isTransitioningBetweenViewControllers = NO; + + self.lastSearchString = @""; } -(void)viewDidAppear:(BOOL)animated @@ -286,7 +290,7 @@ [self.navBarContainer addSubview:self.textField]; - UIButton *clearButton = [[UIButton alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 26, 26)]; + UIButton *clearButton = [[UIButton alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 36, 36)]; clearButton.backgroundColor = [UIColor clearColor]; [clearButton setImage:[UIImage imageNamed:@"text_field_x_circle_gray.png"] forState:UIControlStateNormal]; [clearButton addTarget:self action:@selector(clearTextFieldText) forControlEvents:UIControlEventTouchUpInside]; @@ -584,6 +588,13 @@ - (void)textFieldDidBeginEditing:(UITextField *)textField { + + if (self.textField.text.length == 0){ + // Remeber user's last search term. Must come before the + // @"SearchFieldBecameFirstResponder" notification is posted. + if (self.lastSearchString.length != 0) self.textField.text = self.lastSearchString; + } + [[NSNotificationCenter defaultCenter] postNotificationName:@"SearchFieldBecameFirstResponder" object:self userInfo:nil]; if (self.textField.text.length == 0){ @@ -612,6 +623,8 @@ NSString *trimmedSearchString = [searchString stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]; self.currentSearchString = trimmedSearchString; + + self.lastSearchString = trimmedSearchString; [self showSearchResultsController]; @@ -702,7 +715,7 @@ @"NAVBAR_COLOR": [UIColor colorWithWhite:1.0 alpha:0.9], @"NAVBAR_COLOR_PRE_IOS_7": [UIColor colorWithWhite:1.0 alpha:0.983], @"NAVBAR_TEXT_FIELD_TEXT_COLOR": [UIColor colorWithWhite:0.33 alpha:1.0], - @"NAVBAR_TEXT_FIELD_PLACEHOLDER_TEXT_COLOR": [UIColor colorWithWhite:0.33 alpha:1.0], + @"NAVBAR_TEXT_FIELD_PLACEHOLDER_TEXT_COLOR": [UIColor lightGrayColor], @"NAVBAR_TEXT_CLEAR_BUTTON_COLOR": [UIColor colorWithWhite:0.33 alpha:1.0], @"NAVBAR_BUTTON_COLOR": [UIColor blackColor], @"NAVBAR_LABEL_TEXT_COLOR": [UIColor blackColor], diff --git a/wikipedia/View Controllers/WebView/WebViewController.m b/wikipedia/View Controllers/WebView/WebViewController.m index 2ebe7b9..4419a29 100644 --- a/wikipedia/View Controllers/WebView/WebViewController.m +++ b/wikipedia/View Controllers/WebView/WebViewController.m @@ -763,11 +763,13 @@ // view just behind it, but above the webView. if (scrollView == self.webView.scrollView) { CGFloat f = scrollViewDragBeganVerticalOffset_ - scrollView.contentOffset.y; - if (f < -55 && !self.navigationController.navigationBarHidden) { + if (f < -55 && ![UIApplication sharedApplication].statusBarHidden) { [self.navigationController setNavigationBarHidden:YES animated:YES]; + //[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone]; //[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide]; - }else if (f > 55 && self.navigationController.navigationBarHidden) { - [self.navigationController setNavigationBarHidden:NO animated:YES]; + }else if (f > 55 && [UIApplication sharedApplication].statusBarHidden) { + [self.navigationController setNavigationBarHidden:NO animated:YES]; + //[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationNone]; //[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationSlide]; } } @@ -835,6 +837,12 @@ [self retrieveArticleForPageTitle: cleanTitle domain: domain discoveryMethod: [self getStringForDiscoveryMethod:discoveryMethod]]; + + // Reset the search field to its placeholder text after 5 seconds. + dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ + NavBarTextField *textField = [NAV getNavBarItem:NAVBAR_TEXT_FIELD]; + if (!textField.isFirstResponder) textField.text = @""; + }); } -(void)reloadCurrentArticle{ diff --git a/wikipedia/Wikipedia-Info.plist b/wikipedia/Wikipedia-Info.plist index e91858b..fcd83d2 100644 --- a/wikipedia/Wikipedia-Info.plist +++ b/wikipedia/Wikipedia-Info.plist @@ -2,6 +2,10 @@ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> + <key>UIViewControllerBasedStatusBarAppearance</key> + <false/> + <key>UIStatusBarHidden</key> + <false/> <key>CFBundleDevelopmentRegion</key> <string>en</string> <key>CFBundleDisplayName</key> -- To view, visit https://gerrit.wikimedia.org/r/127341 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I97491fd962ed8637253440b5fc47afc9c31ebc08 Gerrit-PatchSet: 2 Gerrit-Project: apps/ios/wikipedia Gerrit-Branch: master Gerrit-Owner: Mhurd <mh...@wikimedia.org> Gerrit-Reviewer: Brion VIBBER <br...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits