Key Mapping List Screen - cressie176/Load64 GitHub Wiki

Primary Purpose

View and manage keyboard remappings for a profile or launch configuration.

Main Screen Design

When the owner is a launch configuration (can inherit from profiles):

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  <Owner> > Key Mappings                                       [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  LIST                                                                        │
│  ┌────────────────────────────────────────────────────────────────────────┐  │
│  │   Host Key         System Key      Source                              │  │
│  ├────────────────────────────────────────────────────────────────────────┤  │
│  │ > Esc              RUN/STOP        —                                   │  │
│  │   Left Arrow       CRSR LEFT       —                                   │  │
│  │   Right Arrow      CRSR RIGHT      Default (Profile)                   │  │
│  └────────────────────────────────────────────────────────────────────────┘  │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

When the owner is a profile (no inheritance; Source column is omitted):

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  <Owner> > Key Mappings                                       [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  LIST                                                                        │
│  ┌────────────────────────────────────────────────────────────────────────┐  │
│  │   Host Key         System Key                                          │  │
│  ├────────────────────────────────────────────────────────────────────────┤  │
│  │ > Esc              RUN/STOP                                            │  │
│  │   Left Arrow       CRSR LEFT                                           │  │
│  │   Right Arrow      CRSR RIGHT                                          │  │
│  └────────────────────────────────────────────────────────────────────────┘  │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

If no key mappings have been set:

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  <Owner> > Key Mappings                                       [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  Select Add to add a key mapping.                                            │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

TOP BAR

Focusable: [Add] and [Back] CTAs
Interactive: [Add] and [Back] CTAs
Purpose: Display the owner name and provide access to add key mappings

<Owner> is the full breadcrumb path to the owner. i.e.

Owner Owner Template Example
Profile Profiles > Profiles > Multiplayer > Key Mappings
Launch Configuration The Last Ninja > Key Mappings

[Add] CTA

Navigates to the Key Mapping Edit screen with empty fields.

[Back] CTA

Returns to the previous screen.

LIST

Type: Single-selection vertical list
Focusable: Yes (primary focus region)
Interactive: Yes
Order: Alphabetically by host key label
Purpose: View and select key mappings for editing

Each row shows:

  • Host Key — the physical key pressed (e.g. Esc, Left Arrow)
  • System Key — the system key it maps to (e.g. RUN/STOP, CRSR LEFT)
  • Source (launch configuration owners only): if defined on the current owner, or <Name> (Profile) if inherited. Omitted when the owner is a profile, as profiles have no parent to inherit from.

Selecting a row owned by the current owner navigates to the Key Mapping Edit screen pre-populated with its values.

Selecting an inherited row navigates to the Key Mapping Edit screen pre-populated with the parent's values. Saving creates a new mapping on this owner, overriding the inherited value.

Context Menu

Only available on rows owned by the current owner. Not available on inherited rows.

Action Behaviour
Delete Opens a confirmation overlay before deleting the focused key mapping

Delete confirmation overlay:

┌──────────────────────────────────────────────────────────────────────────────┐
│                    ┌──────────────────────────────┐                          │
│                    │ Delete <Host Key> mapping?   │                          │
│                    │                              │                          │
│                    │   > Yes                      │                          │
│                    │     No                       │                          │
│                    └──────────────────────────────┘                          │
└──────────────────────────────────────────────────────────────────────────────┘
Option Behaviour
Yes Delete the mapping and return focus to the list
No Close the overlay and return focus to the list

BOTTOM BAR

Focusable: No
Interactive: No
Purpose: Display contextual hints and confirmation messages

When an inherited row is focused:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  Inherited from <Name> (<Type>). Select to override this mapping.            │
└──────────────────────────────────────────────────────────────────────────────┘

After saving a mapping:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Host Key> mapping saved                                                    │
└──────────────────────────────────────────────────────────────────────────────┘

After deleting a mapping:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Host Key> mapping deleted                                                  │
└──────────────────────────────────────────────────────────────────────────────┘
⚠️ **GitHub.com Fallback** ⚠️