Commit Graph

888 Commits

Author SHA1 Message Date
Brent Simmons ccd87040c3 Support multiple authors in RSS and Atom feeds. 2017-12-19 13:03:05 -08:00
Brent Simmons 83c49bf428 Add two tests for parsing Atom attachments. Thanks to Marco for finding some examples (they’re very rare). 2017-12-19 11:52:12 -08:00
Brent Simmons b380d0597f Test Omni Show and Macworld unique IDs. The Omni Show ids should come from the feed’s guids. Macworld’s unique IDs should be calculated, since the feed doesn’t have guids. 2017-12-19 11:20:40 -08:00
Brent Simmons fefa96d259 Prefer permalink to link when creating a calculated unique ID. 2017-12-19 11:19:46 -08:00
Brent Simmons a3dde79b84 Add test to make sure RSS parser is using guid for article.uniqueID. 2017-12-19 11:02:05 -08:00
Brent Simmons a82cee29b8 Make RSParsedArticle calculate a unique ID only when there’s no guid. Otherwise use the guid. Do not attempt to create a globally-unique ID — that’s out of scope for the parser and should be (and is) handled at the app’s model layer. 2017-12-19 10:59:24 -08:00
Brent Simmons 7ccb531f0c Parse Atom enclosures. However, I couldn’t find any in the wild, so there are no tests yet. 2017-12-19 10:17:09 -08:00
Brent Simmons 5bb9081fd2 Refresh on startup (when not running a debug build). Fix #58. 2017-12-18 21:58:38 -08:00
Brent Simmons 5b01f04afe Save to disk right after importing OPML. Fix #249. 2017-12-18 21:46:35 -08:00
Brent Simmons 69360a9939 Add Julia Evans and Cate Huston to the default feeds list. 2017-12-18 20:46:06 -08:00
Brent Simmons 726d09b10a Merge branch 'master' of https://github.com/brentsimmons/Evergreen 2017-12-18 20:22:20 -08:00
Brent Simmons 01e3205bc3 Update appcast for 1.0d24. 2017-12-18 20:22:12 -08:00
Brent Simmons 1654702164 Bump version number. 2017-12-18 18:20:21 -08:00
Brent Simmons fcda565d91 Remove references to tags. Fix #259. 2017-12-18 18:20:13 -08:00
Brent Simmons fb9a1d610c Parse enclosures in RSS. 2017-12-18 15:35:50 -08:00
Brent Simmons 7d68e3322c Reuse account nodes, which should fix at least one cause of the bug where sometimes the On My Mac group item collapses when it shouldn’t. 2017-12-18 12:43:18 -08:00
Brent Simmons c65757bab3 Delete appInfo stuff — it was confusing and overkill as a UserInfo helper. 2017-12-18 12:34:07 -08:00
Brent Simmons 81d8532e2c Add a cache to HTMLMetadataDownloader; do all parsing off the main thread, for better UI performance. Also: make FaviconURLFinder use HTMLMetadataDownloader, as it should have in the first place. 2017-12-18 10:20:28 -08:00
Brent Simmons e091f1c609 Skip fetching unread counts on changing sidebar selection. It’s not needed and it’s expensive. This provides a major performance boost when using my 2500-feed test. 2017-12-18 10:00:06 -08:00
Brent Simmons ebe43c43f8 Draw template images with 0.75 alpha in the sidebar. 2017-12-17 10:52:31 -08:00
Brent Simmons 244eb02afd Add SmallIconProvider to the project. 2017-12-17 10:52:12 -08:00
Brent Simmons 76f3fa7498 Use SmallIconProvider in SidebarViewController to get icons for sidebar objects. 2017-12-17 10:51:46 -08:00
Brent Simmons 5be4c2b543 Make PseudoFeed conform to SmallIconProvider. 2017-12-17 10:51:05 -08:00
Brent Simmons 6205532ab1 Add colors.brightBlue to DB5.plist. (The hex value comes from Brad. Matches the toolbar icons.) 2017-12-17 10:49:45 -08:00
Brent Simmons da489b8271 Add SmallIconProvider protocol. Objects that want an icon in the sidebar (and perhaps other places) can conform to this. 2017-12-17 10:48:55 -08:00
Brent Simmons adf5a5e784 Add NSImage extension method to tint an image with a color. 2017-12-17 10:48:24 -08:00
Brent Simmons 587ae2d1db Remove no-longer-needed toolbar placeholder image. 2017-12-17 10:47:43 -08:00
Brent Simmons d45347250a Remove theme popup menu from toolbar, since themes have been punted to 2.0. 2017-12-16 16:50:13 -08:00
Brent Simmons bdb9908d9e Remove back/forward from toolbar, since that feature’s been punted to 2.0. 2017-12-16 16:39:51 -08:00
Brent Simmons f133b539ca Create SidebarStatusBarView. 2017-12-16 16:36:35 -08:00
Brent Simmons 59f06ea764 Create Smart Feeds group item in sidebar. Fix #216. 2017-12-16 11:16:32 -08:00
Brent Simmons 0221eda956 Add Node.existingOrNewChildNode — recycles an existing node. Creates a new node only when needed. 2017-12-16 11:15:36 -08:00
Brent Simmons b19d15ed3f Increase spacing in sidebar from small to medium. 2017-12-16 11:14:24 -08:00
Brent Simmons 2efcd7ea0c Get rid of the window status bar. Put the current URL at the bottom of the detail view. 2017-12-16 10:18:02 -08:00
Brent Simmons 1f614c3c6a Remove Dinosaurs feature for now, since it’s scheduled for 2.0. Fix #255. 2017-12-14 22:19:55 -08:00
Brent Simmons 3b33d9a0c2 Remove menu items for features that won’t make it in until 2.0. 2017-12-14 22:12:56 -08:00
Brent Simmons 859f479a89 Fix a memory leak that happened every time you added a feed. Use a weak delegate to avoid a retain cycle. 2017-12-13 21:19:12 -08:00
Brent Simmons b04876185d Clean up DownloadWithCacheManager’s cache at most every five minutes — it’s very expensive to do it on every request. This dramatically helps sidebar scrolling performance when you have a couple thousand feeds all trying to get their favicons. 2017-12-13 21:18:20 -08:00
Brent Simmons e6dee88e2e Update only the favicon in the sidebar when a favicon is downloaded — no need to update the rest of the cell. 2017-12-13 21:16:52 -08:00
Brent Simmons db1db7b701 Cache parsed metadata when finding a home page’s favicon URL. Also: do the parsing in the background, for performance reasons. 2017-12-13 19:46:03 -08:00
Brent Simmons b3ecf9cdba Base the homePageURL for a feed from its feed URL when looking for its favicon. When necessary only. 2017-12-13 19:45:12 -08:00
Brent Simmons 3eb95ce63d Fix OPML import performance regression. Fix #238. 2017-12-11 23:12:54 -08:00
Brent Simmons 0b4a9f143e Parse Feedbin articles. 2017-12-11 13:36:16 -08:00
Brent Simmons 8160d8e38e Create Feedbin, FeedbinAccountDelegate, and FeedbinGetSubscriptionsDelegate. 2017-12-10 14:05:01 -08:00
Brent Simmons 6e93cc2718 Create FeedbinSubscription struct. 2017-12-10 14:04:14 -08:00
Brent Simmons 1d956c619d Make APICall.init public. 2017-12-10 14:03:35 -08:00
Brent Simmons 89a74077d9 Create FeedbinSubscription struct. 2017-12-10 13:58:44 -08:00
Brent Simmons 8d7eb910da Make APICall delegate based rather than defining a bunch of protocols. 2017-12-10 13:57:38 -08:00
Brent Simmons de883ce082 Define string constants in JSONFeedParser rather than using literals all over the place. Also: remove a no-longer-needed do/try/catch. 2017-12-10 13:56:40 -08:00
Brent Simmons cc3f77571b Make JSONTypes public. Add JSONUtilities. 2017-12-10 13:53:00 -08:00