Replace various "Visualize with..." menu items with single configurable item
Background:
As per discussion in Pull request 1, the Git bundle menu is quite long and has top-level commands to open the project in various GUI apps (GitX, gitk, etc.). I wanted to add similar support for SourceTree, but this would make the menu even longer and more unwieldy.
In this pull request:
- All
Visualize History with ...items menu items have been removed and replaced with a singleVisualize History with External Git Appitem. (There's probably a better way to name this command...suggestions?) - The behavior of
Visualize History with External Git Appis configured via the config dialog. The user can choose between several preset apps, or choose "custom" and add a custom shell command to be run instead.
I've tested the changes with every listed app except for Gitnub.
The UI for the config dialog could be cleaned up a bit more: There are text fields for custom paths to GitX and Gitnub which are currently displayed no matter which app is selected from the menu. I'd like to add some Javascript to dynamically show/hide these fields based on the app selection, but before I go down that path, I wanted to get some feedback on this overall approach.
Let me know what you think of this approach. Thanks.
In case someone else finds this useful, I've just merged recent changes from the base branch into my pull request branch.
I've been using the changes in this pull request myself for over two years (mostly with SourceTree) without issue.