Commit Graph

435 Commits

Author SHA1 Message Date
Maurice Parker f8a664d035 Cache the feed provider results to make it as fast as the other icon look up types. 2020-04-16 02:17:38 -05:00
Maurice Parker c44759fdb2 Add web feed icon downloader support for Feed Providers. 2020-04-15 20:17:33 -05:00
Maurice Parker c414d22666 Merge branch 'master' into extension-point 2020-04-15 19:02:20 -05:00
Nate Weaver 8bb249b1ad Fix typo 2020-04-15 16:39:58 -05:00
Maurice Parker 266e136787 Design and stub out FeedProvider protocol 2020-04-15 16:35:09 -05:00
Maurice Parker d883981afd Move oauth1 provider implementation fo main TwitterFeedProvider class. 2020-04-15 14:14:33 -05:00
Maurice Parker 42853fe487 Renamed source file to match usual conversions for extensions. 2020-04-15 14:12:31 -05:00
Maurice Parker e15462fd61 Persist twitter tokens in the keychain. 2020-04-14 23:19:06 -05:00
Maurice Parker 9e0248c494 Correctly save Twitter ExtensionPoints 2020-04-14 23:03:08 -05:00
Maurice Parker df79da291f Change how ExtensionPoint titles are handled. 2020-04-14 22:33:05 -05:00
Maurice Parker e206909237 Refactor ExtensionPoints to make them easier to create in the future. 2020-04-14 16:47:05 -05:00
Maurice Parker 266c28d9be Add new OAuth1 credential requirements for Twitter 2020-04-14 10:15:24 -05:00
Maurice Parker a168c2ce80 Merge branch 'master' into accent-color-experimental 2020-04-13 07:20:57 -05:00
Brent Simmons 6d9eda442f Remove userDeleted support. The read-items filter seems to fill the need to hide things. We’re simplifying the backend by removing this unused feature. 2020-04-12 17:12:36 -07:00
Maurice Parker a131c01e77 Merge branch 'master' into extension-point 2020-04-11 18:14:30 -05:00
Maurice Parker e6c5d2f199 Merge branch 'ios-release' 2020-04-11 15:59:37 -05:00
Maurice Parker 3ba9ca8c8a Added new Secrets framework project 2020-04-09 21:07:56 -05:00
Brent Simmons f54f65781c Update some slightly-changed feed URLs in the defaults. Replace Omni’s blog with Craig Hockenberry’s. 2020-04-08 21:25:23 -07:00
Maurice Parker d49eabbcb3 Add extension management for our two SendToCommand implementations 2020-04-08 20:22:13 -05:00
Maurice Parker 61b755486a Flesh out the ExtensionPointManager a little 2020-04-08 13:46:15 -05:00
Maurice Parker 14189b19e9 Change extension point so that multiple of the same type can exist. 2020-04-08 10:12:06 -05:00
Maurice Parker 49cff8eb8e Add basic ExtensionPoint support. 2020-04-07 15:25:33 -05:00
Maurice Parker 3459f23461 Merge branch 'master' into accent-color-experimental 2020-04-06 09:20:44 -05:00
Maurice Parker f68d523a15 Merge branch 'ios-release' 2020-03-30 11:50:58 -05:00
Maurice Parker d0852d8954 Fix scenario where incorrect platform specific icon image could be returned. 2020-03-30 10:56:52 -05:00
Maurice Parker 2afdd26c9d Change function names using the find suffix to use the existing suffix to match precedent. 2020-03-29 12:00:02 -05:00
Maurice Parker e23cc4d8a6 Merge branch 'master' into accent-color-experimental 2020-03-28 00:56:53 -05:00
Maurice Parker 6d085fdacf Inline videos and enable player controls for both Mac and iOS. Issue #1952 2020-03-28 00:56:29 -05:00
Maurice Parker c6bd60eb1e Merge branch 'master' into accent-color-experimental 2020-03-24 12:24:59 -05:00
Maurice Parker d0680bcc73 Merge branch 'ios-release' 2020-03-24 12:21:32 -05:00
Maurice Parker a6e75df412 Send out an event if we found a cached favicon downloader for new homepage URL. Issue #1940 2020-03-24 12:21:08 -05:00
Maurice Parker 6a384d99e6 Darken and lighten the accent color for the article view. 2020-03-20 08:13:39 -05:00
Maurice Parker 1e1fce59da Use system accent color to tint the article view 2020-03-20 06:41:38 -05:00
Brent Simmons 910e14b441 Use a serial queue for RSImage.scaledForIcon, so we don’t end up having a ton of threads and doing too much at once, which hurts performance. Fix #1489. 2020-03-19 22:22:58 -07:00
Maurice Parker 4d18c34759 Update to the latest RSCore 2020-03-18 16:08:17 -05:00
Maurice Parker 770206df60 Merge branch 'ios-release' 2020-03-17 17:19:31 -05:00
Maurice Parker 36841602a5 Change article rendering to use loadHTMLString instead of JavaScript. Issue #1923 2020-03-17 17:18:24 -05:00
Maurice Parker 5b5eaf6bb7 Merge branch 'ios-release' 2020-03-14 17:13:25 -05:00
Maurice Parker dd3fde7812 Changed from using the main screen scale which might change to using the max screen scale. Issue #396 2020-03-14 15:40:40 -05:00
Maurice Parker 73e7fb40ed Fixed macOS compile error for new brightness code detection. 2020-03-13 10:51:49 -05:00
Maurice Parker e0f8f7c5eb Increase brightness threshold to reduce false positives. Issue #1731 2020-03-13 10:45:02 -05:00
Maurice Parker d0cf04bd4f
Merge pull request #1892 from flowinho/ios-release
Add background to pure white icons
2020-03-13 10:04:56 -05:00
Flowinho d282181269 Add isBright function to Shared Logic 2020-03-13 11:43:17 +01:00
Maurice Parker 77fd3020cc Correct font used to specify font size. Issue #1878 2020-03-12 19:01:10 -05:00
Nate Weaver 781dd2ff73 Fix null error in wrapTables() 2020-03-12 18:32:42 -05:00
Nate Weaver 5bbda2a68e "footnotes" -> ".footnotes"; use idFromHash() 2020-03-12 18:32:42 -05:00
Nate Weaver 76dd3abff2 Properly style footnotes that have been absoluted 2020-03-12 18:32:42 -05:00
Nate Weaver 509ef01213 URL-decode the ID to make it work with non-ASCII characters
Fixes #1812.
2020-03-12 18:32:42 -05:00
Maurice Parker 61a2e95d2b Manually specify the font size to work around a WKWebView resizing bug. Issue #1878 2020-03-12 18:07:40 -05:00
Maurice Parker 343f705cd7 Fix article read filter which wasn't persisting correctly. 2020-03-12 12:07:01 -05:00
Maurice Parker de38ba9f5b Added feed selection restoration. 2020-03-04 15:40:40 -07:00
Maurice Parker 5755dd0844 Finish merge of mac-release. 2020-03-01 16:33:05 -08:00
Maurice Parker 94c6ca428f Merge branch 'mac-release' 2020-03-01 16:32:31 -08:00
Maurice Parker 66054ca735 Deleted unused keys. 2020-03-01 15:06:23 -08:00
Maurice Parker 4b2f08e759 Refactor select web feed in sidebar to use the delegate pattern instead of a notification. 2020-02-29 15:50:13 -08:00
Maurice Parker c17ce1ceaa Make articles older than a specified period unable to be marked as unread. Issue #1407 2020-02-29 10:30:35 -08:00
Nate Weaver e183a5406c Only wrap iframes that don't specify their own height 2020-02-28 08:19:40 -06:00
Nate Weaver 65b508ffaa Port inline style stripping changes from master 2020-02-28 08:15:06 -06:00
Maurice Parker 85bd20ca80 Stop media playback when the main window is closed. Issue #1646 2020-02-27 12:15:41 -08:00
Maurice Parker 7c060bb068 Change so that the tree controller can't be rebuilt before all async deletes have completed. Issue #1002 2020-02-26 17:28:52 -08:00
Maurice Parker 0e72811429 Implement mark as unread window for accounts that need it. Issue #1407 2020-02-18 13:49:29 -08:00
Brent Simmons e22489ce40
Merge pull request #1795 from Wevah/ios-candidate
Fix sites being added to the no-favicons cache if the homepage fails to load
2020-02-17 17:59:37 -08:00
Maurice Parker 03c1ed2625 Make handling of programmatic feed selection when filtered or collapsed more consistent. Issues #1788 and #1792 2020-02-17 17:40:40 -08:00
Nate Weaver aad1fc4a0c Call the completion handler with nil if faviconURLs is nil
Fixes #1791.
2020-02-15 08:53:56 -06:00
Nate Weaver b3f736f899 Add a clarification comment 2020-02-15 08:22:59 -06:00
Nate Weaver ee48f4baba Remove redundant nil check for homePageURL 2020-02-15 08:22:51 -06:00
Maurice Parker 2ae021960b Move account files to the documents directory and out of the shared container. Issue #1784 2020-02-12 16:21:48 -08:00
Brent Simmons cac67f8ac4 Use percent-encoding — via URLComponents — on the articleID in the nnwImageIcon URL scheme. 2020-02-08 17:21:55 -08:00
Nate Weaver 2ac4df4ee6 Use a single compactMap() instead of filter().compactMap() 2020-02-08 18:22:35 -06:00
Nate Weaver 4ac8107f27 Don't unwrap now-non-optionals, and unwrap now-explicit optionals 2020-02-08 18:22:35 -06:00
Brent Simmons 2cdcddeefe Handle possible nil favicon.urlString. 2020-02-05 22:43:18 -08:00
Nate Weaver ede4813a1a Operator spacing 2020-02-02 18:00:58 -06:00
Nate Weaver ba6315fa07 Set lastImageCacheFlushDate on launch in CacheCleaner instead of registerDefaults()
So it's actually persisted to disk.
2020-02-02 17:55:51 -06:00
Nate Weaver 0d128c0c3c Fix spacing 2020-02-02 17:53:46 -06:00
Nate Weaver 830db84c56 Explicitly import CoreServices
For UTType stuff; iOS doesn't implicitly import it.
2020-02-01 18:03:44 -06:00
Nate Weaver e9a3764270 Documentation comment 2020-02-01 18:03:44 -06:00
Nate Weaver 101e140233 Make ignoredTypes a static property to avoid redundant lookups 2020-02-01 18:03:44 -06:00
Nate Weaver f65bf63bb1 Add the ability to ignore types to FaviconURLFinder, and ignore SVG favicons 2020-02-01 18:03:44 -06:00
Nate Weaver 97049be067 Only add to the no-favicons cache if the only icon was the defaulted favicon.ico 2020-02-01 18:03:44 -06:00
Nate Weaver b088cda5a5 Fix homePageURLsWithNoFaviconURLCache 2020-02-01 18:03:44 -06:00
Nate Weaver 447cc44b8e Put <title> and <base> in the <head> instead of <body>
This also means renderHTML() is no longer needed.
2020-01-30 06:15:14 -06:00
Maurice Parker c6beb3c9dd Don't try to convert to an absolute img url when the img url is already absolute. Issue #1726 2020-01-28 15:39:02 -07:00
Nate Weaver b9bba7b614 Update RSWeb 2020-01-27 23:02:01 -06:00
Maurice Parker dd5633b5ae Change to use the correct URL when reloading an image. 2020-01-27 16:27:13 -07:00
Maurice Parker 3a99e6430f Make the article icon code specify the desired article so that it can't pull the wrong one by mistake. Issue #1707 2020-01-27 12:58:32 -07:00
Maurice Parker 97d6c69431 Change to always reload the page when rendering an article. Issue #1713 2020-01-26 20:29:58 -07:00
Maurice Parker f15ade5ebb Make the article datetime always a link to the article permalink. Issue #1655 2020-01-19 17:28:06 -07:00
Maurice Parker 7e35bd1ec4 Remove unused parameter. It was obsoleted, but not removed. 2020-01-19 15:36:19 -07:00
Nate Weaver 7ee1f99962 Updates for Data+RSCore changes 2020-01-18 19:18:58 -06:00
Nate Weaver b35215d03b Update for pending RSCore String updates 2020-01-17 13:45:38 -06:00
Maurice Parker 539722d685 Change Feedbin Twitter images to use the canonical source instead of Feedbin image servers. 2020-01-17 11:41:04 -07:00
Maurice Parker 38ef0c2515 Convert src to use Feedbin proxy images when they are available. Issue #1632 2020-01-16 17:14:38 -07:00
Nate Weaver 6eac3781ba Update to latest RSCore
Update use of OMPLString().
2020-01-13 22:20:57 -06:00
Nate Weaver 58c90feccf Update to latest RSCore 2020-01-13 15:32:13 -06:00
Nate Weaver e94985e7f2 Update to latest RSCore 2020-01-12 18:26:41 -06:00
Maurice Parker a8951089c3 Change to work with only article id's. Issue #1595 2020-01-11 12:51:13 -07:00
Maurice Parker 911d4ed248 Change dark image detection to only consider non-clear pixels and not fail on images with no luminescence. Issue #1607 2020-01-11 12:25:31 -07:00
Nate Weaver ca429153ce Update to latest RSCore 2020-01-11 01:30:40 -06:00
Nate Weaver 0b404c294d Update to newest RSCore 2020-01-09 18:22:06 -06:00
Maurice Parker 92cfbc767b
Merge pull request #1553 from hartlco/1548-mark-above-below-as-read-should-not-appear-if-nothing-to-mark
Only show mark unread above/below actions if articles above/below contain unread items
2020-01-07 16:47:37 -07:00
Nate Weaver 645c3deba1 Use new MacroProcessor replacement 2020-01-07 16:06:41 -06:00
Martin Hartl 02ab44c3eb Only show mark unread above/below actions if articles above/below contained unread items 2020-01-07 22:48:15 +01:00
Maurice Parker 0a29535412
Merge pull request #1496 from Wevah/table-overflow-wrapper
Table overflow wrapper
2019-12-31 16:24:43 -07:00
Nate Weaver fcea33d61f Only strip out color, background, and font css properties
Prevents icon images from rendering super-huge.
2019-12-30 18:30:10 -06:00
Nate Weaver 792fcddaf6 Update comment 2019-12-30 17:35:47 -06:00
Nate Weaver 58ef7600fb Avoid copying the table and use querySelector()
(Since there's only one .articleBody.)
2019-12-30 17:24:34 -06:00
Nate Weaver 7a61a6a5b4 Specify div explicitly 2019-12-30 17:24:34 -06:00
Nate Weaver c2d3e9213d Strip spans from pre elements inside table cells
Works around a clipping issue.
2019-12-30 17:17:35 -06:00
Nate Weaver bb0fffcec2 Move wrapTables() to just after wrapFrames() 2019-12-30 17:17:35 -06:00
Nate Weaver cbbb46a776 Wrap tables in an overflow-x: auto; div 2019-12-30 17:17:35 -06:00
Maurice Parker a1b23edc8b Delete obsolete code 2019-12-28 16:06:37 -07:00
Brent Simmons 15184aa3f1 Finish changes mandated by DatabaseQueue changes. 2019-12-16 22:45:59 -08:00
Maurice Parker 58b24f3349 Rename callback: to completion: 2019-12-14 18:01:34 -07:00
Brent Simmons a1675f0640 Fix a build warning in the Mac version. 2019-12-07 22:23:55 -08:00
Nate Weaver 71bc1e5d8a Return the app icon earlier so we never hit the favicon cache 2019-12-07 16:09:32 -06:00
Nate Weaver bf4dd59d90 Use the app icon for the NNW feed 2019-12-07 15:45:33 -06:00
Maurice Parker f159371967 Change to make sure all queue's get cleared before suspending the database. Issue #1389 2019-12-02 14:14:35 -06:00
Maurice Parker aae5b1dc48 Remove filtering of Accounts and Smartfeeds. Issue #1377 & #1376 2019-12-01 17:54:34 -06:00
Maurice Parker d9f2e13732 Suspend and resume account resources when moving between the background and foreground. 2019-12-01 16:51:25 -06:00
Maurice Parker 3d582270ad Add filter exceptions so that the correct timeline is always selected regardless of filter state. Issue #1366 2019-11-28 12:40:33 -06:00
Maurice Parker 30f560be4d Convert Feedly and Mercury to use the new Secrets system. 2019-11-27 17:20:09 -06:00
Maurice Parker 748f4e64d3
Merge pull request #1364 from jbennett/manage-secrets
Generalize handling of secrets and keys
2019-11-27 16:54:24 -06:00
Nate Weaver 64af8840fe Mark appropriate caches as dirty 2019-11-27 15:45:14 -06:00
Nate Weaver f690bba775 Make sure self.postDidLoadFaviconNotification() is always called after a download attempt
Otherwise the rest of the favicon URLs won't be tried.
2019-11-27 15:40:35 -06:00
Maurice Parker ef2222ad94 Merge branch 'mac-release' 2019-11-27 14:08:52 -06:00
Nate Weaver 9de27febf0 Fix favicon loading for sites with multiple/invalid favicons
Load the next favicon if a favicon is invalid

Iterate through multiple favicons and use the first that actually loads

- Add a homePageURL property to SingleFaviconDownloader that notification observers can use.
- Only add a URL to the favicon cache when we're sure it's valid.

Post notification even if the icon failed to load

Update RSParser

Remove single-favicon helper methods

Only load the next favicon if the current load failed

Update RSParser

Make sure to try the default favicon.ico

RSParser test fix update

Update RSParser
2019-11-27 13:02:49 -06:00
Maurice Parker 81c4756f97 Persist article read filters across application launches. Issue #1349 2019-11-27 11:43:36 -06:00
Jonathan Bennett 544daf5756 handle missing secrets
Missing secrets will give a blank string instead of exploding.

Also, an example of a custom property
2019-11-27 11:30:27 -05:00
Jonathan Bennett d3dd7498e6 generate the secret property automatically 2019-11-27 11:20:43 -05:00
Maurice Parker ebd7f4904d Persist the Feeds Read filter across application launches. Issue #1349 2019-11-26 20:23:12 -06:00
Maurice Parker 9de3caf3a0 Make persistentIdentifier iOS only for now. 2019-11-26 17:00:13 -06:00
Maurice Parker 4a9e79cd1e Persist and restore container expanded state across application launches. Issue #1361 2019-11-26 16:33:11 -06:00
Jonathan Bennett 9d0034576d start extracting secrets 2019-11-26 08:58:16 -05:00
Maurice Parker 323b160b7f Add context menu for Fullscreen mode actions. Issue #1344 2019-11-25 19:43:43 -06:00
Maurice Parker 6a56936850 Moved expanded state away from Node so that it won't get lost on rebuilds. Issue #1346 2019-11-24 18:29:00 -06:00
Maurice Parker 9f60984ba2 Increase the number of characters available for the summary in the timeline. Issue #1333 2019-11-23 18:22:58 -06:00
Maurice Parker 6d18cfec7c Refactor SmartFeedController to find SmartFeeds by FeedIdentifier instead of the string identifier. 2019-11-23 12:30:18 -06:00
Maurice Parker 7667dbf60e Add hide read feeds menu option 2019-11-22 10:55:54 -06:00
Maurice Parker eea5d6f327 Change ReadFilter to ReadFilterType and differentiate the ReadFilter from the query filter. 2019-11-22 09:40:39 -06:00
Maurice Parker a5b4d570af Change ReadFilter case unavailable to alwaysRead 2019-11-22 09:32:27 -06:00
Maurice Parker 6d8fca01ea Filter async requests based on ReadFilter. 2019-11-21 19:54:35 -06:00
Maurice Parker e8826130a4 Add timeline filter button 2019-11-21 18:22:43 -06:00
Maurice Parker 64c1a615b0 Make sure top level nodes are always expanded. 2019-11-21 16:25:00 -06:00
Maurice Parker 89e9a7b80e Add filter button show/hide unread feeds. Issue #1311 2019-11-21 15:55:50 -06:00
Maurice Parker 56d43f8f2d Do a full reload of the article when rearranging the UI to accommodate for split screen color changes. 2019-11-20 18:16:54 -06:00
Maurice Parker 198dec68b1 Reload Article images when their availablity notification arrives. Issue #1317 2019-11-18 19:33:31 -06:00
Maurice Parker 397d8e8ffa Update picker for Share Extension to be hierarchical and use icons. Issue #1269 2019-11-16 19:44:01 -06:00
Maurice Parker 91a3e4fd73 Change Add Web Feed folder selection to be a separate controlling instead of the picker wheel. Issue #1270 2019-11-16 12:02:58 -06:00
Maurice Parker 5283d2efbe Implement Feed protocol. 2019-11-15 06:19:14 -06:00
Maurice Parker 06bd5b3a6f Renamed Feed and related classes/instances to WebFeed 2019-11-14 20:11:41 -06:00