From 155c14b4e3e11cdb047acfac6679c904fdb91369 Mon Sep 17 00:00:00 2001 From: David Sinclair Date: Thu, 18 Jun 2020 21:10:46 -0700 Subject: [PATCH] #1332 (muting tweaks) - Fixed all muted sites becoming unmuted when muting via feed detail. - Fixed OFF label display bug. --- .../ios/Classes/FeedChooserViewController.m | 31 ++++++++++++------- .../ios/Classes/FeedDetailViewController.m | 4 +++ 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/clients/ios/Classes/FeedChooserViewController.m b/clients/ios/Classes/FeedChooserViewController.m index 2d2dbb56d..9f4aa014b 100644 --- a/clients/ios/Classes/FeedChooserViewController.m +++ b/clients/ios/Classes/FeedChooserViewController.m @@ -122,16 +122,14 @@ static const CGFloat kFolderTitleHeight = 36.0; [self rebuildItemsAnimated:NO]; - dispatch_async(dispatch_get_main_queue(), ^{ - [self enumerateAllRowsUsingBlock:^(NSIndexPath *indexPath, FeedChooserItem *item) { - if (![item.info[@"active"] boolValue]) { - [self.tableView selectRowAtIndexPath:indexPath animated:NO scrollPosition:UITableViewScrollPositionNone]; - } - }]; - - [self updateControls]; - [MBProgressHUD hideHUDForView:self.view animated:YES]; - }); + [self enumerateAllRowsUsingBlock:^(NSIndexPath *indexPath, FeedChooserItem *item) { + if (![item.info[@"active"] boolValue]) { + [self.tableView selectRowAtIndexPath:indexPath animated:NO scrollPosition:UITableViewScrollPositionNone]; + } + }]; + + [self updateControls]; + [MBProgressHUD hideHUDForView:self.view animated:YES]; } - (void)finishedWithError:(NSError *)error { @@ -736,8 +734,9 @@ static const CGFloat kFolderTitleHeight = 36.0; if (self.operation == FeedChooserOperationMuteSites) { UIImage *image = [UIImage imageNamed:@"mute_feed_on.png"]; UIImage *highlightedImage = [UIImage imageNamed:@"mute_feed_off.png"]; - - cell.accessoryView = [[UIImageView alloc] initWithImage:image highlightedImage:highlightedImage]; + UIImageView *imageView = [[UIImageView alloc] initWithImage:image highlightedImage:highlightedImage]; + imageView.highlighted = [tableView.indexPathsForSelectedRows containsObject:indexPath]; + cell.accessoryView = imageView; } else { cell.accessoryView = nil; } @@ -780,6 +779,10 @@ static const CGFloat kFolderTitleHeight = 36.0; [self setWidgetIncludes:YES itemForIndexPath:indexPath]; } + UIImageView *imageView = (UIImageView *)[tableView cellForRowAtIndexPath:indexPath].accessoryView; + + imageView.highlighted = YES; + [self updateControls]; } @@ -788,6 +791,10 @@ static const CGFloat kFolderTitleHeight = 36.0; [self setWidgetIncludes:NO itemForIndexPath:indexPath]; } + UIImageView *imageView = (UIImageView *)[tableView cellForRowAtIndexPath:indexPath].accessoryView; + + imageView.highlighted = NO; + [self updateControls]; } diff --git a/clients/ios/Classes/FeedDetailViewController.m b/clients/ios/Classes/FeedDetailViewController.m index 92b275c32..b64619bcf 100644 --- a/clients/ios/Classes/FeedDetailViewController.m +++ b/clients/ios/Classes/FeedDetailViewController.m @@ -2491,6 +2491,10 @@ didEndSwipingSwipingWithState:(MCSwipeTableViewCellState)state NSString *thisIdentifier = [NSString stringWithFormat:@"%@", storiesCollection.activeFeed[@"id"]]; [activeIdentifiers removeObject:thisIdentifier]; + for (NSString *feedId in self.appDelegate.dictInactiveFeeds.allKeys) { + [activeIdentifiers removeObject:feedId]; + } + NSMutableDictionary *params = [NSMutableDictionary dictionary]; NSString *urlString = [NSString stringWithFormat:@"%@/reader/save_feed_chooser", self.appDelegate.url];