Commit Graph

558 Commits

Author SHA1 Message Date
Maurice Parker efd17502e0 Stub out all the global shortcut functions and move global shortcuts to the RootSplitViewController 2019-09-05 11:29:04 -05:00
Maurice Parker ac03992430 Fix bug in arrow key navigation where focus could get stolen from the timeline 2019-09-05 10:46:24 -05:00
Maurice Parker 7a452e2a3c Add keyboard arrow key navigation 2019-09-04 21:06:29 -05:00
Maurice Parker ae06544dd5 Add iframe to the list of max width elements to prevent youtube videos and others from being too large 2019-09-04 17:32:10 -05:00
Maurice Parker dabb78cde4 Merge branch 'mac-release' 2019-09-04 17:20:37 -05:00
Maurice Parker 8758d28cd7 Implement keyboard shortcut infrastructure and first shortcuts 2019-09-04 16:24:48 -05:00
Maurice Parker 68143aa2c5 Implement keyboard shortcut infrastructure and first shortcuts 2019-09-04 16:24:16 -05:00
Thomas Pritchard 091b43a9fb Apply figure styles to iOS as well 2019-09-04 19:58:30 +01:00
Maurice Parker 00a84ce6b5 Fix bug that prevented timeline from being restored after searching ends 2019-09-04 10:42:28 -05:00
Maurice Parker a29f69c0cb Create separate launch storyboard for iPad since we don't use large titles on iPad in three panel mode which is the only one you will see while launching 2019-09-04 04:46:13 -05:00
Maurice Parker 17a5d291f4 Remove become and resign first responder code in Feeds and Timeline 2019-09-03 20:39:00 -05:00
Maurice Parker fc872cf88f Add missing activity type 2019-09-03 19:58:48 -05:00
Maurice Parker 640faaa114 Simplify the article replacement logic 2019-09-03 16:07:02 -05:00
Maurice Parker 5cb099aee6 Add next unread as a user activity and more aggressively invalidate user activities 2019-09-03 15:52:59 -05:00
Maurice Parker e6a4338a86 Restore the feed selection if an account containing the selection is expanded 2019-09-03 13:59:22 -05:00
Maurice Parker b7ba2c809c Use better function for looking up article index 2019-09-03 13:43:59 -05:00
Maurice Parker bf572633f8 Enable drag and drop between accounts 2019-09-03 13:27:23 -05:00
Maurice Parker 960f09826b Add separator line to section headers so that they don't look smooshed together when collapsed 2019-09-03 13:00:31 -05:00
Maurice Parker 4bce625f18 Clear search results when no timeline fetcher is specified 2019-09-03 12:25:27 -05:00
Maurice Parker 2a00c879f8 Change to animate search results changes 2019-09-03 12:12:42 -05:00
Maurice Parker 2e71cc573d Cap the possible destination index used during Feed moves 2019-09-03 12:07:18 -05:00
Maurice Parker d5adbccd5b
Merge pull request #949 from correia/issue-948
Fix for issue #948 — bad highlight state for table cell views in light mode.
2019-09-03 11:56:14 -05:00
Jim Correia 061872b7ff Simplified/corrected highlighted/selected appearance of feed and timeline cells.
- Set the highlighted text color on labels in table cells. This will be used
  for both the highlight and selected states automatically. (And since it is
  used for both states, we avoid anachronistic state where we have black
  text on a dark blue background in light mode as we transition from none ->
  highlighted -> selected.)

- Keep the selected/highlighted overrides to adjust colors for non-UIControl
  subelements.
2019-09-02 22:39:01 -07:00
Jim Correia 932f6fdd30 Added NNWTableViewCell; a base class for cells with the NNW selection color.
Defined a semantic color for the selection color which is identical to
netNewsWireBlue.

MasterFeedTableViewCell and MasterTimelineTableViewCell now subclass
NNWTableViewCell and no longer directly customize their selected background
view.
2019-09-02 22:38:42 -07:00
Maurice Parker 0d6dbb6df3 Fix broken select next where it wasn't going to the next available fetcher in the Feeds scene 2019-09-02 17:28:28 -05:00
Maurice Parker 613cea5c7a Change next unread function so that it skips the current article even if that article is marked as unread 2019-09-02 17:24:20 -05:00
Maurice Parker fafb7de868 Remove Refresh shortcut item 2019-09-02 16:05:55 -05:00
Maurice Parker 93b702f170 Automatically copy any url in the pasteboard to the feed field for feed adds 2019-09-02 15:54:49 -05:00
Maurice Parker c5fed06581 Add refresh home screen shortcut. 2019-09-02 15:45:09 -05:00
Maurice Parker 2c4531f481 Add the Add scene as a home page quick action. 2019-09-02 15:14:26 -05:00
Maurice Parker b768877e23 Use correct delegate methods to begin and end searching 2019-09-02 12:40:14 -05:00
Maurice Parker 746c06d147 Prevent automated scrolling when selecting an article in the timeline 2019-09-02 12:05:11 -05:00
Maurice Parker c405fdf583 Implement search home page quick action 2019-09-01 17:41:46 -05:00
Maurice Parker 33882ab276 Add Home Page Quick Actions 2019-09-01 16:54:07 -05:00
Maurice Parker 189af8d816 Invalidate user activities when collapsed and returning to Feeds scene 2019-09-01 15:31:11 -05:00
Maurice Parker 1a9acdcc50 Remove TreeController from Delete command as it is no longer used there 2019-09-01 14:56:27 -05:00
Maurice Parker dfc3046bf0 Clear the timeline when the user begins searching 2019-09-01 14:49:56 -05:00
Maurice Parker a5298f0381 Refactor mark as read for articles to be in the SceneCoordinator instead of in the DetailViewController 2019-09-01 12:52:06 -05:00
Maurice Parker 858bdb7f21 Rename AppCoordinator to SceneCoordinator as that name better defines its purpose 2019-09-01 12:43:07 -05:00
Maurice Parker 43fb7dff9f Fix bug that prevented new folders from appearing in the Feeds 2019-09-01 10:29:30 -05:00
Maurice Parker 397d75c6f6 Restore animation when adds and deletes happen to feed items 2019-09-01 10:11:03 -05:00
Maurice Parker 27883632d0 Fix bug that prevented reading article user activities from being restored 2019-08-31 20:23:14 -05:00
Maurice Parker 87030a5921 Implement stateRestorationActivity to save most relevant current user activity 2019-08-31 19:30:21 -05:00
Maurice Parker 407bd296db Merge branch 'master' of https://github.com/brentsimmons/NetNewsWire 2019-08-31 17:37:49 -05:00
Maurice Parker 988ac1bbd8 Correct label color to specify correct platform 2019-08-31 17:37:42 -05:00
Maurice Parker 6caff148dd
Merge pull request #928 from correia/placeholder-content
Use noContentHTML rather than noSelectionHTML for prepared web views.
2019-08-31 17:20:52 -05:00
Jim Correia 5f11c42fc2 Use noContentHTML rather than noSelectionHTML for prepared web views.
Added a noContentHTML to ArticleRenderer. Use that for the initial content
for queued web views so that we don't see a temporary flash of "No
Selection" when pushing to an article that doesn't load instantly.
2019-08-31 15:03:03 -07:00
Maurice Parker c9858a0457 Show and hide scope bar based on editing state 2019-08-31 16:39:59 -05:00
Maurice Parker fe2e0155da Add scoped searching of articles 2019-08-31 15:53:47 -05:00
Maurice Parker ba36572497
Merge pull request #927 from correia/correia/webview-layout
Added missing constraints to the web container view in the Detail scene.
2019-08-31 15:27:52 -05:00
Jim Correia 77cf92ec13 Added missing constraints to the web container view in the Detail scene. 2019-08-31 13:20:23 -07:00
Jim Correia 52ad2623a8 Limit the size of the queue maintained by DetailViewControllerWebViewProvider. 2019-08-31 13:16:46 -07:00
Jim Correia f7b53283d6 Maintain a queue of "prepared" web views for use in DetailWebViewController.
WKWebView has an awful behavior of a flash to white on first load when in
dark mode.

Keep a queue of WebViews where we've already done a trivial load so that by
the time we need them in the UI, they're past the flash-to-shite part of
their lifecycle.
2019-08-31 12:53:03 -07:00
Jim Correia a5b2c759ec Create the WKWebView instance at runtime.
Specify a container view in the storyboard and create+install the web view
at viewDidLoad time.

This lets us experiment with solutions for providing a web view that avoids
the flash-to-white problem.
2019-08-31 12:30:01 -07:00
Jim Correia e5782ca464 Removed the hide the webview workaround to expose the flash to white problem. 2019-08-31 11:27:59 -07:00
Maurice Parker 67b9721a10 Made article search go fast 2019-08-31 12:12:50 -05:00
Maurice Parker 8002839941 Remove disclosure chevron from launch storyboard 2019-08-31 11:51:14 -05:00
Maurice Parker d9ce01591f Implement full article search 2019-08-31 11:50:34 -05:00
Maurice Parker 061dfe931b Restrict access to rebuildShadowTable function 2019-08-31 11:38:03 -05:00
Maurice Parker 2cf6550226 Implemented launch storyboard. Issue #742 2019-08-30 17:39:39 -05:00
Maurice Parker 762710266d Reload all cells when a batch update completes because we might be out of sync even though we called apply on the datasource. This can happen when moving a feed into and out of a folder. 2019-08-30 16:19:06 -05:00
Maurice Parker ca0bdb3d35 Change to not animate on timeline fetcher changes 2019-08-30 14:42:33 -05:00
Maurice Parker 07ca61f7cf Convert the timeline to use diffable datasources 2019-08-30 14:17:05 -05:00
Maurice Parker 3ab1412dc6 Preserve article selection when articles are downloaded (for iPad only) 2019-08-30 02:39:54 -05:00
Maurice Parker 86a302f787 Prevent selecting of items that may not show the current article selection as is done on the iPhone 2019-08-29 17:49:21 -05:00
Maurice Parker 6844762dfc Refresh smart feeds when they are selected and articles are downloaded 2019-08-29 15:02:45 -05:00
Maurice Parker b98877c7df Fix bug where Feeds wasn't getting updated when adding/subtracting or activating/inactivating accounts 2019-08-29 14:46:51 -05:00
Maurice Parker 197fc0170e Optimize and fix unread count updates 2019-08-29 14:35:18 -05:00
Maurice Parker 8e583c2fad Prevent scrolling when reloading and reselecting a cell. 2019-08-29 14:04:15 -05:00
Maurice Parker 379ba49fd5 Fix select position getting lost on refreshes 2019-08-29 11:53:36 -05:00
Maurice Parker be8c14bc65 Change to reload the individual row instead of just changing its contents 2019-08-28 20:21:50 -05:00
Maurice Parker 7062744758 Make sure we manually correct some state when using diffable datasources 2019-08-28 20:08:30 -05:00
Maurice Parker 89a38fa2b5 Change Feeds to use diffable data sources 2019-08-28 18:06:27 -05:00
Maurice Parker 9c66f6160e Clean activities when the associated data is deleted 2019-08-28 11:30:40 -05:00
Maurice Parker ba9f7ac426 Add navigation support for Folder and Feed view activities 2019-08-27 17:43:15 -05:00
Maurice Parker d641223536 Add Activities for viewing Feeds and Folders 2019-08-27 14:20:34 -05:00
Maurice Parker a1c74a03d1 Update to work with the enhanced FeedIconDownloader 2019-08-26 19:48:12 -05:00
Maurice Parker 6c98abb289 Fix image and favicon caching 2019-08-26 16:58:06 -05:00
Maurice Parker d7c90106d1 Change to directly modify the avatar image instead of calling reload on the cells 2019-08-26 15:37:15 -05:00
Maurice Parker c3e93f4b8c Fix scenario where multiple timelines could get pushed onto the navigation stack 2019-08-26 09:07:41 -05:00
Maurice Parker 3d408d0b27 Prevent autolayout from messing around with our disclosure chevron 2019-08-25 20:06:45 -05:00
Maurice Parker cf5fd4fa89 Invalidate content size correctly 2019-08-25 20:06:02 -05:00
Maurice Parker a0b11da438 Prevent autolayout from messing with our manually set frames 2019-08-25 20:00:34 -05:00
Maurice Parker 31715ad4f0 Handle user activities on a cold launch 2019-08-25 17:49:09 -05:00
Maurice Parker 1e1208f54d Update function name to match other like named functions 2019-08-25 17:08:39 -05:00
Maurice Parker a0636b8f47 Add Smart Feeds as User Activities 2019-08-25 17:04:15 -05:00
Maurice Parker dc6bf05ae4 Rename ActivityFactory to ActivityManager because it will also handle activity deletes in the future 2019-08-25 14:43:11 -05:00
Maurice Parker 0b48c3893d Change AppCoordinator to directly call controller API's since that matches the Coordinator pattern better than sending them notifications 2019-08-25 11:38:04 -05:00
Maurice Parker 313518698c add the ability to respond to NSActivityRequests 2019-08-24 19:31:29 -05:00
Maurice Parker 5b1c0485c5 Add NSUserActivity for reading articles 2019-08-24 14:57:51 -05:00
Maurice Parker 1ba60e2846 Fix bug that could cause a crash when an invalid indexPath was used to find a node in the shadow table 2019-08-23 13:23:13 -05:00
Maurice Parker 7f024586bb Add navigation and toolbar theming for light mode. Issue #698 2019-08-23 12:27:45 -05:00
Maurice Parker 5a5a66d59f Remove unneeded notifications 2019-08-22 16:50:20 -05:00
Maurice Parker 5088878721 Hack around WKWebView's white flashing that it does while loading content 2019-08-22 12:10:50 -05:00
Maurice Parker d67b9193c5 Add large titles to Feeds controller (again) 2019-08-22 11:16:07 -05:00
Maurice Parker c752d0b699 Optimize table cell loading so that we are no longer reloading all visible cells when an image is downloaded 2019-08-21 19:37:19 -05:00
Maurice Parker af98311c63 Change to use async fetch for major account changes 2019-08-21 15:58:55 -05:00
Maurice Parker 2719772701 Port async timeline fetching from desktop NNW 2019-08-21 15:27:53 -05:00
Maurice Parker b025b3ae46 fix typo in comment 2019-08-21 13:13:03 -05:00
Maurice Parker c4e2420966 Change to get currently selected unread count item from total number of articles shown in timeline 2019-08-21 13:10:08 -05:00
Maurice Parker eb8de035d7 Work around bug where cell tintColor isn't always correctly inherited from the window 2019-08-20 16:37:31 -05:00
Maurice Parker 9988847fba Fix bug where mark older than caused all articles in the timeline to be marked as read 2019-08-20 05:46:44 -05:00
Maurice Parker 64fd5016a9 Commenting out feed context menus due to buggy implementation in Beta 6 2019-08-20 05:43:39 -05:00
Maurice Parker b475f52871 Move show share dialog back to detail controller from coordinator 2019-08-19 18:13:21 -05:00
Maurice Parker 71343b9e72 Add Share context menu for timeline 2019-08-19 18:09:38 -05:00
Maurice Parker badc2d3e25 Add open in browser context menu item 2019-08-19 17:38:30 -05:00
Maurice Parker de7970314d Add mark all as read for feed functionality 2019-08-19 17:26:09 -05:00
Maurice Parker 40a80356f1 Move business logic out of controller into coordinator where we typically keep it 2019-08-19 16:03:07 -05:00
Maurice Parker 6087951824 Remove context menu titles as they didn't provide any additional context 2019-08-19 15:49:42 -05:00
Maurice Parker 3245223b24 Add Select Feed context menu 2019-08-19 15:45:52 -05:00
Maurice Parker eeebb30467 Implement Mark Older as Read for timeline 2019-08-18 17:34:53 -05:00
Maurice Parker 3cbf9f45a3 Add weak self usage in a couple needed places 2019-08-16 13:54:19 -05:00
Maurice Parker 066616b005 Add new images used in context menus to AppAssets where they belong 2019-08-16 13:27:41 -05:00
Maurice Parker aabe950b2b Add initial support for timeline context menus 2019-08-16 13:19:06 -05:00
Maurice Parker 2f5225163d Center the pop over arrow in the button the same way that Apple does in Mail 2019-08-16 12:14:55 -05:00
Maurice Parker 7ac18029ea Add additional swipe menu More to handle new actions 2019-08-15 19:46:31 -05:00
Maurice Parker e8bbe9efbf Add Folder context menu 2019-08-15 17:46:42 -05:00
Maurice Parker e88210bbb7 Add copy url actions for feeds 2019-08-15 15:19:23 -05:00
Maurice Parker c03c444997 Add initial context menu items for feeds. 2019-08-15 13:19:02 -05:00
Maurice Parker 1eb8da7749 Rearrange some code to put them in the correct sections 2019-08-15 12:42:25 -05:00
Maurice Parker 99e2a44eed Fix crash that could happen on launch because the background task wasn't registered before it was triggered 2019-08-14 19:48:18 -05:00
Maurice Parker 659597e5e4 Fix about box for dark mode 2019-08-04 13:43:35 -05:00
Maurice Parker f8eb750d56 Fix background color to respect dark mode 2019-08-04 13:23:34 -05:00
Maurice Parker 55da318503 Fix bug that was causing new feeds to be created with and empty string name 2019-08-04 13:20:37 -05:00
Maurice Parker 0b9522261e Removed unused color for folders. This has been replaced with the tint color. 2019-08-03 17:28:45 -05:00
Maurice Parker e39972bd64 Correct First Unread button to select the first unread in the timeline and show article in detail view. Issue #695 2019-08-03 17:07:43 -05:00
Maurice Parker 0269683b16 Reenable tinting now that at the beta OS releases don't crash when using them 2019-08-03 16:34:35 -05:00
Maurice Parker 02575c31fe Change selected table row text to be white. Issue #693 2019-08-03 16:25:35 -05:00
Maurice Parker 4ece4173ba Fix show back bar button bug introduced in last refactoring 2019-08-03 13:56:18 -05:00
Maurice Parker 9aa8ea7dc9 Refactor some common code and wrote copious comments 2019-08-03 13:53:30 -05:00
Maurice Parker 43d0d0c889 Reformat statement 2019-08-03 13:24:51 -05:00
Maurice Parker 9768d8ca55 Fix bugs in detail back button when transitioning from collapsed mode 2019-08-03 11:44:05 -05:00
Maurice Parker a30b03bcea Remove obsolete code 2019-08-03 11:43:21 -05:00
Maurice Parker e4c3590111 Made code formatting more consistent 2019-08-03 11:09:12 -05:00
Maurice Parker d5094dd103 Deleted obsolete code 2019-08-03 11:06:55 -05:00
Maurice Parker 0baf15b588 Fix root split view controller collapsing and splitting when no in all visible mode 2019-08-03 10:55:46 -05:00
Maurice Parker e52b3531d9 Add missing shim controller 2019-08-02 18:14:49 -05:00
Maurice Parker 7acf77f572 Enable collapsing and splitting of root split view controller 2019-08-02 16:46:55 -05:00
Maurice Parker 8753790a19 Fix bug that lost detail view when transitioning to three panel mode 2019-08-02 10:34:32 -05:00
Maurice Parker 54f6607621 Keep table selections when root split isn't collapsed 2019-08-02 10:25:47 -05:00
Maurice Parker 52055d83f5 Made the detail panel slightly larger than the others in three panel mode 2019-08-02 09:12:15 -05:00
Maurice Parker d7afc30ed3 Remove dead code 2019-08-02 04:42:48 -05:00
Maurice Parker e0832260b8 Fix timeline selected transition to three panel mode 2019-08-02 04:29:42 -05:00
Maurice Parker 4f49a4bcf6 Fix code formatting 2019-08-02 04:23:41 -05:00
Maurice Parker 7da1aacf28 Fix transition to three panel mode 2019-08-02 04:22:47 -05:00
Maurice Parker 7b7fb7ef2a Adjust font to silence dynamic type warning 2019-08-01 20:24:54 -05:00
Maurice Parker 9e0a4aed00 Correctly handle showing the detail view when the root view controller is collapsed 2019-08-01 20:06:55 -05:00
Maurice Parker e22088b284 Implemented Shim Controller so that we can change out the secondary split view controller when the display mode changes 2019-08-01 19:59:56 -05:00
Maurice Parker d16386d205 Add transitioning for three panel mode 2019-08-01 16:14:34 -05:00
Maurice Parker 2ab3ff76fb Make settings button work second split controller is installed 2019-08-01 07:10:02 -05:00