Commit Graph

163 Commits

Author SHA1 Message Date
Brent Simmons ddccbdf610 Add addFeed and addFeeds to the Container protocol. This was confusing before. Now you can add directly to a Folder or Account. 2019-02-05 21:48:32 -08:00
Brent Simmons 448293a836 Set feed.title from the OPML — don’t just leave it blank. 2019-02-02 18:08:01 -08:00
Brent Simmons 30324c8ec0 Make sure that feed.editedName is never "". Treat it as nil. 2019-02-02 17:46:15 -08:00
Brent Simmons f5d6e7e8fa Fix bug where empty folders would be lost between runs of the app. 2019-01-27 21:42:58 -08:00
Brent Simmons b900cbc0b7 Make Feed and Folder conform to Renewable. 2018-11-22 13:57:49 -08:00
Brent Simmons 485bde7ff2 Complete (probably) work on Feedbin sync data types. 2018-10-14 18:38:33 -07:00
Brent Simmons cd6e6daf31 Continue work on Feedbin sync data types. 2018-10-14 18:10:07 -07:00
Brent Simmons d69058c10c Fix a couple first-run startup bugs. 2018-09-26 22:05:35 -07:00
Brent Simmons 7026eae899 Skip writing OPML file to disk during startup. Structure-changed notices happen during startup as the object graph is created, but it doesn’t mean that there’s a change that requires saving to disk. 2018-09-16 20:02:24 -07:00
Brent Simmons 1c3dca4d9b Update unreadCount for an Account only when one of its feeds changes its unreadCount. 2018-09-16 19:07:07 -07:00
Brent Simmons a914b3949b Made launch performance *much* faster for large (thousands of feeds) subscriptions list. Also: split container.children in container.topLevelFeeds and container.folders. This simplifies a bunch of things, and makes some things faster. 2018-09-16 17:54:42 -07:00
Brent Simmons 6b6d393b3d Delete some dead code. 2018-09-16 13:08:44 -07:00
Brent Simmons 3d45231494 Stop using urlToFeedDictionary. Feeds don’t have to be uniqued. 2018-09-16 13:04:42 -07:00
Brent Simmons f8d6cb48dc Remove instance where Feed equality was expected to be pointer equality, which is no longer true. 2018-09-16 12:46:50 -07:00
Brent Simmons 4010b4cb2a On startup, import from AccountData.plist one last time, then rename it to AccountData-old.plist. On subsequent startups, import using Subscriptions.opml. 2018-09-16 12:42:46 -07:00
Brent Simmons 823d83c942 Write to disk on display-name-change only if it’s a Folder, since Feed names are stored in ODB. 2018-09-15 12:08:57 -07:00
Brent Simmons d0df791b93 Skip writing to disk when feed setting changes, since we’re writing OPML now and storing feed settings in ODB. 2018-09-15 12:06:19 -07:00
Brent Simmons abd8fb2236 Store feed.name and feed.editedName in ODB. 2018-09-15 11:45:01 -07:00
Brent Simmons ce1fe6ed1f Store feed.editedName in ODB. 2018-09-15 11:39:33 -07:00
Brent Simmons 0f59b904ef Store feed.authors in ODB. Make Author Codable. 2018-09-15 11:16:05 -07:00
Brent Simmons 904feb9950 Store feed.homePageURL in ODB. 2018-09-14 22:23:30 -07:00
Brent Simmons fb9590de98 Make feedID and accountID the things that determine hashing and equality for a Feed. 2018-09-14 22:15:22 -07:00
Brent Simmons 47cf018143 Store feed.unreadCount with the Account rather than the feed. This is part of making it so that feeds no longer have to be uniqued. 2018-09-14 22:06:03 -07:00
Brent Simmons 28d084e246 Store iconURL and faviconURL in ODB. 2018-09-14 21:51:05 -07:00
Brent Simmons 6d2bb123e3 Save conditional GET info in ODB. 2018-09-14 19:33:47 -07:00
Brent Simmons 3f1f4fd24c Write Subscriptions.opml to disk. 2018-09-14 13:25:38 -07:00
Brent Simmons b8546d8e8b Don't store account.unreadCount in Settings.odb. Don’t rewrite AccountData.plist when feed.contentHash changes. 2018-09-14 13:12:55 -07:00
Brent Simmons 13fbad12a5 Store feed.contentHash in Settings.odb. 2018-09-13 22:52:34 -07:00
Brent Simmons 679e6f6c0b Give Feed a weak account rather than accountID. 2018-09-13 22:37:40 -07:00
Brent Simmons b5b42b8df6 Stop storing unreadCount for Feed and Folder objects on disk, since they’re fast to fetch at startup. Also, give Feed an ODBRawValueTable for metadata storage. 2018-09-13 22:25:10 -07:00
Brent Simmons b7e9fbf2a6 Stop saving account’s unread count to disk — no need. It gets calculated at startup plenty fast enough. 2018-09-13 21:25:35 -07:00
Brent Simmons 4bc6c7d5db Start using ODB code with Account. Store the unread count in the settings database. 2018-09-12 22:28:21 -07:00
Brent Simmons 25ff76e1e5 Fix a performance bug when fetching all unread articles. When validating unread counts, it was looping through the entire set of articles once per feed. Now it loops through articles just once, for a major performance boost with lots of feeds and/or lots of unread articles. 2018-09-10 22:08:38 -07:00
Maurice Parker 808715892f Changed project and framework projects to default to using tabs per the coding guidelines. Also corrected previously committed files with spaces used incorrectly. 2018-09-07 13:46:00 -05:00
Brent Simmons fdb159a61b Normalize homePageURL in its setter. Fix #397. 2018-09-02 12:14:04 -07:00
Brent Simmons 5d2a3e9142 Normalize homePageURL on init-ing Feed. 2018-09-02 12:08:35 -07:00
Brent Simmons 141ae5cc2f Continue rename to NetNewsWire. 2018-08-28 22:18:24 -07:00
Brent Simmons 9263ffcb79 Use synthesized init. 2018-08-25 17:07:55 -07:00
Brent Simmons cfb3bd706e Use new hash-into function instead of calculating hashValue. WIP on #402. 2018-08-25 11:54:58 -07:00
Brent Simmons b16112ad56 Remove deleted frameworks from Account. 2018-07-28 17:30:12 -07:00
Brent Simmons fc338d5371 Move Feed from Articles.framework to Account.framework. 2018-07-28 12:16:14 -07:00
Brent Simmons b7575c687c Rename Data.framework to Articles.framework. Rename Database.framework to ArticlesDatabase.framework. 2018-07-23 18:29:08 -07:00
Olof Hellman c91f4621e1 Merge remote-tracking branch 'brentsimmons/master' 2018-03-04 18:43:49 -08:00
Brent Simmons 7def2ae8d0 Fix bug where deleting from the sidebar would not stick across runs of the app sometimes — whatever you deleted could come back. 2018-02-24 15:54:32 -08:00
Olof Hellman 71005b56af support for "make new feed" 2018-02-20 00:26:46 -08:00
Brent Simmons c80e3e86de Don’t save an Account to disk during a refresh session. Wait till it’s over. 2018-02-17 18:02:40 -08:00
Brent Simmons 64647c73c6 Use a coalescing queue (instead of a Timer) in Account for saving to disk. 2018-02-17 15:38:54 -08:00
Brent Simmons 2f21dbf6be Remove extraneous get { from a bunch of read-only accessors. 2018-02-14 13:14:25 -08:00
Brent Simmons 192439abe7 Make Folder watch for children-did-change notifications — when its own children change, update the unread count. Fix #322. 2018-02-12 22:22:06 -08:00
Brent Simmons a13d21395e Fetch starred articles for the Starred smart feed. 2018-02-11 12:07:55 -08:00