Make every keybind rebindable in Preferences > Controls (menu shortcuts + hard-coded keys) #863
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#863
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Every keyboard shortcut in Slipstream should be rebindable in Preferences → Controls.
Today that panel only covers the movement/camera actions registered in
llviewerinput.cpp(about 59 actions, saved viakey_bindings.xml). Everything else is hard-coded.Example
Freeze World is
Ctrl+Shift+F, set byshortcut="control|shift|F"on the menu item inmenu_viewer.xml. It doesn't appear in the Controls panel and can't be changed.What is hard-coded today
Menu accelerators:
menu_viewer.xmlmenu_login.xmlmenu_edit.xmlmenu_inventory_add.xml,menu_inventory_gear_default.xmlKey checks in code, for example:
slfloaterphotostudio.cpp: Ctrl+Z, Ctrl+Y, Ctrl+Shift+Z, Ctrl+Fslpanelshapeeditor.cpp: Ctrl+Fslchatbar.cpp: Ctrl+Shiftllviewerwindow.cpp: Esc, Tab / Ctrl+Tab, the mouselook key, Ctrl/Alt+Up/DownA full sweep is part of this ticket.
Scope
shortcut=in the Controls panel (grouped by menu). The user can rebind or clear it. The default comes from the XUI.shortcut=or a raw key comparison that isn't registered.Acceptance
Ctrl+Shift+F(Freeze World) can be rebound and cleared in Preferences → Controls, and the new key works immediately.shortcut=in the menu XUI appears in the Controls panel.