Commit Graph

288 Commits

Author SHA1 Message Date
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
Brent Simmons fe29ccd2ed Show unread count in dock badge. Force-update unread counts at startup. 2017-10-18 18:37:45 -07:00
Brent Simmons f5a5bf91b2 Update unread counts for feeds when statuses change. 2017-10-09 21:54:08 -07:00
Brent Simmons 106cedb638 Fix sort order in timeline. 2017-10-09 08:32:26 -07:00
Brent Simmons 6572631866 Update the timeline cell when an article’s status changes. 2017-10-08 21:06:25 -07:00
Brent Simmons 8aa3746cb8 Add code for fetching articles for the timeline. Doesn’t actually work yet, though, for some reason. 2017-10-08 18:58:15 -07:00
Brent Simmons ca611623aa Simplify Container and its function implementations. 2017-10-07 21:41:21 -07:00
Brent Simmons c6f683c34c Make Account, rather than its delegate, watch for refresh progress changes. This way the delegate doesn’t have to be inited with its Account. 2017-10-07 17:43:10 -07:00
Brent Simmons b77569f38b Create and use CombinedRefreshProgress, which reports refresh progress across all accounts. Used by the status view. 2017-10-07 17:20:19 -07:00
Brent Simmons 5d8aa94dc3 Keep track of refresh beginning and finishing. Validate the refreshAll command (menu, toolbar). 2017-10-07 14:40:14 -07:00
Brent Simmons fa0d355ab0 Require High Sierra. 2017-10-07 12:00:47 -07:00
Brent Simmons 6a1c39d8a3 Remove Notifications.swift from Data.framework. Clean up UnreadCountProvider. 2017-10-07 11:56:22 -07:00
Brent Simmons 0f19fda54d Use BatchUpdate.shared. 2017-10-05 20:38:54 -07:00
Brent Simmons c258a9da5c Rewrite and move BatchUpdate.swift. 2017-10-05 20:34:29 -07:00
Brent Simmons b53626fc84 Make super minor edits. 2017-10-05 20:03:35 -07:00
Brent Simmons 119a03e891 Create windowAutosaveName just once. 2017-10-05 18:17:07 -07:00
Brent Simmons 4d77dbfd36 Make a Browser struct with two static methods to replace two top-level functions. 2017-10-05 18:12:58 -07:00
Brent Simmons 77b01eb72c Remove emailSupport action, since there is no email-based support. 2017-10-05 18:02:01 -07:00
Brent Simmons 1bbaa3bfa2 Move dock badge updating code to new DockBadge.swift. 2017-10-05 18:01:18 -07:00
Brent Simmons 22275edf53 Create OPMLImporter with code cut from AppDelegate. 2017-10-05 13:28:39 -07:00
Brent Simmons 33e6e72d21 Fix crashing bug. Now the app window appears! Without any data in it, sure, but hey. 2017-10-05 13:15:32 -07:00
Brent Simmons b8f69779ed Fix build error. The app builds and runs now — and then crashes. But still, it’s progress! 2017-10-05 13:09:09 -07:00
Brent Simmons 83231ed373 Fix some build errors. 2017-10-02 13:15:07 -07:00
Brent Simmons 0630a89df3 Fix more build errors. 2017-10-02 00:53:58 -07:00
Brent Simmons cb4027a951 Fix some build errors. 2017-10-01 11:28:44 -07:00
Brent Simmons 04612049f5 Make progress on adding feeds. 2017-10-01 10:59:35 -07:00
Brent Simmons a910841c65 Add createFeed method. 2017-09-30 16:56:48 -07:00
Brent Simmons 55967f8731 Fix some build errors. 2017-09-26 21:43:40 -07:00
Brent Simmons 2978d4420b Start work on adding feeds and folders. 2017-09-25 13:31:36 -07:00
Brent Simmons 21080a97fc Start work on feed importing. 2017-09-24 22:35:57 -07:00
Brent Simmons 4d677b2055 Fix a bunch of build errors. 2017-09-24 12:24:44 -07:00
Brent Simmons 8c0c8db824 Make minor cleanups. 2017-09-23 13:59:19 -07:00
Brent Simmons d3593683df Move code from Defaults to AppDefaults. 2017-09-23 13:41:15 -07:00
Brent Simmons 1ab282c23a Do some cleanups on app code. 2017-09-23 12:17:14 -07:00
Brent Simmons 96bc93612e Rename AppConstants to AppNotifications. 2017-09-23 12:00:07 -07:00
Brent Simmons 6c7c8c7110 Start work on AppDefaults.swift. 2017-09-22 18:37: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 b28a849af6 Continue march toward non-optional article.status. 2017-09-18 22:00:35 -07:00
Brent Simmons 54ca352a70 Continue fixing build errors. 2017-09-17 17:56:04 -07:00
Brent Simmons c74201d163 Continue fixing build errors. 2017-09-17 17:12:42 -07:00
Brent Simmons 92a60d8f06 Continue fixing build errors. 2017-09-17 17:03:58 -07:00
Brent Simmons 0336e30b0d Continue to fix build errors. 2017-09-17 16:30:45 -07:00
Brent Simmons 6631a9c2f8 Continue fixing build errors. 2017-09-17 13:07:55 -07:00
Brent Simmons c0ce68e64b Fix some build errors. 2017-09-17 12:54:08 -07:00
Brent Simmons 1b391c262e Continue working on build errors. 2017-09-17 12:34:10 -07:00
Brent Simmons 0ce18fe11a Replace references to DataModel with Data. 2017-09-17 12:22:15 -07:00
Brent Simmons 121fbf3c27 Move AccountManager to Account.framework. 2017-09-17 12:20:32 -07:00
Brent Simmons 944f05c71e Commit major surgery but leave it unfinished. Everything is broken. 2017-07-01 17:22:19 -07:00
Brent Simmons cf77f19276 Use https URLs for all ranchero.com/evergreen/. 2017-06-01 16:28:27 -07:00
Brent Simmons 7b81bde429 Use https URL for Evergreen news in default feeds. 2017-06-01 16:27:09 -07:00