Commit Graph

337 Commits

Author SHA1 Message Date
Brent Simmons 6a99534378 Add initial layout constants for avatar image. 2017-11-27 13:00:48 -08:00
Brent Simmons 657a74fe96 Bump version. 2017-11-26 21:42:33 -08:00
Brent Simmons 6c36107320 Prefer Apple touch icons to other feed icons. 2017-11-26 20:40:07 -08:00
Brent Simmons 4e50529b16 Add FeaturedImageDownloader. 2017-11-26 19:57:45 -08:00
Brent Simmons edba636121 Add HTMLMetadataDownloader. 2017-11-26 14:03:08 -08:00
Brent Simmons 82dace2acc Start FeedIconDownloader. 2017-11-26 13:48:40 -08:00
Brent Simmons 441a8f49b3 Add AuthorAvatarDownloader. 2017-11-26 13:16:32 -08:00
Brent Simmons e08acc9837 Make the status bar text color 25% instead of completely black. 2017-11-25 21:31:26 -08:00
Brent Simmons 4052f85e10 Add avatar and featuredImage to TimelineCellData. 2017-11-25 21:27:35 -08:00
Brent Simmons b9c562b77a Keep track of bad URLs and URLs in progress in ImageDownloader. 2017-11-25 20:24:38 -08:00
Brent Simmons 33fef5ea1c Add ImageDownloader. 2017-11-25 20:12:53 -08:00
Brent Simmons 1047fa5a02 Use the proper index sets and so on to make deleting work from the sidebar again. Fix #192. 2017-11-25 17:44:54 -08:00
Brent Simmons 17662ef337 Simplify functions for applying functions to cells. 2017-11-25 16:16:03 -08:00
Brent Simmons cf57e1be32 Log a message when favicon download fails. 2017-11-25 16:15:36 -08:00
Brent Simmons d373662484 Print logged messages to Console. 2017-11-25 16:15:17 -08:00
Brent Simmons ba638ecda1 Normalize homePageURL in FaviconDownloader — this avoids doing duplicate work for http://foo.com/ and http://foo.com — they’re both treated as http://foo.com/ 2017-11-25 16:11:24 -08:00
Brent Simmons 61c429d45c Log a debug message only when it’s first run. 2017-11-25 16:10:19 -08:00
Brent Simmons 7b964e05f9 Avoid looking for favicon when updating only a cell’s unread count. Micro-optimization. 2017-11-25 15:21:35 -08:00
Brent Simmons 5e41460849 Edit a couple feeds in the Feed Directory to use JSON Feed. 2017-11-25 15:08:53 -08:00
Brent Simmons 68c01491fc Note when feed settings change and update the sidebar cells. 2017-11-25 13:48:14 -08:00
Brent Simmons 16f1791b95 Put the Favicons cache folder inside a com.ranchero.evergreen folder. 2017-11-25 13:47:26 -08:00
Brent Simmons 8425e9033b Fix bug getting Dr. Drang’s favicon. 2017-11-25 13:46:48 -08:00
Brent Simmons 09c5d09c4e Bump version number. Update appcast. 2017-11-25 11:56:47 -08:00
Brent Simmons 013e4dac0e Add some vertical spacing between rows in the source list. 2017-11-25 11:45:06 -08:00
Brent Simmons 605227c27d Return sidebar to source list translucency. We’ll try it, anyway. 2017-11-25 11:40:15 -08:00
Brent Simmons 8fe2810a90 Show favicons in the Feed Directory. Fix #109. 2017-11-25 11:33:07 -08:00
Brent Simmons 5ddf9ea284 Update sidebar when favicon becomes available. Fix #125. 2017-11-25 11:14:42 -08:00
Brent Simmons 22ec7d670a Use temp directory for favicons, so they’ll automatically get cleaned up by the system. 2017-11-25 11:14:06 -08:00
Brent Simmons 226a7d05b6 Use 97% white background for source list, since favicons look so very terrible on standard translucent sidebar background. 2017-11-24 22:05:10 -08:00
Brent Simmons f7e3a4e914 Make progress on showing favicons in the source list. 2017-11-24 21:57:28 -08:00
Brent Simmons 4cf3f8dfe7 Create and use SidebarCellAppearance and SidebarCellLayout with SidebarCell. 2017-11-24 21:39:59 -08:00
Brent Simmons f8a05badcb Make further progress on favicons. Should be close to a first cut now. 2017-11-24 13:12:18 -08:00
Brent Simmons d464fa0c38 Make progress on favicons. 2017-11-24 10:45:22 -08:00
Brent Simmons 9e3e093bcd Make progress on favicons. 2017-11-23 14:15:28 -08:00
Brent Simmons b4ff1785ab Switch from download to downloadUsingCache where appropriate. 2017-11-23 10:29:00 -08:00
Brent Simmons d6e436c47f Darken the splitview dividers. 2017-11-21 20:47:35 -08:00
Brent Simmons ba4ba74fef Set “floats group rows” to false in the source list. 2017-11-21 20:36:45 -08:00
Brent Simmons 1288309995 Make window have a title — this allows people to show labels for toolbar items. 2017-11-21 13:12:22 -08:00
Brent Simmons 6e48acc0ae Bump version number. 2017-11-21 13:12:03 -08:00
Brent Simmons 0ed0b483bc Make unread indicator circle in timeline match the same blue used in toolbar icons. 2017-11-21 13:06:23 -08:00
Brent Simmons 00f7b817a7 Make further progress on FaviconDownloader. 2017-11-20 13:29:20 -08:00
Brent Simmons 91895d4066 Create FaviconURLFinder, which pulls the favicon URL from the metadata of a web page. 2017-11-20 13:16:06 -08:00
Brent Simmons 6979b85fb5 Make progress on FaviconDownloader. 2017-11-19 23:59:04 -08:00
Brent Simmons cb7f324922 Create Debug menu. Fix #139. 2017-11-19 22:39:13 -08:00
Brent Simmons 26cc99db54 Start FaviconCache. 2017-11-19 21:26:01 -08:00
Brent Simmons 8fc7445a7a Disallow selecting group items. Fix #193. 2017-11-19 21:01:16 -08:00
Brent Simmons f885c918d2 Switch back to using a source list sidebar. We’ll see how it goes once we add favicons. 2017-11-19 20:42:37 -08:00
Brent Simmons 5c2ef9641e Bump version number. 2017-11-19 16:41:59 -08:00
Brent Simmons ffaa55c50c Implement mark-everywhere-as-read. 2017-11-19 16:28:26 -08:00
Brent Simmons 9c2dd9251f Move mark bulk read commands to Panic Buttons submenu. 2017-11-19 15:45:20 -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 9f415dfab7 Delete moved things. 2017-11-19 13:57:59 -08:00
Brent Simmons 1ed48090dd Add UnreadFeed pseudo-feed. 2017-11-19 13:57:42 -08:00
Brent Simmons 387b5ffd4d Make PseudoFeed a protocol and make TodayFeed a class. The various pseudo feeds are different enough that this is the right way to go. 2017-11-19 13:30:30 -08:00
Brent Simmons 55be38269f Treat Folder and Account as Container in SidebarTreeControllerDelegate. Also: add pseudo feeds. 2017-11-19 12:59:37 -08:00
Brent Simmons d901bbb218 Create a pseudoFeeds array held by the app delegate. Create the Today feed at startup. 2017-11-19 12:46:29 -08:00
Brent Simmons 83cee90929 Fix a couple bugs in PseudoFeed. Make callback for fetching unread count @escaping. 2017-11-19 12:45:35 -08:00
Brent Simmons e681007bbe Add TodayFeedDelegate. Start work on fetching unread count for Today pseudo-feed. 2017-11-19 12:12:43 -08:00
Brent Simmons 8406cb9b8e Add a private extension to PseudoFeed. 2017-11-19 11:58:20 -08:00
Brent Simmons 93b8da15dc Create PseudoFeed.swift. This will be used for Today, All Unread, Starred, etc. 2017-11-19 11:43:31 -08:00
Brent Simmons 911e992b76 Use a Swift name for rs_performSelectorCoalesced — make it performSelectorCoalesced:with:delay:. 2017-11-19 11:42:22 -08:00
Brent Simmons 3f85024aea Bump version. 2017-11-18 17:19:59 -08:00
Brent Simmons 6a11c9c1f3 Set column sizing to first column only. Fix #188. 2017-11-18 17:14:38 -08:00
Brent Simmons 197ceefea9 Expand group items by default. Fix #187. 2017-11-18 17:10:47 -08:00
Brent Simmons 23ae585b12 Add a group-style row for accounts. 2017-11-18 16:56:36 -08:00
Brent Simmons b3b8c73f1c Set window title’s visibility to hidden. Fix #186. 2017-11-18 12:13:28 -08:00
Brent Simmons b4969bb6d4 Switch to a white background for the left-hand sidebar. Reason: we’re going to put favicons there, and favicons often don’t use transparency, and so they look bad on any background that isn’t white. For reference: http://inessential.com/2011/03/03/netnewswire_lite_favicons_and_the_non- 2017-11-18 12:09:51 -08:00
Brent Simmons cb434863e5 Lighten the split view divider color. 2017-11-18 12:08:18 -08:00
Brent Simmons 1f26a83ed8 Use a layer for background color for timeline table cell. Don’t use drawRect: for performance reasons. 2017-11-18 11:39:25 -08:00
Brent Simmons 8ccceb6fa2 Bump version. 2017-11-18 11:38:51 -08:00
Brent Simmons 9e6651a72c Change Star menu item to Mark as Starred. 2017-11-18 11:11:04 -08:00
Brent Simmons bc6370e6c5 Add tooltips to toolbar items. Make icon-only the default. 2017-11-18 11:07:18 -08:00
Brent Simmons 51b635a4d8 Change menu item 'Hit Panic Button…' to 'Mark Older Articles as Read…' 2017-11-18 10:57:11 -08:00
Brent Simmons a5f2f8e7bc Add Star toolbar item. 2017-11-18 10:50:53 -08:00
Brent Simmons 68eaa2e04f Add Action toolbar item. 2017-11-18 10:34:22 -08:00
Brent Simmons 34112a1df8 Bump version number. 2017-11-17 21:17:49 -08:00
Brent Simmons 394fc629d3 Add toolbar icons. 2017-11-17 21:07:52 -08:00
Brent Simmons c459bd1a4e Add Panic Button UI. 2017-11-16 18:23:07 -08:00
Brent Simmons 5150e7af95 Remove the prototype popup from bottom-left of the window. 2017-11-16 17:39:36 -08:00
Brent Simmons ceee86a511 Add app icon. 2017-11-16 14:46:04 -08:00
Brent Simmons 0e5b400a0c Show Error Log window from Window menu. 2017-11-15 22:40:49 -08:00
Brent Simmons 1d2fe4623b Add Inspector to RSCore. Show/hide inspector via Info command in Window menu. 2017-11-15 22:33:35 -08:00
Brent Simmons 1e713e3bfd Update Account unread count when BatchUpdate did perform. 2017-11-15 13:26:10 -08:00
Brent Simmons baaf9c1a02 Run the new-folder sheet on the frontmost window. 2017-11-15 13:13:40 -08:00
Brent Simmons 60ee139451 Add ability to log items to AppDelegate. 2017-11-14 21:31:17 -08:00
Brent Simmons df6b784015 Merge branch 'master' of https://github.com/brentsimmons/Evergreen 2017-11-14 21:15:26 -08:00
Brent Simmons 7e2420700c Add Logger and LogItem. Start work on log window. 2017-11-14 21:15:06 -08:00
Brent Simmons c228c34b00 Add New Window command to File menu — it creates a new reader window. 2017-11-14 13:18:25 -08:00
Brent Simmons 0000e403df Change New Folder shortcut to shift-cmd-N to match Finder. 2017-11-14 13:10:22 -08:00
Brent Simmons 0bc84aa50c Show the Keyboard Shortcuts menu via its new Window menu command. The window’s HTML content remains to be done, though. 2017-11-13 18:33:23 -08:00
Brent Simmons 00ff9016bc Draw using proper background color when selected but not emphasized. Fix #152. 2017-11-12 12:16:27 -08:00
Brent Simmons b077dfafd1 Show Dinosaurs window via Window menu command. 2017-11-12 11:57:51 -08:00
Brent Simmons 503c043e02 Start DinosaursWindow.xib. 2017-11-12 11:42:34 -08:00
Brent Simmons 7207598cdc Close the finding-feed progress window once the feed has been found. Fix #145. 2017-11-12 11:01:17 -08:00
Brent Simmons 861afa06c7 Draw a background color for the timeline cell, and make it opaque, so it looks not-weird when dragging. 2017-11-11 21:53:43 -08:00
Brent Simmons 51825f8f05 Write dragged feeds with various UTI types, including a custom feed type. 2017-11-07 21:14:58 -08:00
Brent Simmons 06de21776a Allow article drag from timeline view to other apps. Write URL on dragging. 2017-11-06 22:06:42 -08:00
Brent Simmons b79ded1eb9 Write the string plist for the article. 2017-11-06 13:29:53 -08:00
Brent Simmons f452021bd2 Create an ArticlePasteboardWriter, and return it from the timeline’s data source delegate method pasteboardWriterForRow. 2017-11-06 13:20:29 -08:00
Brent Simmons 03aae6adc5 Add more to the feed directory. 2017-11-05 23:15:15 -08:00
Brent Simmons e8860ce3a4 Add Indie Stack to feed directory. 2017-11-05 22:25:32 -08:00
Brent Simmons a7118d6710 Add Seattle category to feed directory. 2017-11-05 22:16:58 -08:00
Brent Simmons f25d7ceb64 Add more to the feed directory. 2017-11-05 22:12:51 -08:00
Brent Simmons a7464daf15 Mark Read command now works. 2017-11-05 21:27:34 -08:00
Brent Simmons 11aa68fd6f When timeline reloads due to a change in sidebar selection, post the selection-did-change notification so that status bar view and detail view can go blank (instead of continuing to show the previous selection). 2017-11-05 20:59:30 -08:00
Brent Simmons 8401d0f2f9 Display the mouseover link in the status bar, and remove it on mouseexit. 2017-11-05 20:42:27 -08:00
Brent Simmons 3fcede7fb4 Add JavaScript and native message handler for getting mouseover urls from the detail view’s WKWebView. 2017-11-05 20:31:50 -08:00
Brent Simmons 9818278c9b Make undo deleting feeds/folders work. 2017-11-05 12:14:36 -08:00
Brent Simmons 57296279e4 Switch back to AnyObject from AnyHashable, because of http://openradar.appspot.com/34824398 2017-11-04 23:05:20 -07:00
Brent Simmons e16911b363 Make deleting work. Can’t undo yet. But now everything is messed-up because of an AnyHashable casting bug. Don’t run this build. 2017-11-04 22:51:14 -07:00
Brent Simmons 2396a3bfca Make main window source list have same cell size as feed directory — small size. 2017-11-04 15:39:55 -07:00
Brent Simmons 8014b56846 Make FeedListFeed and FeedListFolder structs. 2017-11-04 15:36:33 -07:00
Brent Simmons c08bbaa970 Use AnyHashable instead of AnyObject as representedObject for tree nodes. 2017-11-04 15:27:32 -07:00
Brent Simmons 1adaebf2bf Use small size for source list cell in feed directory. 2017-11-04 14:56:06 -07:00
Brent Simmons ef1d95341b Show feeds in Feed Directory sidebar. 2017-11-04 14:53:21 -07:00
Brent Simmons 44461af07a Read feed directory data from disk. 2017-11-04 12:19:34 -07:00
Brent Simmons 0960477be6 Move undoable commands into TimelineViewController private extension. 2017-11-04 10:39:47 -07:00
Brent Simmons b2ad739caf Move table view data source and delegate back to TimelineViewController — it’s simpler that way. 2017-11-04 10:35:34 -07:00
Brent Simmons 5b34ed5432 Start FeedList.plist, which will be displayed in the Feed Directory. 2017-11-02 13:20:09 -07:00
Brent Simmons 911e6b0879 Do some refactoring. 2017-11-01 22:40:28 -07:00
Brent Simmons af3f41fbda Start ArticleArray.swift. 2017-11-01 20:45:38 -07:00
Brent Simmons 129f7a5da9 Create FeedListViewController and FeedListTimelineViewController. 2017-11-01 20:45:04 -07:00
Brent Simmons f509745266 Fix build error. 2017-11-01 13:28:30 -07:00
Brent Simmons 3a48901c57 Craete FeedListControlsView. Wire up actions for buttons to first responder, which ends up at FeedListWindowController. 2017-11-01 13:27:45 -07:00
Brent Simmons 4575934f22 Flesh out FeedList UI. 2017-11-01 13:17:25 -07:00
Brent Simmons 6250e23b3e Put search back in the toolbar for the feed directory. 2017-10-31 22:42:33 -07:00
Brent Simmons da7ecc3b22 Edit FeedList.storyboard to place search field at bottom of window. 2017-10-31 20:53:30 -07:00
Brent Simmons 69718e2dde Fix some build errors. 2017-10-31 20:33:41 -07:00
Brent Simmons b048e3fd58 Move the timeline table’s data source a separate file/class. 2017-10-30 08:23:01 -07:00
Brent Simmons 17b84ec57c Rename MarkAllReadCommand to MarkReadOrUnreadCommand and make it handle both cases. 2017-10-29 12:09:56 -07:00
Brent Simmons 9fbce42959 Clear undoableCommands when the articles array changes. 2017-10-29 11:44:35 -07:00
Brent Simmons 5f848f568a Begin support for clearing undo commands on sidebar selection change. 2017-10-29 11:28:45 -07:00
Brent Simmons f9b3eeb4d7 Switch macOS deployment target to 10.13. Get MarkAllReadCommand working as an undoable command. 2017-10-29 11:14:10 -07:00
Brent Simmons 8d5e568cde Make folder.account weak and optional. 2017-10-21 16:37:40 -07:00
Brent Simmons 39c74249af Rewrite assertionFailure using “Expected…” form. 2017-10-21 16:32:03 -07:00
Brent Simmons 71e8a9131d Make progress on fixing adding feeds. 2017-10-21 15:56:01 -07:00
Brent Simmons 4118e4a2d5 Make progress on fixing adding feeds. 2017-10-21 15:04:59 -07:00
Brent Simmons b74d2e1a3c Change AddFeedWIndowControllerDelegate to use Container instead of Folder. 2017-10-21 13:33:08 -07:00
Brent Simmons ebf1e36f38 Removed an extraneous line of code. 2017-10-21 13:32:36 -07:00
Brent Simmons 595af2561d Use TreeController.normalizedSelectedNodes in the delete action. 2017-10-21 12:14:45 -07:00
Brent Simmons e0f872a8c7 Differentiate between navigation keys and other keys-that-are-handled in keyDown. 2017-10-21 12:13:20 -07:00
Brent Simmons 2442d02ba1 Make the sidebar translucent. At least for now. May need to change it back when we add favicon. 2017-10-21 10:56:13 -07:00
Brent Simmons f6f4680e10 Handle the Delete key in the sidebar. 2017-10-21 10:55:20 -07:00
Brent Simmons 4c017dab10 Update unread counts after fetching articles on changing selection in the sidebar. 2017-10-19 21:56:30 -07:00
Brent Simmons 5289a68433 Create and use childNodesForContainerNode, which replaces two functions doing the same thing. 2017-10-19 21:52:45 -07:00
Brent Simmons 1481d72ed1 Fix node duplication bug on rebuilding tree. 2017-10-19 21:38:50 -07:00
Brent Simmons 913a5f46a0 Make New Folder a default toolbar item. (I learned this exact lesson many years ago: if New Folder isn’t in the toolbar, people will request that the app support folders.) 2017-10-19 13:30:49 -07:00
Brent Simmons aca8acea7c Update sidebar when adding a folder. 2017-10-19 13:27:59 -07:00
Brent Simmons 3812c216b2 Show unread count in window title. 2017-10-18 21:53:45 -07:00
Brent Simmons 2383ecd480 Implement ensureFolder — it actually creates and adds a folder and makes sure account is saved to disk. 2017-10-18 19:46:35 -07:00