Put the keyboard shortcuts back on MapRoulette 3's keys - #2911
Merged
Conversation
MR4 kept a shortcut registry but had inverted the ergonomics it existed for. Status changes — the one thing a mapper does on every task — sat on Ctrl/Cmd+F and Ctrl/Cmd+P, the two modifiers a browser already owns for Find and Print, while the bare left-hand keys a one-handed mapper can reach went to view toggles used once a session. Worse, `f` and `d` did view and selection things, so MR3 muscle memory produced the wrong action rather than none. The statuses go back to `f` `q` `x` `d` `w`, the editors to `e` `r` `t` `y` `v` `a`, and the map to `+` `-` `0`. Each opens the confirmation dialog rather than submitting, which is what makes a bare letter safe. `h` and `l` stay unbound: MR4 has no previous/next task control for them to shadow, and neither do `s` and `o`, whose task-feature and OSM-data layers do not exist here yet. Three tiers now, with no exceptions: a bare letter acts on the task screen; Shift+letter is the "more" variant of its bare key; Ctrl/Cmd is for the two commands that must work while typing, search and submit. That leaves the MR4-only toggles on keys 3 never used — `b`/`Shift+B` for the bundle filter and lasso, `m` for markers, `Shift+O` for other challenges. Around that: - Key names come out of the translated strings and are composed at render time from the binding, so rebinding is no longer a change to 16 locale catalogs. They render as key caps in the map tooltips, the editor menu and the search box, which is where mappers look. - The registry moves to the app root, so `?` works everywhere and the global search key joins it instead of running its own listener. - Dialogs suspend shortcuts while they hold the screen. Radix traps focus, but a bare letter still reached the window listener. - Shortcuts register unconditionally and flip `enabled`, carrying the reason they are out of reach, so the dialog can say "start mapping this task first" instead of quietly omitting the row. - Categories are ids rather than translated labels, which is what the dialog's ordering was comparing against — it only sorted in English. - Matching, formatting and conflict detection move into a tested module, and duplicate bindings now warn in development instead of resolving by registration order. The editor menu grew an "open in" section: the six editor keys had no visible control to shadow, since picking an editor there only set the default.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
MR4 kept a shortcut registry but had inverted the ergonomics it existed for. Status changes — the one thing a mapper does on every task — sat on Ctrl/Cmd+F and Ctrl/Cmd+P, the two modifiers a browser already owns for Find and Print, while the bare left-hand keys a one-handed mapper can reach went to view toggles used once a session. Worse,
fandddid view and selection things, so MR3 muscle memory produced the wrong action rather than none.The statuses go back to
fqxdw, the editors toertyva, and the map to+-0. Each opens the confirmation dialog rather than submitting, which is what makes a bare letter safe.handlstay unbound: MR4 has no previous/next task control for them to shadow, and neither dosando, whose task-feature and OSM-data layers do not exist here yet.Three tiers now, with no exceptions: a bare letter acts on the task screen; Shift+letter is the "more" variant of its bare key; Ctrl/Cmd is for the two commands that must work while typing, search and submit. That leaves the MR4-only toggles on keys 3 never used —
b/Shift+Bfor the bundle filter and lasso,mfor markers,Shift+Ofor other challenges.Around that:
?works everywhere and the global search key joins it instead of running its own listener.enabled, carrying the reason they are out of reach, so the dialog can say "start mapping this task first" instead of quietly omitting the row.The editor menu grew an "open in" section: the six editor keys had no visible control to shadow, since picking an editor there only set the default.