Skip to content

Allow custom command lines to reveal files in file browser #738

Description

@Oliver-Loeffler

As of now, Scene Builder uses reasonable hard coded platform defaults to reveal files.
On Windows this is limited to explorer /select,<path>, on macOS it uses open -R <path> and on Linux it relies on xdg-open.

Not every Linux system provides xdg-utils and not every user likes Windows Explorer.
So instead of providing multiple fallback options in Scene Builder, a user could manually configure the desired tool of choice for file browsing in Scene Builder preferences. Furthermore, in case of errors, users can change the command line to make Scene Builder work as desired.

Expected Behavior

  • Scene Builder allows to manually override the default command line for revealing files in file system
  • Scene Builder allows to manually override the default command line for opening files in file system
  • Scene Builder allows to manually override the default command line for opening URLs

Current Behavior

  • Scene Builder makes use of reasonable defaults.
  • Defaults are hard coded.
  • User cannot change the command lines.

Context

On Linux Scene Builder requires xdg-utils installed. However, the installation package has no dependency to xdg-utils.
Now, if xdg-utils is not installed, the open URL function and the reveal file functions wont work. Also, opening files from within Scene Builder wont work. The bad thing is, the user has no chance to repair this. On Windows for example, one might use FreeCommander or TotalCommander, same for macOS.

Having a setting for this in Preferences dialog would be helpful for users to adjust these settings for their needs or to repair if the default values wont work. The preferences dialog should be defined in a way, so that the user can revert to defaults any time.

There are command lines for:

  • FXML file opening (for editing)
  • Reveal a files location in file system browser
  • Opening a remote URL

Related issues

#674

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions