Skip to content

Releases: mchakravarty/ProjectNavigator

Strict concurrency and path bindings

19 Nov 12:36

Choose a tag to compare

This release is a major clean up with (unavoidable) API changes. See the demo app for details on passing around the file tree and on bindings.

  • Adopts Swift 6.2 strict concurrency (using the approachable concurrency settings).
  • Removes the use of computed Binding(get:set:) bindings in favour of using key paths only. This is more efficient according to @chriseidhof's blog post: https://chris.eidhof.nl/post/swiftui-binding-tricks/
  • The removal of Binding(get:set:) bindings also makes view updates more predictable, at least in the latest OS versions.

Improves folder bindings

22 Sep 19:33

Choose a tag to compare

  • Introduces path bindings for folders.
  • Uses that for the dominant folder to fix update bugs .

Bug fix

15 Sep 15:58

Choose a tag to compare

1.5.3

Robustness

Fix resizing

07 Aug 19:52

Choose a tag to compare

Resizing must only apply to actual images and not to SF-Symbols.

Resizable images in EditableLabel

04 Aug 19:15

Choose a tag to compare

The images of EditableLabel are now being resized.

More flexible EditableLabel

03 Aug 19:34

Choose a tag to compare

An EditableLabel can now be initialised with any SwiftUI image (not just with a system image).

Bug fixes

02 Jul 16:24

Choose a tag to compare

Harden file wrapper extraction

This prevents a crash in some cases.

Improved label editing

03 Oct 17:35

Choose a tag to compare

Label editing works properly on macOS 15 and iOS 18. The demo app also demonstrates how to edit the selected label with tap gestures and by pressing the return key.

Root as default

16 Aug 19:19

Choose a tag to compare

The root of a folder tree is by default the dominant folder if there is no selection.

Better support for sections

15 Aug 15:39

Choose a tag to compare

The top-level name can be omitted, which is useful when presenting folders in a navigator with sections.