Improved UI flow for Commander deck creation#10517
Open
MostCromulent wants to merge 2 commits intoCard-Forge:masterfrom
Open
Improved UI flow for Commander deck creation#10517MostCromulent wants to merge 2 commits intoCard-Forge:masterfrom
MostCromulent wants to merge 2 commits intoCard-Forge:masterfrom
Conversation
Adds a Format dropdown to the deck panel header (Constructed / Commander / Oathbreaker / Brawl / Tiny Leaders). Selecting a format swaps the active editor and carries the in-progress deck across. Switching from a commander format to Constructed moves the Commander section into Main so cards aren't lost. Adds a "Set card as commander" right-click entry on the Card Catalog, Main, and Sideboard panes when the active format has a Commander section. Partner-aware: when a partner-eligible commander is already set, both are kept; otherwise the existing commander moves to Main and the new card replaces it. The deck pane switches to the Commander section after promotion so the result is visible. Routes deck imports through the editor implied by the importer's legality format choice — Commander / Brawl / Oathbreaker land in those editors, anything else (Standard, Modern, Pioneer, etc.) goes to Constructed. Explicit "Commander" or "CM:" section headers in the pasted list auto-tick the format checkbox so the user can confirm or override before accepting. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
# Conflicts: # forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorConstructed.java
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.
Summary
Follows discussion on #10476
UI flow improvements for Commander deck creation on desktop:
Background
Currently the only way to create a Commander deck on desktop is to first open the Commander deck list tab in the Deck Editor before creating or importing the deck.
This UI is non-intuitive: when a user opens the deck editor it immediately shows the card catalog window and a new deck to start building. The dependency between tabs and deck format is not obvious or advertised. Users start making a deck on the default window only to discover it doesn't support Commander format, with no clear reason why or how to change it.
What this PR adds
1. Format dropdown in deck panel header
A new
Format:dropdown sits underneath the title row, listingConstructed/Commander/Oathbreaker/Brawl/Tiny Leaders— the five desktop editorGameTypes.Changing the dropdown swaps the active editor and carries the in-progress deck across. Switching from a commander format to Constructed moves the Commander section into Main so the legendary isn't lost. Selecting the format that's already active is a no-op.
The dropdown also stays in sync with editor changes driven from the deck-list tab row — opening a commander deck from
VCommanderDecksupdates the dropdown automatically.2. "Set card as commander" right-click context entry
When the active format has a Commander section, right-clicking an eligible card in the Card Catalog, Main pane, or Sideboard pane exposes a "Set card as commander" entry (or "as oathbreaker" / "as signature spell" for Oathbreaker) similar to existing 'Add card to sideboard' context entry. Behaviour:
DeckFormat.isLegalCommander(rules)— no new validators.3. Deck importer automatically routes to the correct editor
The deck importer now respects the user's legality-format choice when loading. If
Commander/Brawl/Oathbreakeris selected, the import lands in the corresponding editor. Other legality formats (Standard, Modern, Pioneer, Pauper, Legacy, Vintage, etc.) route to the Constructed editor.Additionally, an explicit
Commander(orCM:) section header in the pasted list now auto-ticks the format checkbox and selectsCommanderin the legality dropdown so the user can confirm or override before completing the import. This helps ensure Commander imports are routed to the Commander editor rather than Constructed.🤖 Generated with Claude Code