* Added icon to "Recent >" menu item.
* Refactored app menu implementation, and implemented keyboard accelerators. Still doesn't work though.
* Few things fixed, but still doesn't work.
* Clicking menu items works.
* Fixing an issue with resources.
* New menu binding implemented. Still doesn't work though.
* Menu displayed properly, except for "Settings".
* Menu works, but it doesn't refresh.
* Works. But needs to be polished.
* All known issues with the new app menu solved.
* Significantly simplifying app menu binding.
* Removing some obsolete classes.
* Menu binding mechanism additionally optimized for performances.
* Removing unused translations.
* Further refactoring app menu binding, in order to make it more general.
* Renaming menu items in order to make them usable for both new tab and new window commands.
* Changing menu item keyboard accelerators based on new tab / window settings.
* Menu item keyboard accelerators are dynamically changing with chainging terminals in new tabs/windows option.
* New tab / window settings honored for top level menu items.
* New window mechanism simplified. Terminal-launching code refactored to be more readable. A bug with "SSH Info" fixed.
* Merging the latest changed.
* Fixing some after-merge issues.
* Minor refactoring.
* Minor refactoring.
* Default profile menu item now contains the profile name. Still doesn't update though.
* Default profile name in the menu item now updates.
* Updating resources from POEditor.
* New tab/window cascading menues implemented.
* Reverting translations back to the correct (the latest) version.
* Undoing translation changes from the last commit. I've made these by mistake.
* Configurable tab/window cascading menu.
* "Application menu type" settings value added.
* Minor spelling fix.
* Fixing some after-merge issues.
* Added icon to "Recent >" menu item.
* Refactored app menu implementation, and implemented keyboard accelerators. Still doesn't work though.
* Few things fixed, but still doesn't work.
* Clicking menu items works.
* Fixing an issue with resources.
* New menu binding implemented. Still doesn't work though.
* Menu displayed properly, except for "Settings".
* Menu works, but it doesn't refresh.
* Works. But needs to be polished.
* All known issues with the new app menu solved.
* Significantly simplifying app menu binding.
* Removing some obsolete classes.
* Menu binding mechanism additionally optimized for performances.
* Removing unused translations.
* Further refactoring app menu binding, in order to make it more general.
* Renaming menu items in order to make them usable for both new tab and new window commands.
* Changing menu item keyboard accelerators based on new tab / window settings.
* Menu item keyboard accelerators are dynamically changing with chainging terminals in new tabs/windows option.
* New tab / window settings honored for top level menu items.
* New window mechanism simplified. Terminal-launching code refactored to be more readable. A bug with "SSH Info" fixed.
* Merging the latest changed.
* Fixing some after-merge issues.
* Minor refactoring.
* Minor refactoring.
* Default profile menu item now contains the profile name. Still doesn't update though.
* Default profile name in the menu item now updates.
* Reverting translations back to the correct (the latest) version.
* Undoing translation changes from the last commit. I've made these by mistake.
* Mosh executables changed.
* New mosh from dialog.
* CommandHistoryService implemented.
* Backward compatibility for command history implemented.
* Implemented mosh backwards compatibility for saved profiles. But the app doesn't work!
* Saved profiles are backwards compatible, and the app works.
* Adding readme file for new mosh.
The keyboard shortcuts for local and SSH profiles will now result in the
new terminal being started in a window if "Open new terminals as" is set
to "Windows".
The diff is longer than strictly necessary because Visual Studio fixed
inconsistent line endings.
* feat(cli): Add json import/export of app config
Add the capability to export and import the application config to/from
a json file. The JSON file is LocalState\config.json in the app package
folder. The options are available via the new flags to the settings
command, e.g. `fluent.exe settings --export` and `fluent.exe settings
--import`
Import attempts to merge imported config with existing config, and
refuses to import thigns marked as pre-installed. It attempts to
merge configuration for pre-installed profiles where those fields
are editable, but otherwise discards invalid configuration.
Change-Id: Iadb468de5f724396db9a2de6bf3c3ba0d4d7ac2f
* Moved logic to SettingsService, fixed some issues
* Added new command wrapper, abstracts static and dynamic commands
- All uses of the `Command` are replaced with either `AppCommand`, for a command that is static to the scope of the application, or a reference to an ICommand (specifically, an `EnumCommand<AppCommand>()` instance), which provides the abstract wrapper.
- Functionality seems intact.
- Next step is to have the MainViewModel add the per-shell commands via SettingsService.CreateShellKeyboardShortcuts(), and have the SettingsService.ParseCommandString() function parse the command strings passed around properly.
- Finally, add the keyboard chord input to each shell's settings page.
* First kick at adding a new terminal keyboard command.
- It isn't presented anywhere, but references to keybindings should be using the ICommand key as their identifier for recognizing anything, and when xterm passes back a keyboard command event, the SettingsService is asked to convert the string into an ICommand.
* Renaming ICommand to Command.
It's not longer an interface, so this makes more sense.
* Renaming back to Command, and new class is AbstractCommand.
Going to simplify the PR diff considerably.
* Shortcuts for default shells work. Need to get the shell profile edit UI elements working.
* Added keyboard shortcut UI elements to shell profile pages.
* New and deleted shell profiles propagate to all terminal views.
* A bit of cleanup.
* Camel-casing command text to fix Ctrl+C and copy behaviour.
* Fixed failing test.
The new on disk store uses a .ToString(), not the Enum description, since the command isn't an Enum, it's a class now in general, and those semantics make more sense.
* Adding default value for null keybindings in shell profiles.
* Merge branch 'shell_commands' of https://github.com/Riebart/FluentTerminal into pr/85
Improved default value for keybinding property
* Renamed KeyBinding collection to KeyBindings
* Use strings as Command parameter of KeyBinding
* Added missing Commands to keyBindings of default shellProfiles
* fix build and unit tests after merge with master
* improve UI
* Split OnShellProfileCollectionChanged event