terminal/doc/specs
Mike Griese 3866771b1b
Add "monitor": "any"|"toCurrent"|"toMouse" setting to globalSummon (#10092)
#### ⚠️ this pr targets #9977

## Summary of the Pull Request

This adds support for part of the `monitor` property for `globalSummon`. It also goes a little off-spec:

```json
"monitor": "any"|"toCurrent"|"toMouse"
```

* `monitor`: This controls the monitor that the window will be summoned from/to
  - `"any"`: Summon the MRU window, regardless of which monitor it's currently on.
  - `"toCurrent"`/omitted: (_default_): Summon the MRU window **TO** the monitor with the current **foreground** window.
  - [**NEW**] `"toMouse"`: Summon the MRU window **TO** the monitor where the **mouse** cursor is.

When I was playing with this, It felt like `toMouse` was always what I wanted, not `toCurrent`. We can always just comment that out if we think that's contentious - I'm aware I didn't originally spec that.

## References
* Original thread: #653
* Spec: #9274 
* megathread: #8888

## PR Checklist
* [x] Closes https://github.com/microsoft/terminal/projects/5#card-60325291
* [x] I work here
* [ ] Tests added/passed
* [ ] Requires documentation to be updated 😢 

## Detailed Description of the Pull Request / Additional comments

I made `toMouse` the default because it felt better. fite-me.jpg 

## Validation Steps Performed
my ever evolving blob:

```jsonc
    { "keys": "ctrl+`", "command": { "action": "quakeMode" } },
    { "keys": "ctrl+1", "command": { "action": "globalSummon" } },
    // { "keys": "ctrl+2", "command": { "action": "globalSummon", "desktop": "toCurrent" } },
    // { "keys": "ctrl+2", "command": { "action": "globalSummon", "toggleVisibility": false } },
    // { "keys": "ctrl+2", "command": { "action": "globalSummon", "dropdownDuration": 2000 } },
    { "keys": "ctrl+2", "command": { "action": "globalSummon", "monitor": "any" } },
    // { "keys": "ctrl+3", "command": { "action": "globalSummon", "desktop": "onCurrent" } },
    { "keys": "ctrl+3", "command": { "action": "globalSummon", "monitor": "toMouse" } },
    // { "keys": "ctrl+4", "command": { "action": "globalSummon", "desktop": "any" } },
    { "keys": "ctrl+4", "command": { "action": "globalSummon", "monitor": "toMouse", "dropdownDuration": 500 } },
    { "keys": "ctrl+5", "command": { "action": "globalSummon", "dropdownDuration": 500 } },
```
2021-05-17 12:57:08 +00:00
..
#605 - Search Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
#653 - Quake Mode Add "monitor": "any"|"toCurrent"|"toMouse" setting to globalSummon (#10092) 2021-05-17 12:57:08 +00:00
#885 - Terminal Settings Model [Spec] Settings Model - Actions (#9428) 2021-05-05 04:49:06 +00:00
#1043 - Set the initial position of the Terminal Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#1235 - Azure cloud shell connector Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
#1337 - Per-Profile Tab Colors Add a spec for per-profile tab colors (#7134) 2020-08-03 15:01:36 -05:00
#1502 - Advanced Tab Switcher Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
#1564 - Settings UI Settings UI inheritance spec (#8269) 2020-12-11 10:42:57 -08:00
#1571 - New Tab Menu Customization Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
#2871 - Pane Navigation Add a spec for pane navigation (#8375) 2021-01-11 12:16:44 -06:00
#4191 - Formatted Copy Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
#5000 - Process Model 2.0 Spec for Windows Terminal Window Management (#8135) 2021-02-05 06:30:02 -06:00
#6899 - Action IDs Run all images through ImgBot (#8169) 2020-11-05 18:03:40 -08:00
drafts Finalize Command Palette Spec (#5674) 2020-06-11 21:33:20 +00:00
#532 - Panes and Split Windows.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#597 - Tab Sizing.md Update #597 - Tab Sizing.md 2021-02-09 10:50:20 -08:00
#607 - Commandline Arguments for the Windows Terminal.md ci: spelling: update to 0.0.13 and include advice (#5211) 2020-04-01 12:15:42 -07:00
#754 - Cascading Default Settings.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#976 - VT52 escape sequences.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#980 - SnapOnOutput.md Add a spec for output snapping (#2529) 2020-07-07 21:45:16 +00:00
#1142 - Keybinding Arguments.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#2046 - Command Palette.md Spec for unified keybindings and commands, and synthesized action names (#6532) 2020-06-22 15:41:45 -05:00
#2046 - Unified keybindings and commands, and synthesized action names.md Prepare for the primary branch name to change to main (#7985) 2020-10-21 17:29:36 -07:00
#2325 - Default Profile Settings.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#2557 - Settings Keybinding.md Add Mini-Spec for openSettings (#5915) 2020-06-11 10:12:08 -07:00
#2563 - closeOnExit and TerminalConnection evolution.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
#3062 - Appearance configuration object for profiles.md Spec: Appearance configuration objects for profiles (#8345) 2021-02-06 00:05:17 +00:00
#4999 - Improved keyboard handling in Conpty.md Spec for Improved keyboard handling in Conpty (#5887) 2020-06-04 12:42:33 +00:00
#8324 - Application State (TSM).md doc: Add a spec for Application State (#7972) 2020-12-03 17:52:03 -08:00
Keybindings-spec.md First draft of a spec for panes with non-terminal content (#1080) 2020-06-05 11:14:01 -07:00
Proto extensions-spec.md Proto extensions spec (#7584) 2020-11-05 21:43:16 +00:00
settings-spec-template.md Add a template for discussing a settings change (#8376) 2020-12-01 14:16:24 -06:00
spec-template.md Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
TerminalSettings-spec.md First draft of a spec for panes with non-terminal content (#1080) 2020-06-05 11:14:01 -07:00