* Unset isScrollEnabled property on UITextViews
* Begin implementing common MultilineTextView
* Remove legacy text views
* Fix firstResponder issues
* Bump version and build number and update change log
* Fix smart-dashes replacement in MultilineTextView
* Wait 10ms before navigating to the editor after creating a new post
* Wait before navigating to editor after creating a new post
* Bump build number
* Embed text editor fields into ScrollView
* Bump version/build number and update change log
* Fix truncated post badges on status change
When going from a shorter label (e.g., ‘LOCAL’) to a longer one (e.g., ‘PUBLISHED’), the SwiftUI render loop would not expand the size of the post badge to fit the extra characters, so on change it would be truncated (e.g., read ‘PUBL…’). This change fixes the bug.
* Add error handling to Mac app
* Log fatal crashes and present alert on next launch
* Update crash alert copy and navigate to help forum
* Refactor logging into reuseable methods
* Refactor class to use protocol
* Add environment object to settings window
* Improve deactivation of app when miniaturizing
* Chagne dispatch type when creating new post
* Bump version and build number
* Remove unnecessary TODO comment
* Update change log
* Log fatal crashes and present alert on next launch
* Update crash alert copy and navigate to help forum
* Refactor logging into reuseable methods
* Add environment object to settings window
* Improve deactivation of app when miniaturizing
* Chagne dispatch type when creating new post
* Improve default window size (#220)
* Clean up unnecessary import
* Set idealWidth property on sidebars
* Unset selected post on collection change (#218)
* Unset selected post when changing collection
* Update change log
* Bump build number and update change log
* Don’t render spacer in iOS 16+
* Bump version and build for TestFlight
* Bump version and build of action extension
* Run SwiftLint on all files for each build
This prevents a build warning in Xcode 14 because SwiftLint doesn’t yet support input/output files for these script execution build phases. It’s fast enough, so running it on all files isn’t an issue.
* Add missing error handling on login view
* Clean up line_length warning
* Update change log
* Alert on error: shared code
commit 00e6fabe1dad243eb49d5ffdd9695bda287b8b53
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Thu Jul 28 07:16:22 2022 -0400
Replace CollectionListModel with FetchRequest in CollectionListView
commit d54b9471ba9da5d22c904bbb38a555529d3c15a5
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Thu Jul 28 07:13:13 2022 -0400
Add error handling to iOS post editor
commit b48fde47147572fe78379c2bd76430f474ac4822
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Wed Jul 27 12:13:06 2022 -0400
Add error handling to macOS
commit 695da810854414620035005b83d9c366669f96ff
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Wed Jul 27 12:00:34 2022 -0400
Log fatal errors and present alert on next launch
commit 2017a5b437
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sun Jul 24 06:22:29 2022 -0400
Clean up todo comment
commit 669e07ecd9
Merge: efe173cb93e0c3
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat Jun 25 12:08:17 2022 -0400
Merge branch 'show-downloadable-logs' into log-localstore-errors
commit b93e0c3547
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat Jun 25 12:07:38 2022 -0400
Refactor class to use protocol
commit 9b2572ba41
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat Jun 25 11:17:44 2022 -0400
Refactor logging into reuseable methods
commit efe173cfca
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Fri Jun 24 08:40:10 2022 -0400
Update crash alert copy and navigate to help forum
commit 5a1b400333
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat Jun 18 08:53:25 2022 -0400
Log fatal crashes and present alert on next launch
commit f1b0a20643
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Wed Jul 27 11:42:05 2022 -0400
Revert "Log fatal errors and present alert on next launch (#212)"
This reverts commit 7475b57772.
commit 7475b57772
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Wed Jul 27 09:47:06 2022 -0400
Log fatal errors and present alert on next launch (#212)
* Log fatal crashes and present alert on next launch
* Update crash alert copy and navigate to help forum
* Refactor logging into reuseable methods
* Refactor class to use protocol
* Clean up todo comment
commit a43bd801a8
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Tue May 31 07:35:40 2022 -0400
Add error handling to Mac app
commit a315b09553
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Tue May 31 06:51:40 2022 -0400
Cleanup
commit 7863c2ba08
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat May 28 09:23:16 2022 -0400
Add error handling to post editor
commit 2eba4c5c04
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat May 28 07:22:27 2022 -0400
Remove commented-out code
commit 230f7a1076
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat May 28 07:17:33 2022 -0400
Delete CollectionListModel in favour of FetchRequest in CollectionListView
commit fd37a163b9
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Tue May 31 07:36:43 2022 -0400
Revert "Add error handling to Mac app"
This reverts commit b1a8b8b29c.
commit b1a8b8b29c
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Tue May 31 07:23:41 2022 -0400
Add error handling to Mac app
commit 15f84b04c0
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Thu May 26 08:08:12 2022 -0400
Handle errors in (most) shared code
Two outliers to come back to are:
- the LocalStoreManager, where we can’t set a current error in the WriteFreelyModel in methods that can’t throw
- the CollectionListModel, where the initializer can’t throw because we use it as a property initializer in CollectionListView
commit c5b611b39e
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Thu May 26 07:31:11 2022 -0400
Add FIXME to track silent failure on fetching collections
As collections are fetched and added to the `list` property in the CollectionListModel’s initializer, it’s tricky to throw an error here: we call it as a property initializer in CollectionListView, which cannot throw.
Consider refactoring this logic such that we’re using, for example, a @FetchRequest in CollectionListView instead.
commit b017e21e06
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Mon May 23 15:52:20 2022 -0400
Handle purging post errors
commit 11d2e41ab5
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Mon May 23 15:12:33 2022 -0400
Add default values for some error strings
commit dfb3a08608
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Fri May 13 08:44:13 2022 -0400
Move User Defaults errors to ErrorConstants file
commit 223ebf5b7c
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Fri May 13 08:33:32 2022 -0400
Set current error on API call handlers
commit faa557c2b4
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Fri May 13 08:01:11 2022 -0400
Set current error on API call failures
commit a3b805a319
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Fri May 13 07:20:47 2022 -0400
Add error handling to top-level content view
commit 3a53bec184
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Mon May 9 08:55:43 2022 -0400
Clean up WriteFreelyModel’s published vars
commit aefcd0d799
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sun May 8 10:18:21 2022 -0400
Fix for temporary debugging
commit bf35738957
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sun May 8 09:17:05 2022 -0400
Handle errors on logout
commit 01ba57ae75
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sun May 8 09:16:46 2022 -0400
Move Account-related error handling up the hierarchy
commit 11200a01a0
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sun May 1 12:06:36 2022 -0400
Initial work on presenting alert on error
* Bump writefreely-swift package minimum version
commit 91e2852243
Author: Angelo Stavrow <contact@angelostavrow.com>
Date: Sat May 28 06:50:34 2022 -0400
Bump writefreely-swift package minimum version
* Initial work on presenting alert on error
* Move Account-related error handling up the hierarchy
* Handle errors on logout
* Fix for temporary debugging
* Clean up WriteFreelyModel’s published vars
* Add error handling to top-level content view
* Set current error on API call failures
* Set current error on API call handlers
* Move User Defaults errors to ErrorConstants file
* Add default values for some error strings
* Handle purging post errors
* Add FIXME to track silent failure on fetching collections
As collections are fetched and added to the `list` property in the CollectionListModel’s initializer, it’s tricky to throw an error here: we call it as a property initializer in CollectionListView, which cannot throw.
Consider refactoring this logic such that we’re using, for example, a @FetchRequest in CollectionListView instead.
* Handle errors in (most) shared code
Two outliers to come back to are:
- the LocalStoreManager, where we can’t set a current error in the WriteFreelyModel in methods that can’t throw
- the CollectionListModel, where the initializer can’t throw because we use it as a property initializer in CollectionListView
* Add error handling to Mac app
* Revert "Add error handling to Mac app"
This reverts commit b1a8b8b29c.
* Set "recommended project settings" for Mac app
* Add default fallback for font typingAttribute
* Clean up linter errors
* Update extension iconset
* Fix spm errors and upgrade sparkle (#203)
* Switch WriteFreely package import from ssh to https
* Sign macOS project target for Development
This fixes a crash-on-launch bug when running Product > Run from Xcode (Product > Archive should work correctly). See https://github.com/sparkle-project/Sparkle/issues/2056 for more details.
Bug introduced by commit:
671b0540ac
* Update Sparkle to v2.0 from official repo
Previously, we forked the repo to the WriteFreely org because Sparkle didn't support tag-based SPM updates. We therefore had to pull from the `master` branch, so forking insulated us from unexpected changes.
As of 2.x Sparkle now allows for tag-based updating via SPM; we'll allow patch updates but stop short of 2.1 until we can vet changes.
* Add MacUpdatesViewModel ObservableObject
* Use MacUpdatesViewModel to handle Sparkle update logic
SidebarView literally just calls CollectionListView and provides no other functionality or state management; ContentView can therefore just call CollectionListView directly.