Maurice Parker
5e3fcfd955
Correct how feeds were deleted so that only the feed in the correct container was deleted
2019-05-29 17:56:26 -05:00
Jeremy Beker
aa6dfe8a08
Rework to store endpoint URL in metadata
...
Endpoint URL did not belong with credentials. This breaks it out and stores it in the account metadata. Updates validation code to take it as a parameter.
2019-05-29 15:16:09 -04:00
Jeremy Beker
0df86e5761
Authentication working
...
* Updates to use new API style per discussion with Maurice
* Credential validation functioning
2019-05-29 10:54:52 -04:00
Maurice Parker
0648053417
Enforce tag specific drop validation (can't copy to the account level)
2019-05-28 17:42:19 -05:00
Maurice Parker
cf016c5d7d
Prevent Feedbin in account copy from putting a feed in both the root account and a folder at the same time.
2019-05-28 13:38:40 -05:00
Jeremy Beker
84dbdf25e2
Google Reader API Account Provider and initial integration
...
* Creation of account classes (based on FeedBin)
* Integration on Mac side into account dialog
* Initial authentication call works and extracts auth token, but no where to put it right now.
2019-05-28 13:08:15 -04:00
Maurice Parker
493abbb609
Refactor create feed functionality to increase code reuse and encapsulation
2019-05-28 09:45:02 -05:00
Maurice Parker
c7b61f7d87
Enable copy between local accounts.
2019-05-27 18:01:24 -05:00
Maurice Parker
61f9a66d74
Change so that we fire off status update immediately if the number of pending status changes exceeds 100. Issue #658
2019-05-27 12:03:12 -05:00
Maurice Parker
886b82f3bd
Fix issue where unread and unstar statuses were getting lost if there wasn't already an article. Issue #708
2019-05-26 21:05:05 -05:00
Maurice Parker
7e6db47956
Add extended mode for Feedbin entries to get avatar url. Issue #669
2019-05-26 18:35:54 -05:00
Brent Simmons
e974d788ff
Wrap OPML import in BatchUpdate. This makes it pretty much instant. Fix #653 .
2019-05-26 14:45:09 -07:00
Maurice Parker
32712533d1
Fixed duplicate adds for local account folder feed adds. Issue #701
2019-05-26 12:17:38 -05:00
Maurice Parker
c61949bc04
Add account name to network error messages and prevent background iOS errors from displaying alerts
2019-05-26 11:54:32 -05:00
Maurice Parker
5f98f0d2fc
Correct usage of weak self in completion handlers
2019-05-22 15:40:34 -05:00
Maurice Parker
a406fa9d4d
Enhance error handling to make syncing more resilient to network failures.
2019-05-21 19:15:24 -05:00
Maurice Parker
8816de4a0e
Fix issue where new Feeds added to a folder also got left in the account container.
2019-05-21 10:26:11 -05:00
Maurice Parker
d9458c8980
Make progress indicator more accurate
2019-05-21 08:34:05 -05:00
Maurice Parker
31cc3b609c
Make delete animation correct for deletes and restores by wrapping them in BatchUpdates. Issue #667
2019-05-20 18:05:28 -05:00
Maurice Parker
59ea5cadec
Add status syncing to iOS
2019-05-20 13:51:08 -05:00
Phil Viso
1f8463d091
Merge branch 'master' of https://github.com/brentsimmons/NetNewsWire into iPadPopover
...
# Conflicts:
# iOS/Settings/AddLocalAccountViewController.swift
# iOS/Settings/DetailAccountViewController.swift
# iOS/Settings/Settings.storyboard
2019-05-19 19:03:50 -05:00
Maurice Parker
48e19c23a7
Set content type for Feedbin OPML Import.
2019-05-19 18:19:08 -05:00
Phil Viso
bce45d28e4
Updated all iOS references to default local account new to be device specific
2019-05-19 16:52:21 -05:00
Maurice Parker
80e1888244
Rename AccountsDidChangeNotification to AccountsDidChange to match other notification names.
2019-05-19 15:51:08 -05:00
Brent Simmons
7bd4520746
Remove unused weak self. (Was causing warning in Xcode.)
2019-05-19 11:33:48 -07:00
Maurice Parker
c7f02150f9
Make sure we go and get missing articles when we add a new feed.
2019-05-19 10:43:45 -05:00
Maurice Parker
9c159d21f6
Retrieve articles when we have a status but don't have an article on full refresh.
2019-05-17 14:56:27 -05:00
Maurice Parker
0a9bf2aef0
Prevent more than one OPML import from being run at the same time.
2019-05-17 10:44:22 -05:00
Maurice Parker
b89f088917
Switch to using the new OPML import service
2019-05-17 10:04:13 -05:00
Maurice Parker
87512a64a5
Removed old TODO and update to latest RSWeb
2019-05-16 11:01:44 -05:00
Maurice Parker
d8e6355b1e
Fix bug where restoring a feed in a folder could leave the feed in the account container
2019-05-16 10:33:58 -05:00
Maurice Parker
3986e00bf7
Fix bug where account unread counts weren't changing with async api calls
2019-05-16 09:54:19 -05:00
Maurice Parker
5f65fba9e2
Fix bug that prevented last unread or last unstrap from changing correctly.
2019-05-16 06:01:10 -05:00
Maurice Parker
6882b152d9
Add timer to trigger article status sync process.
2019-05-15 17:21:58 -05:00
Maurice Parker
6be6c6a682
Add send sync database contents to Feedbin
2019-05-15 11:52:56 -05:00
Maurice Parker
b1303661b2
Save article statuses to new sync database as they are created
2019-05-14 18:24:19 -05:00
Maurice Parker
f449ed9608
Make sure progress gets cleared incase the last page adjustment is inaccurate
2019-05-14 17:39:55 -05:00
Maurice Parker
30273795a8
Delegate article marking functionality to the account delegate
2019-05-14 15:34:05 -05:00
Maurice Parker
1984af4664
Add download progress for Feedbin accounts
2019-05-14 13:10:07 -05:00
Maurice Parker
e31e1a4d60
Save article statuses from articles we have not received yet
2019-05-14 10:06:29 -05:00
Maurice Parker
62d154d0f2
Add download syncing of article statuses
2019-05-14 06:20:53 -05:00
Maurice Parker
39a337d096
Stub out syncing article state
2019-05-13 17:04:12 -05:00
Maurice Parker
eede1cc7eb
Add initial feed download for Feedbin.
2019-05-13 11:18:54 -05:00
Maurice Parker
ccac456d77
Change to use the entries.json service for Feedbin instead of the per feed one
2019-05-13 10:29:34 -05:00
Maurice Parker
c4ce93e96a
Set default read state for Feedbin articles to read when syncing
2019-05-13 08:32:03 -05:00
Maurice Parker
c47fee2384
Delete unused parameters (dead code)
2019-05-13 07:17:50 -05:00
Maurice Parker
20388eff46
Change how completion handlers work for refreshArticles so that we can tell for sure when all the articles have been downloaded and updated in the database
2019-05-13 06:34:27 -05:00
Maurice Parker
2684b92a67
Added service calls for unread and starred entries
2019-05-13 03:13:06 -05:00
Maurice Parker
1b22abbbfc
Make sure a refresh happens after an OPML import.
2019-05-12 19:31:29 -05:00
Maurice Parker
f4510e57e5
store last article fetch time in account metadata
2019-05-12 19:17:16 -05:00
Maurice Parker
9c676f29f8
add articles download for Feedbin
2019-05-12 18:32:32 -05:00
Maurice Parker
4ed1b8a66a
Move ConditionalGetKeys as they are account type specific
2019-05-12 08:47:27 -05:00
Maurice Parker
60895fc7fa
Restrict Feedbin to a maximum of 1 concurrent connection to keep us under Feedbin's 250 requests per second rate limit
2019-05-12 07:22:33 -05:00
Maurice Parker
51c2527da2
Add OPML import for Feedbin.
2019-05-11 16:07:27 -05:00
Maurice Parker
6f92cd1a73
Refactor to differentiate between loading the Subscriptions.opml file and importing an external OPML file as they now need separate behaviors
2019-05-11 12:26:23 -05:00
Maurice Parker
5200e49175
Capture 401 http status codes as already subscribed error when creating a Feedbin subscription
2019-05-10 10:40:02 -05:00
Maurice Parker
fd8a973084
Add already subscribed error to LocalAccountDelegate and updated iOS to work with latest Account API
2019-05-10 10:22:28 -05:00
Maurice Parker
fe70723eb4
Use best feed specifier code to determine which Feedbin option to use when creating a feed
2019-05-10 10:14:24 -05:00
Maurice Parker
75fbd9e3eb
Add folder delete undo support
2019-05-09 18:20:09 -05:00
Maurice Parker
23b43ecc07
Add undo for feeds
2019-05-09 16:09:21 -05:00
Maurice Parker
d4bfab2da6
Fix delete folder bug
2019-05-09 13:35:40 -05:00
Maurice Parker
cda8acc66c
Add the ability to move feeds between folders for Feedbin
2019-05-09 13:31:18 -05:00
Maurice Parker
50d3a5799c
added subscription delete
2019-05-09 07:25:45 -05:00
Maurice Parker
49116fd8e3
Add subscription id to Feed so that we can correctly rename Feedbin subscriptions
2019-05-08 18:13:54 -05:00
Maurice Parker
06626f10a7
Add feed rename
2019-05-08 17:55:53 -05:00
Maurice Parker
43d32b1281
Add create Feedbin feed
2019-05-08 17:41:19 -05:00
Maurice Parker
72c92587d2
Keep feedID and feedURL better separated
2019-05-08 09:54:55 -05:00
Maurice Parker
f12494cc31
Add some debug logging
2019-05-08 08:20:29 -05:00
Maurice Parker
e52dc84f13
added create subscription service
2019-05-08 06:56:15 -05:00
Maurice Parker
c5b0bfcd91
Save feed folder relationship identifier
2019-05-07 18:34:45 -05:00
Maurice Parker
52e5e43d10
Add download feed to folder relationships syncing
2019-05-07 17:41:32 -05:00
Maurice Parker
ae61d36c7d
Change FeedbinAccountDelegate to use BatchUpdate
2019-05-07 11:10:00 -05:00
Maurice Parker
7f9055fe78
Add download subscriptions and faviconURLs
2019-05-07 10:51:41 -05:00
Maurice Parker
d6ae740305
Added folder (tag) delete for Feedbin
2019-05-06 17:34:41 -05:00
Maurice Parker
b7e2df1a68
Add Folder rename for Feedbin
2019-05-06 10:53:20 -05:00
Maurice Parker
51a1562e4b
make slight change to how not modified responses are handled
2019-05-06 05:28:02 -05:00
Maurice Parker
18f2c7b723
Fix bug that prevented http caching from working
2019-05-05 17:46:53 -05:00
Maurice Parker
15a0ba89d7
Add folder syncing for Feedbin account
2019-05-05 15:41:20 -05:00
Maurice Parker
29f9cf83b1
Add HTTP Caching for Feedbin (conditional get)
2019-05-05 08:44:57 -05:00
Maurice Parker
35160aaf75
Rename AccountSettings to AccountMetadata to show that more than settings are stored in it and that it is analogous to FeedMetadata
2019-05-05 07:49:59 -05:00
Maurice Parker
6e7477fd89
Modify AccountSettings so that it works like FeedMetadata and can be leveraged by the AccountDelegates
2019-05-05 07:21:26 -05:00
Maurice Parker
d12a056ca3
Pass stored credentials to the delegate when updated
2019-05-05 06:02:28 -05:00
Maurice Parker
fc7b6f2c6b
refactor how Credentials work
2019-05-05 03:25:21 -05:00
Maurice Parker
aaa4342494
Add encrypted credential storage
2019-05-04 15:14:49 -05:00
Maurice Parker
595db517a7
change func signitures to use Credentials protocol from RSWeb instead of username/password
2019-05-04 11:48:48 -05:00
Maurice Parker
38202ece8d
Made credentials verification errors more descriptive.
2019-05-04 09:18:14 -05:00
Maurice Parker
bb42e46887
Update to use latest webservice network layer in RSWeb
2019-05-04 08:54:07 -05:00
Maurice Parker
5a852c1615
validate Feedbin account credentials and add Feedbin account
2019-05-02 18:17:52 -05:00
Maurice Parker
e0efcfa847
Update unread counts for activate/inactivate and delete account
2019-05-02 08:41:22 -05:00
Maurice Parker
137f061169
Prevent delete while refresh in progress
2019-05-02 06:50:35 -05:00
Maurice Parker
636468bbf0
Implement active account processing functionality
2019-05-02 06:01:30 -05:00
Maurice Parker
747079157b
Implement account state UI
2019-05-02 05:41:44 -05:00
Maurice Parker
f5523dd610
Add delete from disk
2019-05-01 19:22:07 -05:00
Maurice Parker
93630a7b72
Load accounts from disk
2019-05-01 13:13:53 -05:00
Maurice Parker
f4180424e1
Add multiple local accounts
2019-05-01 12:37:13 -05:00
Maurice Parker
4edffa488d
Rename classes to match naming convention
2019-05-01 11:05:55 -05:00
Maurice Parker
fe8e825c0d
Add account add UI
2019-05-01 10:28:13 -05:00
Maurice Parker
4bc7611721
Rename AccountManageer.localAccount to AccountManager.defaultAccount to make it different from other local accounts
2019-05-01 05:53:18 -05:00
Maurice Parker
ba57a27a35
Make local account display names changeable
2019-04-30 06:38:18 -05:00
Maurice Parker
ae63805479
Change property to have correct swift naming convention name
2019-04-27 16:16:46 -05:00
Maurice Parker
9400ea361e
Add notification for downloaded article(s).
2019-04-27 13:54:52 -05:00
Maurice Parker
e10bfde6d9
Rollback code created to support background downloads that are no longer needed
2019-04-26 14:21:17 -05:00
Maurice Parker
f5941fda64
Add AccountRefreshMode to be able to choose between background and foreground download sessions
2019-04-25 09:25:13 -05:00
Maurice Parker
f3c2d8c1f8
Updated to lastest RSWeb
2019-04-25 07:13:14 -05:00
Maurice Parker
f4c0fca6a8
Implement background downloading of feeds
2019-04-24 07:30:35 -05:00
Maurice Parker
17caa31ee5
Added device specific local account names.
2019-04-17 13:01:26 -05:00
Maurice Parker
b9f2a500a1
cleared the code signing identity
2019-04-15 17:14:47 -05:00
Maurice Parker
6b8524b70d
Made frameworks cross platform and got generated iOS app to compile.
2019-04-15 13:30:10 -05:00
Brent Simmons
0e44c135ae
Convert Account to Swift 5.
2019-03-31 16:12:17 -07:00
Brent Simmons
10cdc1553e
Post display name did change notification when an Account’s name changes.
2019-03-31 16:12:03 -07:00
Brent Simmons
2819403d62
Store the account name in a settings file. Set a default name based on the account type.
2019-03-27 22:10:14 -07:00
Brent Simmons
c84f273b92
Continue work on accounts UI in Preferences.
2019-03-20 22:10:22 -07:00
Brent Simmons
70bc4a7b45
Pay attention to the changed key when handling feed setting change notifications.
2019-03-17 13:54:30 -07:00
Brent Simmons
5f1bdb29ec
Give the .FeedSettingsDidChange notification a userInfo with the key of the setting that changed. This way observers can ignore changes they don’t care about.
2019-03-17 12:47:04 -07:00
Brent Simmons
80bee5b487
Do minor formatting changes in Feed.swift.
2019-03-17 11:24:21 -07:00
Brent Simmons
6a8ee9a2fb
Perform minor cleanups in Account.
2019-03-16 17:30:30 -07:00
Brent Simmons
908ae515c0
Remove unneeded import RSDatabase from Account.
2019-03-16 17:12:09 -07:00
Brent Simmons
cb45897256
Remove unused markEverywhereAsRead.
2019-03-16 16:48:14 -07:00
Brent Simmons
1d484220eb
Skip setting feed.editedName on OPML import. It’s not necessarily true that the name in the OPML file is an editedName.
2019-03-16 16:42:51 -07:00
Brent Simmons
e11fc1dfad
Make feed.init and FeedMetadata internal.
2019-03-16 16:39:16 -07:00
Brent Simmons
3e52bb9c24
Make feed.metadata no longer an optional.
2019-03-16 12:08:31 -07:00
Brent Simmons
4d727ce094
Continue removing old code for pre-OPML subscriptions.
2019-03-15 13:27:01 -07:00
Brent Simmons
8de36d8282
Start removing old code for pulling settings from a plist.
2019-03-15 13:17:37 -07:00
Brent Simmons
7335c65ecb
Remove last ODB stuff. Feed metadata is now entirely stored in FeedMetadata.plist.
2019-03-14 22:59:07 -07:00
Brent Simmons
1d52a1229b
Pull editedName from OPML when feed.editedName == nil.
2019-03-14 22:34:22 -07:00
Brent Simmons
79a6d5f761
Continue transition from ODB to FeedMetadata.plist. It’s simpler and uses less memory.
2019-03-13 23:41:43 -07:00
Brent Simmons
d498c3f19d
Create FeedMetadata. Not actually used just yet. (Soon.)
2019-03-12 22:40:11 -07:00
Brent Simmons
4c6d3807cb
Remove unused settingsTable.
2019-03-03 21:35:04 -08:00
Brent Simmons
0a45dda375
Create SearchFeedDelegate. Make searching synchronous, since it’s fast enough.
2019-02-24 19:22:16 -08:00
Brent Simmons
efe8a4ab15
Implement search — fetch articles matching a search string from the database.
2019-02-18 22:29:43 -08:00
Daniel Jalkut
ddb0ee21b6
Quiet warnings/errors from Xcode 10.2 about redundant public attributes on methods implemented inside public extensions.
2019-02-12 10:05:51 -05:00
Brent Simmons
6f41b2a728
Queue saving to disk, in Account, even during refresh.
2019-02-07 21:29:05 -08:00
Brent Simmons
eb3c69f4d0
Don’t write "Untitled" to Subscriptions.opml when a feed lacks a name or editedName — “Untitled” is a localizable, display-only string, not something to store in OPML. Fix #527 .
2019-02-06 21:18:22 -08:00
Brent Simmons
aadf4ec09f
Don’t set feed.editedName when importing OPML in Account.
2019-02-06 21:17:17 -08:00
Brent Simmons
ddccbdf610
Add addFeed and addFeeds to the Container protocol. This was confusing before. Now you can add directly to a Folder or Account.
2019-02-05 21:48:32 -08:00
Brent Simmons
448293a836
Set feed.title from the OPML — don’t just leave it blank.
2019-02-02 18:08:01 -08:00
Brent Simmons
30324c8ec0
Make sure that feed.editedName is never "". Treat it as nil.
2019-02-02 17:46:15 -08:00
Brent Simmons
f5d6e7e8fa
Fix bug where empty folders would be lost between runs of the app.
2019-01-27 21:42:58 -08:00
Brent Simmons
b900cbc0b7
Make Feed and Folder conform to Renewable.
2018-11-22 13:57:49 -08:00
Brent Simmons
485bde7ff2
Complete (probably) work on Feedbin sync data types.
2018-10-14 18:38:33 -07:00
Brent Simmons
cd6e6daf31
Continue work on Feedbin sync data types.
2018-10-14 18:10:07 -07:00
Brent Simmons
d69058c10c
Fix a couple first-run startup bugs.
2018-09-26 22:05:35 -07:00
Brent Simmons
7026eae899
Skip writing OPML file to disk during startup. Structure-changed notices happen during startup as the object graph is created, but it doesn’t mean that there’s a change that requires saving to disk.
2018-09-16 20:02:24 -07:00
Brent Simmons
1c3dca4d9b
Update unreadCount for an Account only when one of its feeds changes its unreadCount.
2018-09-16 19:07:07 -07:00
Brent Simmons
a914b3949b
Made launch performance *much* faster for large (thousands of feeds) subscriptions list. Also: split container.children in container.topLevelFeeds and container.folders. This simplifies a bunch of things, and makes some things faster.
2018-09-16 17:54:42 -07:00
Brent Simmons
6b6d393b3d
Delete some dead code.
2018-09-16 13:08:44 -07:00
Brent Simmons
3d45231494
Stop using urlToFeedDictionary. Feeds don’t have to be uniqued.
2018-09-16 13:04:42 -07:00
Brent Simmons
f8d6cb48dc
Remove instance where Feed equality was expected to be pointer equality, which is no longer true.
2018-09-16 12:46:50 -07:00
Brent Simmons
4010b4cb2a
On startup, import from AccountData.plist one last time, then rename it to AccountData-old.plist. On subsequent startups, import using Subscriptions.opml.
2018-09-16 12:42:46 -07:00
Brent Simmons
823d83c942
Write to disk on display-name-change only if it’s a Folder, since Feed names are stored in ODB.
2018-09-15 12:08:57 -07:00