Merge views into Match, expand history, and polish the UI

- Match page now holds players/match info, turn stats with a turn
  picker, and the deck lists (My deck · Preview · Opponent); the Deck
  and Turn tabs are gone. Section heights are draggable and remembered.
- History: sortable, resizable columns; deck and commander columns;
  right-click to show only or hide games with a value, with filter
  chips; stats tiles (win rate overall, last 10/100, last 7 days,
  play/draw, average length and turns) that follow the filters.
  Commanders are backfilled for games recorded before they were stored.
- Deck panel shows copies per zone against the deck total (e.g. 2/5).
- Preview can be cleared with ✕, a click on the image, or Esc.
- Customize menu stays open while toggling; Arrange covers deck
  sections and turn stats together.
- Fix squeezed nav buttons and the header pushing controls off-screen.
- Fix known opponent cards being double-counted when also revealed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Aeth3randClaude Opus 5.5 committed 2026-10-16 12:34:02 -04:00
1 parent 5b3c8c8e63
commit b3325e8ecc
15 files changed
+760 -183

No files matched your search

+22 -23
View File
@@ -3,31 +3,30 @@
A native Linux deck and game tracker for **Magic: The Gathering Arena** running under Steam/Proton.
It follows MTGA's `Player.log`, much like Untapped.gg and other trackers do, and shows:
Switch views with the buttons in the top bar (or Ctrl+1/2/3):
Two views, switched from the top bar (Ctrl+1 / Ctrl+2):
- **Deck**
- *My deck*: remaining library with draw odds, hand, battlefield, graveyard, exile, sideboard.
Between matches, it shows the last deck you submitted.
- *Opponent*: battlefield, stack, graveyard, exile, cards *known* to be in their hand or library
(cards you saw that went back into a hidden zone, or were revealed), and every card seen this match.
- *Card preview*: hover a card to see its image from [Scryfall](https://scryfall.com).
- **Match**: life totals, poison/energy and other player counters, emblems, hand/library/graveyard
counts, turn timer and timeouts used, turn/phase, Bo3 score and game time. The deck view fills
the bottom half.
- **Turn**: what happened this turn, for you, your opponent and in total: cards drawn, spells cast,
lands played, creatures died, life gained/lost, damage, discards, mills, exiles, counters and
tokens, plus land drops used/allowed. Use ◀ ▶ to browse earlier turns; the "Whole game" table
shows game totals.
- **History**: every finished game with date, event, opponent, both decks' colours, who was on
the play, the result, turns and length. Click a game to open it in the Deck/Match/Turn views
("Back to live" returns). Games from the previous MTGA session (`Player-prev.log`) are imported
on startup.
- **Match**, from top to bottom (drag the dividers to resize; sizes are remembered):
- *You · Match · Opponent*: life totals, poison/energy and other player counters, commanders,
emblems, hand/library/graveyard counts, turn timer and timeouts, land drops used/allowed, who
was on the play, plus the match panel (turn, phase, game number, Bo3 score and draw count,
game time).
- *Selected turn · Turn · Whole game*: what happened in a turn for you, your opponent and in
total (cards drawn, spells cast, lands played, creatures died, life gained/lost, damage,
discards, mills, exiles, counters, tokens, land drops). The middle panel picks the turn
(◀ ▶, or *Live* to follow the current one).
- *My deck · Opponent · Preview*: remaining library with draw odds, your zones; the opponent's
board, graveyard, exile, cards known to be in their hand or library, and every card seen this
match; hover a card for its [Scryfall](https://scryfall.com) image.
- **History**: stats (win rate overall, last 10/100 games, last 7 days, on the play/draw, average
length and turns) and a sortable list of every finished game: date, event, deck, commanders,
opponent, both decks' colours, who was on the play, result, turns and length. Click a header to
sort, right-click a cell to show only (or hide) games with that value; the stats follow the
filters. Click a game to open it in the Match view ("Back to live" returns). Games from the
previous MTGA session (`Player-prev.log`) are imported on startup.
The Match view also shows who was on the play and, in best-of-three, who has been on the draw more.
*⚙ Customize* shows or hides the items in the current view. *Customize → Arrange…* lets you
reorder (drag, or ↑/↓) and show/hide the sections of the My deck and Opponent panels, or the
rows of the turn view. Your choices are remembered.
*⚙ Customize* shows or hides the match panels, turn stats, deck sections and the preview.
*Customize → Arrange…* reorders (drag, or ↑/↓) and shows/hides the My deck and Opponent sections
and the turn stats. Your choices are remembered.
Card names, mana costs and types come from MTGA's own local card database, so they work offline.