Compilation Details Screen - cressie176/Load64 GitHub Wiki

Primary Purpose

View and manage the games in a compilation.

Secondary Purpose

  • Add to the compilation
  • Remove games from the compilation

This screen is used for both user-defined compilations and the reserved "All Games" compilation. "All Games" cannot be renamed or deleted, but games can be added and removed in the same way as user-defined compilations.

Main Screen Design

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  Compilations > <Compilation Name>                            [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  GAMES LIST                                                                  │
│  ┌────────────────────────────────────────────────────────────────────────┐  │
│  │   Title                  Publisher                 Year                │  │
│  ├────────────────────────────────────────────────────────────────────────┤  │
│  │ > Atic Atac              Ultimate Play the Game    1983                │  │
│  │   Boulder Dash II        First Star Software       1985                │  │
│  │   Wizball                Ocean                     1987                │  │
│  └────────────────────────────────────────────────────────────────────────┘  │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  3 games                                                                     │
└──────────────────────────────────────────────────────────────────────────────┘

If the compilation is empty:

┌──────────────────────────────────────────────────────────────────────────────┐
│ TOP BAR                                                                      │
│  Compilations > <Compilation Name>                            [Add]  [Back]  │
├──────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│  Select Add to add games to this compilation.                                │
│                                                                              │
├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  0 games                                                                     │
└──────────────────────────────────────────────────────────────────────────────┘

TOP BAR

Focusable: [Add] and [Back] CTAs only
Interactive: [Add] and [Back] CTAs only
Purpose: Display the compilation name and provide access to Add and return to the previous screen

GAMES LIST

Type: Single-selection vertical list
Focusable: Yes (primary focus region)
Interactive: No
Order: Alphabetically by sort title
Purpose: Display the games in this compilation

Each row shows:

  • Game title
  • Publisher (shown as if not set)
  • Year (shown as if not set)

Long titles and publisher names are truncated to fit the available column width.

The list supports alphabetical jump navigation. See Game List Navigation.

Context Menu

Action Behaviour
Remove Game Opens a confirmation overlay before removing the game from the compilation

Remove Game confirmation overlay:

┌──────────────────────────────────────────────────────────────────────────────┐
│                    ┌──────────────────────────────┐                          │
│                    │ Remove <Game Title>?         │                          │
│                    │                              │                          │
│                    │   > Yes                      │                          │
│                    │     No                       │                          │
│                    └──────────────────────────────┘                          │
└──────────────────────────────────────────────────────────────────────────────┘
Option Behaviour
Yes Remove the game from the compilation and return focus to the Compilation Details screen
No Close the overlay and return focus to the Compilation Details screen

Removing a game does not delete it from the library.

BOTTOM BAR

Focusable: No
Interactive: No
Purpose: Always display the game count, or a confirmation message after an action

Default state:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <n> games                                                                   │
└──────────────────────────────────────────────────────────────────────────────┘

After adding a single game:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Game Title> added                                                          │
└──────────────────────────────────────────────────────────────────────────────┘

After adding multiple games:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <n> games added                                                             │
└──────────────────────────────────────────────────────────────────────────────┘

After removing a game:

├──────────────────────────────────────────────────────────────────────────────┤
│ BOTTOM BAR                                                                   │
│  <Game Title> removed                                                        │
└──────────────────────────────────────────────────────────────────────────────┘

[Add] CTA

Navigates to the Compilation Membership screen.

[Back] CTA

Returns to the previous screen.

⚠️ **GitHub.com Fallback** ⚠️