Commit Graph

437 Commits

Author SHA1 Message Date
Angelo Stavrow
9b2a849071
Revert "Don't navigate to new/last draft on launch (#238)" (#239)
This reverts commit f4ba5f9a90.
2022-12-29 09:25:36 -05:00
Angelo Stavrow
f4ba5f9a90
Don't navigate to new/last draft on launch (#238)
* Only navigate to new/last draft on launch on macOS

This is causing the app to crash on launch when there are no existing posts, so we’re going to remove it for now while we investigate.

* Bump build number and update change log
2022-12-29 09:06:31 -05:00
Angelo Stavrow
1361ff7586
Write logs to new post (#236) 2022-12-06 16:41:12 -05:00
Angelo Stavrow
fcd7c167c7
Provide a context menu for deleting posts (#232)
* Delete local posts from post list via context menu

* Build build number

* Bump version/build numbers

* Update change log
2022-11-19 09:10:24 -05:00
Angelo Stavrow
f3178626d9
Fix for misaligned badge in post list (#230) 2022-11-13 06:52:38 -05:00
Angelo Stavrow
f256996161
Improve editor scrolling on ios (#229)
* 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
2022-11-03 06:56:11 -04:00
Angelo Stavrow
4a3874abcd
Embed text editor fields into ScrollView (#227)
* 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.
2022-10-05 09:23:43 -04:00
Angelo Stavrow
884da073e9
Prepare release v1.0.11 for iOS (#225)
* 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
2022-09-10 08:30:55 -04:00
Angelo Stavrow
0d43cb0bd8
Prep for iOS 16 (#223)
* 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
2022-09-07 08:29:13 -04:00
Angelo Stavrow
b2f8049632
Update CollectionListView based on account type (#222) 2022-09-07 08:28:53 -04:00
Angelo Stavrow
5e86073499
Release v1.0.10 for iOS (#216)
* Bump version and build number

* Remove unnecessary TODO comment

* Update change log
2022-08-23 08:33:50 -04:00
Angelo Stavrow
dbcb18b1df
Fix bad merges (#215)
* 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: efe173c b93e0c3
                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
2022-07-28 07:47:39 -04:00
Angelo Stavrow
93c016268a
Add error handling to iOS post editor (#210) (#214)
* Add error handling to post editor

* Cleanup

* Add error handling to macOS (#211)

* Add error handling to Mac app

* 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

* Revert "Log fatal errors and present alert on next launch (#212)"

This reverts commit 7475b57772.
2022-07-28 07:38:19 -04:00
Angelo Stavrow
a315b09553
Cleanup 2022-05-31 06:51:40 -04:00
Angelo Stavrow
2eba4c5c04
Remove commented-out code 2022-05-28 07:22:27 -04:00
Angelo Stavrow
230f7a1076
Delete CollectionListModel in favour of FetchRequest in CollectionListView 2022-05-28 07:17:33 -04:00
Angelo Stavrow
15f84b04c0
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
2022-05-26 08:08:12 -04:00
Angelo Stavrow
c5b611b39e
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.
2022-05-26 07:31:11 -04:00
Angelo Stavrow
b017e21e06
Handle purging post errors 2022-05-23 15:52:20 -04:00
Angelo Stavrow
11d2e41ab5
Add default values for some error strings 2022-05-23 15:12:33 -04:00
Angelo Stavrow
dfb3a08608
Move User Defaults errors to ErrorConstants file 2022-05-13 08:44:13 -04:00
Angelo Stavrow
223ebf5b7c
Set current error on API call handlers 2022-05-13 08:33:32 -04:00
Angelo Stavrow
faa557c2b4
Set current error on API call failures 2022-05-13 08:01:11 -04:00
Angelo Stavrow
a3b805a319
Add error handling to top-level content view 2022-05-13 07:20:47 -04:00
Angelo Stavrow
3a53bec184
Clean up WriteFreelyModel’s published vars 2022-05-09 08:55:43 -04:00
Angelo Stavrow
aefcd0d799
Fix for temporary debugging 2022-05-08 10:18:21 -04:00
Angelo Stavrow
bf35738957
Handle errors on logout 2022-05-08 09:17:05 -04:00
Angelo Stavrow
01ba57ae75
Move Account-related error handling up the hierarchy 2022-05-08 09:16:46 -04:00
Angelo Stavrow
11200a01a0
Initial work on presenting alert on error 2022-05-01 12:06:36 -04:00
Angelo Stavrow
3c0bc81fec
Only ignore safe area at bottom edge (#206) 2022-04-02 08:07:03 -04:00
Angelo Stavrow
549ad3039f
Clean up project warnings (#199)
* 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
2022-04-02 08:04:50 -04:00
Angelo Stavrow
dff18e9d36
Refresh post list view when app becomes active 2021-11-28 08:01:54 -05:00
Angelo Stavrow
378229c71a
Bump build number 2021-11-19 15:51:37 -05:00
Angelo Stavrow
3752b85414
Add action extension 2021-11-19 15:41:54 -05:00
Angelo Stavrow
7db11172c0
Move user defaults to App Group 2021-11-05 14:18:36 -04:00
Angelo Stavrow
6693a83bd1
Merge pull request #195 from writefreely/migrate-store-to-group-container
Migrate persistent store to App Group
2021-10-22 16:23:16 -04:00
Angelo Stavrow
c0e0b6184f
Remove diff tool backup file 2021-10-22 16:23:01 -04:00
Angelo Stavrow
8a3a835d44
Refactor LocalStorageManager and add migration of persistent store to App Group 2021-10-15 15:06:35 -04:00
Angelo Stavrow
f55ae3c621
Implement initial store-migration functionality 2021-10-08 17:16:01 -04:00
Angelo Stavrow
2f1b895df5
Rename 'persistentContainer' to 'container' 2021-10-08 17:15:38 -04:00
Angelo Stavrow
11ad3bc2ff
Use LocalStorageManager 'standard' singleton 2021-10-08 17:07:06 -04:00
Angelo Stavrow
ba898b6ac6
Adapt new navigation to Mac app 2021-10-08 14:29:18 -04:00
Angelo Stavrow
ff7e7c3c0e
Re-enable launch-to-last-draft policy 2021-09-24 15:29:20 -04:00
Angelo Stavrow
3c1e04e3bf
Use view model for CollectionListView 2021-09-24 14:45:28 -04:00
Angelo Stavrow
28856eb434
Display Settings sheet on iOS 15 and above 2021-09-10 14:11:03 -04:00
Angelo Stavrow
cfe1613621
Handle thrown Keychain errors with informational alerts 2021-08-20 17:13:41 -04:00
Angelo Stavrow
2d965772e7
Add Keychain-related errors and throw from Keychain extension 2021-08-20 17:13:01 -04:00
Angelo Stavrow
e36f129ab8
Merge pull request #185 from writeas/update-spm-url
Update URL for WriteFreely Swift package
2021-04-07 11:04:54 -04:00
Angelo Stavrow
615e2199f3
Update URL for WriteFreely Swift package 2021-03-24 13:31:40 -04:00
Angelo Stavrow
4d4032594c
Don't trigger navigation to Drafts list when creating new post 2021-03-18 16:25:30 -04:00