way I think I fixed this on my fork:
Slow un-disabling of files:
Cause seems to be the delegate itself (the c++/objc bridge) : code here
Tested emptying the delegate implementation methods, but no luck needed to just remove it.
The file types are still working, because right after there’s the setAllowedFileTypes code … this is deprecated and should be subbed with setAllowedContentTypes, but so far it works
. Also, I’m afraid that “content-types” might be a little more problematic than extensions - very ignorant about this, but not sure how e.g supporting jpg in all of its possible quirks (jpg, jpeg, JPG, JPEG) can translate to a content type : as is? OS takes care of it?
The preview component of course does not work since I removed the delegate - I just added an assert : wanna select multiple files and have a preview? not on my fork.
Select All
the solution in this post is only partially working - because the temp NSMenu is added on the app only if the file chooser is run modally, not on the beginWithCompletionHandler case of launchAsync, so I ended up:
- adding the select all subitem as the post above describes
- create and reset and instance of
TemporaryMainMenuWithStandardCommandsinside FileChooser::Native (only in the case selectMultipleFiles is on)
in the end it’s pretty sketchy, but my issues are fixed. I think the slowness of the delegate is really unsolvable , so maybe official juce could drift into an opt-in delegate, only in case you want the preview … and use setAllowedContentTypes only for the file type patterns.
