Commit Graph

49 Commits

Author SHA1 Message Date
Brent Simmons
0c176eccd0 Fetch all unread counts at startup. This is done with a single SQL call, and it’s done in the background, so performance hit should not be noticeable. Fix #138. 2017-12-03 11:57:53 -08:00
Brent Simmons
9865bd8e51 Fix a crash on startup — detect when there are no feeds and don’t hit database. 2017-11-25 13:11:19 -08:00
Brent Simmons
ffaa55c50c Implement mark-everywhere-as-read. 2017-11-19 16:28:26 -08:00
Brent Simmons
9c571271e6 Create SmartFeed class. It’s for Unread and Starred pseudo-feeds — and will also be used later on by predicate-based smart feeds. 2017-11-19 15:40:02 -08:00
Brent Simmons
19673f5c8a Add methods for fetching unread count since a certain date to Database.framework. 2017-11-19 12:44:17 -08:00
Brent Simmons
6572631866 Update the timeline cell when an article’s status changes. 2017-10-08 21:06:25 -07:00
Brent Simmons
0843c10bc5 Remove accountInfo references. This was speculative anyway. I’ll figure out later what we actually need. (Which might be accountInfo after all, and might not be.) 2017-09-22 08:06:06 -07:00
Brent Simmons
a7063f7a5d Simplify filterIncomingArticles. 2017-09-21 18:14:37 -07:00
Brent Simmons
d9f0e53312 Switch to using DatabaseArticle over article dictionaries. 2017-09-21 13:25:14 -07:00
Brent Simmons
93db92d611 Use temporary article dictionaries when fetching articles. 2017-09-20 13:29:21 -07:00
Brent Simmons
f0eea49179 Start working of moving from stubArticles to article dictionaries. 2017-09-19 13:36:13 -07:00
Brent Simmons
b28a849af6 Continue march toward non-optional article.status. 2017-09-18 22:00:35 -07:00
Brent Simmons
6db993075b Make progress on making ArticleStatus a reference type and on making article.status non-optional. 2017-09-18 13:17:30 -07:00
Brent Simmons
92a60d8f06 Continue fixing build errors. 2017-09-17 17:03:58 -07:00
Brent Simmons
db757bcdb9 Implement marking statuses. 2017-09-16 11:04:29 -07:00
Brent Simmons
66129841a5 Use UnreadCountDictionary instead of UnreadCountTable. 2017-09-16 10:21:39 -07:00
Brent Simmons
72cfc84001 Cache statuses when fetching articles — since articles are fetched using a join statement with the statuses table. 2017-09-14 13:32:06 -07:00
Brent Simmons
80c8a848e9 Slightly simplify related-object adding code. 2017-09-13 21:52:11 -07:00
Brent Simmons
7563906f9b Create Articles with attached objects. 2017-09-13 21:41:01 -07:00
Brent Simmons
1cfa11d032 Move save-using-cache code to DatabaseRelatedObjectsTable. Fix some build errors. 2017-09-13 13:29:52 -07:00
Brent Simmons
5ee58458a2 Make progress on related objects. 2017-09-11 06:46:32 -07:00
Brent Simmons
07a44f7af0 Fix some build errors in Database.framework. 2017-09-10 11:36:28 -07:00
Brent Simmons
7415131e8d Make ParsedFeed.items a Set<ParsedItem>. Fix some build errors in Database.framework. 2017-09-09 18:46:58 -07:00
Brent Simmons
7680760537 Fix some Database.framework build errors. Add Author cache. 2017-09-09 12:57:24 -07:00
Brent Simmons
4d816850d6 Delete some dead code. 2017-09-09 12:24:30 -07:00
Brent Simmons
3c47b23b8b Add article.changesFrom() to get changes in an Article. 2017-09-09 12:09:48 -07:00
Brent Simmons
54b5100b09 Call saveUpdatedRelatedObjects when saving updated articles. 2017-09-09 11:10:15 -07:00
Brent Simmons
f3406088f3 Use a KeyPath to generalize code for checking for tags, attachments, and authors changes. 2017-09-09 11:02:02 -07:00
Brent Simmons
f40b400dd5 Make progress on saving updated articles. 2017-09-08 13:36:30 -07:00
Brent Simmons
a92492eb91 Make further progress on saving articles from feeds. 2017-09-06 13:33:04 -07:00
Brent Simmons
d84c65c66f Continue work on saving articles. 2017-09-05 08:53:45 -07:00
Brent Simmons
dadb4a4cd0 Continue to make a mess. Switching computers so I can sit with my laptop in the living room and wait for the Pagliacci Pizza guy to knock. 2017-09-04 18:29:02 -07:00
Brent Simmons
b0cb01a68e Make a mess of things. Article and ArticleStatus are now immutable structs. 2017-09-04 17:10:02 -07:00
Brent Simmons
fb121f8a8c Make more progress on saving/updating articles. 2017-09-02 16:08:02 -07:00
Brent Simmons
d33d8a0330 Make progress toward saving/updating articles. 2017-09-02 14:19:42 -07:00
Brent Simmons
b783d1c062 Create and use a DatabaseRelatedObjectsTable protocol, which clarifies the relationships between different table types. 2017-09-02 10:11:19 -07:00
Brent Simmons
a00ac9c2ac Implement database.fetchUnreadCounts. 2017-09-01 13:31:27 -07:00
Brent Simmons
66ae62233f Start work on fetching unread counts. 2017-08-31 13:35:48 -07:00
Brent Simmons
f3bfa8811d Implement marking statuses in memory and in database. 2017-08-29 13:32:36 -07:00
Brent Simmons
baabf842e1 Progress. 2017-08-27 13:03:15 -07:00
Brent Simmons
3c43732e25 Delete some commented-out code that has been superseded. 2017-08-26 16:44:39 -07:00
Brent Simmons
2d1c63403d Make progress fetching articles. 2017-08-26 15:37:15 -07:00
Brent Simmons
2cefb87f20 Create ArticleCache, which wraps a weak-to-weak NSMapTable. An article is cached for as long as there’s an external (outside-the-cache) reference to the article. 2017-08-23 21:30:28 -07:00
Brent Simmons
cdb8446c86 Make Articles table own the various related and lookup tables. 2017-08-23 13:23:12 -07:00
Brent Simmons
5860f774bd Make Database.framework build. Doesn’t work, but it builds. 2017-08-21 13:31:14 -07:00
Brent Simmons
4010011b5a Progress toward getting Database.framework to build. Mostly just commented stuff out. 2017-08-20 22:43:46 -07:00
Brent Simmons
77ba434878 Start moving common functions to DatabaseTable. 2017-07-29 12:29:05 -07:00
Brent Simmons
da9a974dff Give DatabaseTable an RSDatabaseQueue. 2017-07-29 12:13:38 -07:00
Brent Simmons
02174012ec Rename Manager to Table. Conform to DatabaseTable protocol. 2017-07-29 12:08:10 -07:00