Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improving swing's JFileChooser? #795

Open
tferr opened this issue Jan 16, 2024 · 0 comments
Open

Improving swing's JFileChooser? #795

tferr opened this issue Jan 16, 2024 · 0 comments

Comments

@tferr
Copy link

tferr commented Jan 16, 2024

There are several issues here about the JFileChooser, including #100. However, the suggestions on improving JFileChooser frequently end-up with replacing it with a native File chooser. Native dialogs are not optimal for us:

  • Second-party libraries seem focused on particular platforms (mainly Windows OS!?). We need equal support for Windows. Linux and MacOS
  • We rely on dialogs (arguably these pertain to older code) with tile bar that explain the file(s) to be chosen (e.g., some versions of MacOS native choosers don't allow for this)

for these reasons, relying on JFileChooser is (so far at least) the most sensible choice for our needs. We've made some minor tweaks to JFileChooser - by extending some FlatLaf code - that include:

  1. Drag & drop support from native file explorer
  2. Option to toggle invisible files
  3. Option to refresh/reload the file list (useful for remote servers)
  4. Option to reveal the active path in native file explorer
  5. Option to filter the file list by keyword

It looks like this:
image

The code is here. It could be re-use/recycled in anyway you see fit.

Opening this in case this is of interest to the project (feel free to close it, if otherwise).

DevCharly added a commit that referenced this issue Feb 10, 2024
DevCharly added a commit that referenced this issue Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant