Merge branch 'main' into feat-1844-scroll-mark-as-read

This commit is contained in:
everhardt
2021-11-05 22:03:18 +01:00
18 changed files with 804 additions and 151 deletions

View File

@@ -119,7 +119,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationCenterD
#if DEBUG
syncTimer!.update()
#endif
return true
}

View File

@@ -44,6 +44,8 @@ class MasterFeedViewController: UITableViewController, UndoableCommandRunner {
override var canBecomeFirstResponder: Bool {
return true
}
private var reloadCoalescingQueue = CoalescingQueue(name: "Reload Visible", interval: 0.5)
override func viewDidLoad() {
@@ -113,16 +115,7 @@ class MasterFeedViewController: UITableViewController, UndoableCommandRunner {
return
}
var node: Node? = nil
if let coordinator = representedObject as? SceneCoordinator, let feed = coordinator.timelineFeed {
node = coordinator.rootNode.descendantNodeRepresentingObject(feed as AnyObject)
} else {
node = coordinator.rootNode.descendantNodeRepresentingObject(representedObject as AnyObject)
}
guard let unreadCountNode = node, let indexPath = coordinator.indexPathFor(unreadCountNode) else { return }
tableView.reloadRows(at: [indexPath], with: .none)
restoreSelectionIfNecessary(adjustScroll: false)
queueReloadAllVisible()
}
@objc func faviconDidBecomeAvailable(_ note: Notification) {
@@ -840,6 +833,14 @@ private extension MasterFeedViewController {
return ""
}
func queueReloadAllVisible() {
reloadCoalescingQueue.add(self, #selector(reloadQueuedAllVisible))
}
@objc func reloadQueuedAllVisible() {
reloadAllVisibleCells()
}
func configureCellsForRepresentedObject(_ representedObject: AnyObject) {
applyToCellsForRepresentedObject(representedObject, configure)
}

View File

@@ -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>UIAppFonts</key>
<array>
<string>AtkinsonHyperlegible-Regular.ttf</string>
</array>
<key>AppGroup</key>
<string>group.$(ORGANIZATION_IDENTIFIER).NetNewsWire.iOS</string>
<key>AppIdentifierPrefix</key>