Commit Graph

575 Commits

Author SHA1 Message Date
Brent Simmons c8d2fac9a6 Rename MarkReadOrUnreadCommand to MarkStatusCommand and make it handle starring/unstarring and deleting/undeleting. Also: add contextual menu for smart feeds in the sidebar. 2018-02-11 12:59:35 -08:00
Brent Simmons a13d21395e Fetch starred articles for the Starred smart feed. 2018-02-11 12:07:55 -08:00
Olof Hellman f563c2f78e Merge remote-tracking branch 'brentsimmons/master' 2018-02-11 01:20:38 -08:00
Olof Hellman 43cfb54437 support for permalink and external url
Consolidate GetURL AppleEvent handling into AppDelegate+Scriptability
file
Add scripting access groups to sdef
Add exists command
Add ‘permalink’ and ‘external url’ properties to the article scripting
object
Add a unit test to verify the behavior of ‘current article’
2018-02-11 01:20:30 -08:00
Brent Simmons 5aeb914ab6 Fetch articles for the Today smart feed. 2018-02-10 17:37:47 -08:00
Brent Simmons d6d2b8d26c Remove Action item from the toolbar. Fix #337. 2018-02-10 15:49:58 -08:00
Brent Simmons 3e60f929a2 Add stubs for fetching articles for starred and today feeds. 2018-02-10 13:22:02 -08:00
Brent Simmons f5bfadfb33 Make the UnreadFeed conform to ArticleFetcher. It now displays articles in the timeline when selected. 2018-02-10 13:00:53 -08:00
Brent Simmons 9ac2d7d033 Create a WKWebView subclass (ugh) in order to hide items in its contextual menu. Fix #120. 2018-02-10 11:16:09 -08:00
Brent Simmons d46ae4df33 Add contextual menu to timeline. 2018-02-09 23:16:12 -08:00
Brent Simmons 46cae22987 Use the menu.takeItems method. 2018-02-09 22:10:52 -08:00
Brent Simmons 68d81b7581 Rearrange toolbar to put search closer to timeline. 2018-02-09 21:58:42 -08:00
Brent Simmons 582fd62080 Start work on timeline contextual menus. 2018-02-08 13:24:43 -08:00
Olof Hellman dcd2ee94f9 Merge remote-tracking branch 'brentsimmons/master' 2018-02-08 00:12:33 -08:00
Olof Hellman 395af1420e implement 'current article' property of the application
Also, fix the unique-id based accessors (the four byte code  for id was
wrong in the sdef)
Add valueIn<Key>WithUniqueID accessors
Add a few protocols and protocol implementations for the AppDelegate
and MainWindowControllor so as to expose needed functionality for
scriptability
2018-02-08 00:11:52 -08:00
Brent Simmons 765a91dd34 Restore selection in timeline after reload due to font size change. 2018-02-07 21:48:51 -08:00
Brent Simmons 2797c607c3 Update row height in timeline when font setting changes. 2018-02-07 21:46:54 -08:00
Brent Simmons 78530dbb96 Change the name of the Show/Hide Sidebar command as needed. Fix #98. 2018-02-07 21:42:33 -08:00
Brent Simmons a3a9d467dc Show the contextual menu for all selected items in the sidebar when the clicked row is part of the selection. 2018-02-07 21:23:18 -08:00
Brent Simmons 4491c5f443 Make the sidebar contextual menu refer to the clicked row rather than the selected row. 2018-02-07 13:25:17 -08:00
Brent Simmons d59058c014 Show a contextual menu in the sidebar. Create and wire-up SidebarContextualMenuDelegate. 2018-02-07 13:17:28 -08:00
Brent Simmons 1f0123db36 Remove code setting the sidebarViewController on SidebarOutlineView, since it doesn’t use it. 2018-02-07 13:11:40 -08:00
Brent Simmons 03b1440045 Reorder UTI types in FeedPasteboardWriter to be like the order in ArticlePasteboardWriter. 2018-02-04 13:45:26 -08:00
Brent Simmons d6eb6e2f1d Bump version number. 2018-02-04 12:18:28 -08:00
Brent Simmons 6b14d6e8d3 Remove temporarily the Delete menu item from the sidebar gear menu. 2018-02-04 12:15:59 -08:00
Brent Simmons c26c705de0 Make Mark All as Read command in sidebar gear menu work. 2018-02-04 11:45:51 -08:00
Brent Simmons 2999641572 Move MainWindowController+ContextualMenus to SidebarViewController+ContextualMenus, where it always should have been. 2018-02-04 11:19:24 -08:00
Brent Simmons 27c5ffa5eb Add new-feed and new-folder commands to the sidebar gear menu when there’s no selection. 2018-02-03 21:30:30 -08:00
Brent Simmons 68d0885b0d Get rename sheet working, finally. 2018-02-03 21:04:28 -08:00
Brent Simmons ae840b31bc Continue progress on rename sheet. 2018-02-03 20:30:23 -08:00
Brent Simmons 01729378f3 Make further progress on rename sheet. 2018-02-03 18:49:29 -08:00
Brent Simmons a03562eee8 Make further progress on the rename sheet. 2018-02-03 16:05:59 -08:00
Brent Simmons e7ce12869c Disable commands to add a feed or add a folder if the window is already displaying a sheet. Fix #319. 2018-02-03 10:56:12 -08:00
Brent Simmons 9fce370967 Try again to check in the added outlets. 2018-02-02 23:01:12 -08:00
Brent Simmons 70a3e6cc89 Wire up outlets for the rename sheet. 2018-02-02 23:00:09 -08:00
Brent Simmons 50dcf436d9 Change Cocoa imports to AppKit imports, because we don’t need CoreData imported (which Cocoa imports). 2018-02-02 22:51:32 -08:00
Brent Simmons 07052c565c Layout rename sheet. 2018-02-02 22:39:59 -08:00
Brent Simmons 6347ac7888 Merge branch 'master' of https://github.com/brentsimmons/Evergreen 2018-02-02 21:56:52 -08:00
Brent Simmons 920be7b0d1 Start work on the sidebar gear menu. There are commands there now. They don’t all work. 2018-02-02 21:56:17 -08:00
Daniel Jalkut a291f1e93c Merge branch 'fix-toolbar-validation' into xcode9.3 2018-01-29 11:49:47 -05:00
Daniel Jalkut e4136c2165 Sender should be Any? to reflect the fact it may be nil. This nuance seems to make the difference on Xcode 9.3/Swift 4.1 between crashing or not. Without this change, refreshing crashes every time, presumably because Swift is making assumptions about the parameter being non-nil and refreshProgressDidChange calls it explicitly with a nil parameter. 2018-01-29 11:48:09 -05:00
Daniel Jalkut d7f13ca4be Change from flatMap to new compactMap rename in Xcode 9.3. 2018-01-29 11:19:54 -05:00
Brent Simmons 2d7d903bca Create and use a SidebarGearMenuDelegate to show a menu when the gear menu in the sidebar is clicked. 2018-01-28 16:09:18 -08:00
Brent Simmons 29fe1869aa Build contextual menus in MainWindowController extension. 2018-01-28 13:28:33 -08:00
Brent Simmons 199cfcb4eb Create ContextualMenuCreator. 2018-01-28 12:13:43 -08:00
Brent Simmons 285e3971d7 Re-sort the timeline when sort direction changes. Fix #65. 2018-01-28 11:45:18 -08:00
Brent Simmons 78e8823f23 Merge branch 'master' of https://github.com/brentsimmons/Evergreen 2018-01-28 11:33:58 -08:00
Brent Simmons ffd11b91ef Register for UserDefaults.didChangeNotification instead of using KVO on NSUserDefaultsController. 2018-01-28 11:33:45 -08:00
Brent Simmons 28c4ea82e5 Consider sort direction when sorting the Article array for the timeline. 2018-01-28 11:33:04 -08:00
Brent Simmons 144bccd45e
Merge pull request #305 from michaeljtsai/master
Share button now supports "EagleFiler Import" and "Add to Reading List".
2018-01-28 10:51:45 -08:00
Brent Simmons 6e63ce5968 Set the menu item state for the sort-by menu items. 2018-01-27 15:24:33 -08:00
Brent Simmons 8968d00d6d Validate sort-by menu items. 2018-01-27 15:13:45 -08:00
Brent Simmons 7e0917cb4e Add actions for sort menu items. 2018-01-27 15:11:02 -08:00
Brent Simmons b32d45cd60 Add isOpen property to MainWindowController. 2018-01-27 15:04:45 -08:00
Brent Simmons c2afd03d8c Add pref for timeline sorting direction. 2018-01-27 14:59:46 -08:00
Brent Simmons 19a46e9b20 Add Sort By submenu to View menu. 2018-01-27 14:59:35 -08:00
Brent Simmons 3ff00b7eb0 Make Go > Today, Unread, Starred commands work. Fix #310. 2018-01-27 12:39:07 -08:00
Brent Simmons 1a53e59c3a Set the feed directory window controller class in IB. 2018-01-27 12:35:32 -08:00
Brent Simmons 5888e1b7d0 Remove Debug menu when running a Release build. 2018-01-27 11:32:59 -08:00
Brent Simmons c66269bd61 Use the generic feed image in the Feed inspector when there’s no favicon or feed image. Fix #307. 2018-01-27 11:08:16 -08:00
Brent Simmons 33f9d31728 Back out of multiple window support. It will re-appear in 2.0. Add command to Window menu to show the main window if it’s been closed. Fix #301. 2018-01-27 10:43:09 -08:00
Brent Simmons 763da44440 Remove Go > Previous Unread (slated for 2.0). 2018-01-27 10:38:35 -08:00
Brent Simmons d64764ea4d Remove the Filter (search) control from the Feed Directory — punting this feature till 2.0. 2018-01-26 22:20:48 -08:00
Brent Simmons 5e7357cd90 Switch to using TimelineViewController for the Feed Directory. 2018-01-26 21:56:16 -08:00
Brent Simmons 717e60fcf6 Download feeds as needed for the Feed Directory. 2018-01-24 22:20:22 -08:00
Olof Hellman 903dff13d2 Add tests for simple article property script, fix error in previous
OPML xctest function (wrong name for test function).
2018-01-24 00:27:56 -08:00
Olof Hellman 31bd9d918c Scripting support for articles and basic article properties
Also, added support for accessing feeds directly from the top level
container, essentially skipping account as a hierarchy level.

With this change, a script like

tell app “Evergreen”
   title of every article of feed "Six Colors" where read is true
end tell

produces the expected result.
2018-01-24 00:06:34 -08:00
Brent Simmons 72db8d62ae Update version and appcast. 2018-01-23 22:08:13 -08:00
Brent Simmons 8479693d4f Use updated app icons from Brad. 2018-01-23 21:51:30 -08:00
Brent Simmons f109237bfa Handle feed renames in the inspector. Handle multiple selection. Fix #137. 2018-01-23 21:49:33 -08:00
Brent Simmons aa32b09d2d Add updated nextUnread toolbar icons. 2018-01-23 21:25:30 -08:00
Brent Simmons bc1fe05e91 Move sentence about bindings to the right section. 2018-01-23 21:07:29 -08:00
Brent Simmons b2d3084313 Make progress on editing names in the inspectors. 2018-01-22 22:01:25 -08:00
Michael Tsai 063ed29d5d Share button now supports "EagleFiler Import" and "Add to Reading List".
List .URL before .string in the pasteboard types because otherwise the system will not propose sharing services that receive URLs but not text.
2018-01-22 11:02:29 -05:00
Brent Simmons 6ec2f72443 Set the NSTextFieldDelegate for the feed name text field. 2018-01-21 21:31:26 -08:00
Brent Simmons 01627e5dc8 Continue progress on inspectors. 2018-01-21 21:24:25 -08:00
Brent Simmons bb08cfaa5b Increase the size of too-small favicons to 16x16 in the feed inspector. 2018-01-21 21:04:52 -08:00
Brent Simmons e50055632b Continue progress on feed inspector. 2018-01-21 21:01:18 -08:00
Brent Simmons e4beadb84d Display image, name, feed URL, and home page URL in feed inspector. 2018-01-21 20:35:44 -08:00
Brent Simmons d0c6fd11c0 Hide Inspector window on deactivate app. 2018-01-21 14:00:19 -08:00
Brent Simmons 03af72bf2d Restore the window position of the Inspector when it’s first opened. 2018-01-21 13:36:02 -08:00
Brent Simmons 8a2973de36 Open the inspector at startup without doing an async block. 2018-01-21 13:30:26 -08:00
Brent Simmons 5a75d39b7c Reopen the Inspector window at launch if it was open on quit. 2018-01-21 13:27:17 -08:00
Brent Simmons a7a2eabf78 Remove unneeded window layout call. Change placement of initial inspector origin. 2018-01-21 13:11:09 -08:00
Brent Simmons ca5703e14f Keep the inspector’s top-left origin steady on changing views. 2018-01-21 12:46:22 -08:00
Brent Simmons 394274f1e5 Continue progress on inspector. 2018-01-21 11:35:50 -08:00
Brent Simmons a8cee0d803 Make further progress on inspectors. 2018-01-20 22:36:17 -08:00
Brent Simmons 541a88c17a Create Inspector protocol. 2018-01-20 21:48:27 -08:00
Brent Simmons c66266e323 Create FeedInspectorViewController. 2018-01-20 21:35:59 -08:00
Brent Simmons 8dbf126b14 Layout individual inspector views. 2018-01-20 21:30:05 -08:00
Brent Simmons d3a0d8b8b7 Remove Inspector stuff from RSCore on YAGNI basis. Start work on inspector in Evergreen. 2018-01-20 19:06:07 -08:00
Brent Simmons 807ad99aad Add new articles to the timeline when a feed that affects the timeline gets new articles. Fix #166. 2018-01-20 16:54:18 -08:00
Olof Hellman 2973bf8edb Add opal representation properties for scripting feed, account and
folder.
2018-01-19 22:49:01 -08:00
Olof Hellman fe5a11a2cc Merge remote-tracking branch 'brentsimmons/master' 2018-01-19 22:33:06 -08:00
Olof Hellman adcd266a11 Scripting support for Author class and expanded properties for feeds 2018-01-19 22:31:17 -08:00
Brent Simmons 9fea9c2d12 Create and use fetchUnsortedArticles(for:), which is common code that needed to be a separate function. 2018-01-17 22:03:13 -08:00
Brent Simmons 21f1863cd0 Unbreak the build by commenting out some in-progress code. 2018-01-17 21:51:24 -08:00
Brent Simmons 6b059671f5 Make progress on reloading timeline when feed updates. 2018-01-17 17:28:09 -08:00
Brent Simmons f048fa6073 Bump version. 2018-01-15 14:07:43 -08:00
Brent Simmons 82f11f6592 Add send-to-MarsEdit command to list of of send-to commands. 2018-01-15 12:11:56 -08:00
Brent Simmons 4f41824b73 Bump version. 2018-01-14 12:00:35 -08:00
Brent Simmons c3bcf82713 Make the send-to-Micro.blog command work. Need some tweaking, but it mostly does the job. 2018-01-11 22:18:46 -08:00
Olof Hellman 215a44fce7 Merge remote-tracking branch 'brentsimmons/master' 2018-01-11 00:53:37 -08:00
Olof Hellman 775dbf0852 basic readonly scripting support for account, feed, folder 2018-01-11 00:51:25 -08:00
Brent Simmons ccc699741d Decrease the opacity of the placeholder color for avatars in the timeline. 2018-01-09 21:33:13 -08:00
Brent Simmons 8b2f9b333a Make feed icons and favicons show up more quickly and reliably in the timeline. 2018-01-09 21:09:09 -08:00
Brent Simmons f982b63a6e Remove macalope.com from the feed directory, since apparently that site isn’t updated anymore — though our friend with the hooves does indeed keep writing. 2018-01-08 22:17:50 -08:00
Brent Simmons 1b0648cd18 Make feed icons show up more promptly and reliably in the timeline. 2018-01-08 21:34:39 -08:00
Brent Simmons 6d94372eef Increase the indentation in the source list so that feeds inside folders line up better. 2018-01-08 21:16:51 -08:00
Brent Simmons 99db11f659 Bump version. 2018-01-08 13:14:30 -08:00
Olof Hellman b04a4b83f2 Add very minimal support for a scripting dictionary — only the getURL
AppleEvent — and add an XCTestCase that can run and verify results of
AppleScripts that target Evergreen.
2018-01-07 15:13:10 -08:00
Brent Simmons 0a1642abdf Draw a white unread indicator in the timeline when the cell is selected and emphasized. Fix #112. 2018-01-06 14:33:16 -08:00
Brent Simmons 36b3ad8e85 Remove Error Log command from menu, since the Error Log won’t be until after 1.0. 2018-01-06 12:27:51 -08:00
Brent Simmons 0d4a58e2ab Create and use an NSTableView extension method: indexesOfAvailableRowsPassingTest. 2018-01-06 12:12:31 -08:00
Brent Simmons cfcfe2b4b5 Make reloading the timeline cells even more efficient upon avatar-download. 2018-01-06 11:56:32 -08:00
Brent Simmons f9b4e192e0 Make updating the timeline cells more efficient after downloading an avatar. 2018-01-06 11:18:03 -08:00
Brent Simmons 45f3f49a1f Fix bug where user avatars wouldn’t always show up in the timeline view promptly. 2018-01-05 13:22:16 -08:00
Brent Simmons 665561e5eb Show avatars in the timeline at the right times. 2018-01-04 21:20:09 -08:00
Brent Simmons e2c36caeee Move favicons in the detail view to the right. They’re show when available and there’s no other feed icon or user avatar. 2018-01-03 13:14:14 -08:00
Brent Simmons 4bb5270860 Move template and style sheet to same group as ArticleRenderer. 2018-01-03 13:07:05 -08:00
Brent Simmons 867e775e69 Show feed icons and avatars in the timeline. 2017-12-31 12:10:30 -08:00
Brent Simmons b35193b823 Make timeline cell height calculation reliable by considering all the rects, instead of assuming that one or another is the determining rect. 2017-12-31 12:08:25 -08:00
Brent Simmons c8a7b39178 Fix avatar alignment in the detail view. 2017-12-31 10:11:44 -08:00
Brent Simmons e970caf459 Freeze the user agent as Evergreen (macOS; RSS Reader; https://ranchero.com/evergreen/). (An iOS version would say iOS rather than macOS, but would be the same otherwise.) 2017-12-31 10:09:40 -08:00
Brent Simmons b441d2ee55 Bump version. 2017-12-30 16:14:01 -08:00
Brent Simmons 04c35dc1bf Comment out code for showing favicons in the timeline, since I don’t think we’re going to do that. But not totally sure yet. 2017-12-30 16:12:49 -08:00
Brent Simmons a420f377dc Fix bug finding favicon where it’s at the default location (/favicon.ico) and otherwise not specified. 2017-12-30 13:16:40 -08:00
Brent Simmons 1968986d64 Make User-Agent of the form: Evergreen/1.0d28 (Macintosh; RSS Reader; ranchero.com/evergreen/)
The idea is that anyone looking at their stats can quickly find out what it is. It’s a Mac RSS reader. They can open that URL for even more info. (Before 1.0 ships, at that link will be a link to an article for publishers about RSS readers and lowering bandwidth use. Will talk about conditional GET, etc.)
2017-12-30 12:51:37 -08:00
Brent Simmons befc5efc77 Show feed names and favicons in timeline when appropriate.
I don’t quite like this. Maybe avatars are better.
2017-12-30 12:45:10 -08:00
Brent Simmons 0c54e61fbc Update the showFeedNames timeline property based on what will be shown in the timeline. 2017-12-30 10:56:58 -08:00
Brent Simmons e18496d1b0 Use Flying Meat’s JSON Feed. 2017-12-30 10:48:31 -08:00
Brent Simmons f812209d06 Put avatars in detail view on the right side, a la Mail. 2017-12-30 10:02:46 -08:00
Brent Simmons 5dd20264bf Use feed icon’s gathered from HTML metadata. 2017-12-29 20:41:41 -08:00
Brent Simmons d2d7369d6a Show favicon in detail view when available and when there’s no user avatar or feed icon. 2017-12-29 20:04:43 -08:00
Brent Simmons 7f7f9c5166 Add note about messy code. 2017-12-29 19:03:52 -08:00
Brent Simmons d01f04beec Update version. 2017-12-29 18:59:16 -08:00
Brent Simmons 65fcbf00bf Show just one avatar in detail view. Make date a permalink, when available. 2017-12-29 18:59:04 -08:00
Brent Simmons 3b92c543fb Continue experimentation with detail view and avatars. 2017-12-29 18:14:16 -08:00
Brent Simmons 4be6df2c56 Continue experimentation with detail view avatars. 2017-12-29 17:10:50 -08:00
Brent Simmons 708e46ed18 Make progress on showing avatars in the detail view. 2017-12-29 12:21:19 -08:00
Brent Simmons d7e5c88b8f Create byline for detail view. 2017-12-29 11:31:47 -08:00
Brent Simmons 31c7d0aa34 Remove Window > Main Window command. You’ll just create a new window from the File menu. 2017-12-28 21:22:00 -08:00
Brent Simmons 141b09e2f0 Bump version number. 2017-12-28 18:41:54 -08:00
Brent Simmons a210dd2318 Make detail status bar show only on mouseover of a link. Don’t have an always-present view of the permalink. (We’ll see how this goes.) 2017-12-28 18:41:01 -08:00
Brent Simmons 953a97afd7 Use an image for feeds that don’t have favicons. Currently using the image at /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/BookmarkIcon.icns — but this might change. 2017-12-28 18:11:12 -08:00
Brent Simmons ab80e91ea7 Add FeedListSplitViewController — prevents feed directory sidebar from collapsing. 2017-12-28 18:09:41 -08:00
Brent Simmons 99f2c01a04 Go back to using storyboard for Feed Directory. 2017-12-28 16:37:30 -08:00
Brent Simmons 7ae2345073 Implement the Feed Directory’s split view delegate. 2017-12-28 13:37:52 -08:00
Brent Simmons e6adfc03fe Remove unwanted ellipsis from Mark Older as Read command. 2017-12-27 18:21:00 -08:00
Brent Simmons 70ae2bcb75 Bump version. 2017-12-27 18:11:02 -08:00