Commit Graph

3829 Commits

Author SHA1 Message Date
Georges-Antoine Assi
c97ec449e2 drop more aspect ratrio 2026-05-17 14:07:46 -04:00
Georges-Antoine Assi
90945685e4 Stuff 2026-05-17 12:43:33 -04:00
Georges-Antoine Assi
18a271b653 fix(home): center-align recently added cards vertically
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 12:42:59 -04:00
Georges-Antoine Assi
6df37f50cf run fmt 2026-05-16 20:05:18 -04:00
Georges-Antoine Assi
d72e645049 use bowser 2026-05-16 19:17:38 -04:00
copilot-swe-agent[bot]
5c82044bdb fix: avoid safari chunk upload progress stalls
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/41c15553-6e97-45ca-be3d-589c2f07589e

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-05-16 21:55:12 +00:00
Georges-Antoine Assi
32cdfb1547 Merge pull request #3374 from rommapp/copilot/fix-file-id-issue-api-call
Fix stale disc file ID in localStorage causing 404 on ROM play after rescan
2026-05-14 20:29:07 -04:00
Georges-Antoine Assi
5b02d6b377 run fmt 2026-05-14 15:44:42 -04:00
copilot-swe-agent[bot]
4ee310b0da fix(console): honor DISABLE_EMULATOR_JS in console mode
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/67bb960a-e5ec-4569-bdeb-d8c90028c004

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-05-14 18:40:25 +00:00
copilot-swe-agent[bot]
d1696cd047 Fix stale disc file_id causing 404 when playing ROMs after rescan
When a ROM is rescanned and its file IDs change, disc IDs stored in
localStorage become stale. This caused file_ids query params with invalid
IDs to be sent to /api/roms/{id}/content/{name}, resulting in 404 errors.

Validate the stored disc ID against the actual ROM files before use. If
stale, clear localStorage and fall back to the first available file.

Agent-Logs-Url: https://github.com/rommapp/romm/sessions/3579d577-13ff-4288-9a9c-909b6f891c9e

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-05-14 18:38:23 +00:00
Georges-Antoine Assi
8e009dffc0 render covers at their natural aspect ratio and drop the cover-style setting
Covers now use object-fit: contain inside a fixed slot, so each image
keeps its own aspect ratio (letterboxed where needed) instead of being
cropped to the platform's configured ratio. The slot itself still uses
a single default aspect ratio for grid stability, so cards don't reflow
as images load.

With per-platform aspect ratio no longer doing anything visible, remove
the Cover style picker from the platform info drawer and clean up dead
plumbing: galleryViewStore.getAspectRatio no longer reads
platform.aspect_ratio, platformId is dropped from Skeleton / SearchCover
/ MatchRom / showSearchCoverDialog, and the orphaned i18n keys
(cover-style, settings, old-squared-cases, old-horizontal-cases) are
stripped from all platform.json locale files.

Backend aspect_ratio column is left in place; no client sends it anymore.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 11:11:09 -04:00
Georges-Antoine Assi
fe4546c8c1 fix(frontend): use static auth background on firefox
The animated SVG background causes lag on Firefox. Swap in the static
variant via @-moz-document url-prefix() so other engines keep the
animation.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 09:05:58 -04:00
copilot-swe-agent[bot]
2bb86e4836 Make setup platform rows toggle checkbox selection on click
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/00a7f2a2-cabf-470b-a73e-a127ffcdccd5

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-05-08 13:55:00 +00:00
sabuswai
228c640f18 Add credentialless attribute to YouTube iframe
add credentialless attribute to YouTube iframe for COEP compatibility
2026-05-07 01:13:07 -05:00
Georges-Antoine Assi
9fe025806e Allow bypassing OIDC autologin via bypass_autologin URL param
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-01 15:06:29 -04:00
Georges-Antoine Assi
ece33c4bea Merge pull request #3317 from Namaneo/fixes
Fix: UI settings not woking after switching pages back and forth
2026-04-29 15:40:50 -04:00
Julien Loir
eb842bd952 Fix: UI settings not woking after switching pages back and forth 2026-04-29 15:08:30 +02:00
copilot-swe-agent[bot]
2498ecf729 fix: store chunk uploads under ROMM_BASE_PATH and show upload speed in UI
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/2f626cb9-e564-4764-b9e9-3de396e3e7ca

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-29 12:39:47 +00:00
zurdi
28484e7d8d fix(UserBtn): add transparent class to avatar for improved styling 2026-04-21 13:20:37 +00:00
Georges-Antoine Assi
c2d6b08a6b Merge pull request #3293 from rommapp/copilot/fix-update-tags-metadata
feat: open refresh metadata dialog with scan type and metadata source selection
2026-04-20 21:57:29 -04:00
Georges-Antoine Assi
72c668289d changes from bot review 2026-04-20 21:41:42 -04:00
Georges-Antoine Assi
98f1d65a7c fixes 2026-04-20 21:36:59 -04:00
copilot-swe-agent[bot]
681efc6a46 fix: enable COEP/COOP headers for console play route to fix MSDOS games
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/487d4506-1203-499e-afc4-a45ee1f2438b

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-20 18:08:38 +00:00
copilot-swe-agent[bot]
042ddf16e1 fix: address code review comments in RefreshMetadataDialog
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/fec651c3-d741-4c7d-a79f-bd469343602e

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-20 18:00:08 +00:00
copilot-swe-agent[bot]
b9d784d3b4 feat: add RefreshMetadataDialog with scan type and metadata source selection
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/fec651c3-d741-4c7d-a79f-bd469343602e

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-20 17:58:06 +00:00
Georges-Antoine Assi
7b20101d50 Merge pull request #3270 from Namaneo/home-boxarts
A bunch of minor bug fixes
2026-04-16 11:16:16 -04:00
Georges-Antoine Assi
ed15fa13d4 fix type errors 2026-04-16 10:37:12 -04:00
Julien Loir
a3cc1daada Check for computed large cover instead of ROM property 2026-04-16 12:43:08 +02:00
Julien Loir
98185a309b Make home boxarts respect gallery configuration 2026-04-16 12:14:21 +02:00
Spinnich
e8ec8a0b18 fix(linting): fix import order in AddRoms.vue and RemoveRoms.vue
Move @/__generated__ import after third-party modules to satisfy
trunk's @trivago/prettier-plugin-sort-imports ordering rules.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 06:56:07 -04:00
Spinnich
15b485b118 fix(collections): address reviewer feedback on types and concurrency
- Use CollectionSchema instead of ReturnType<typeof collectionsStore.getCollection>
  in AddRoms.vue and RemoveRoms.vue (simpler, per gantoine review)
- Wrap bulk INSERT in a savepoint so a concurrent duplicate-key violation
  is caught via IntegrityError and ignored rather than aborting the transaction
- Only bump Collection.updated_at in remove_roms_from_collection when rows
  were actually deleted (rowcount > 0), matching add_roms_to_collection behavior

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-15 06:46:12 -04:00
Spinnich
4cc0c868b7 Fix linting and formatting issues from trunk CI 2026-04-14 20:27:45 -04:00
Spinnich
2ecefa3d3f Fix race condition in collection and favorite rom membership updates
Replace full rom_ids list replacement with atomic POST/DELETE endpoints
that add or remove individual ROMs from a collection. This prevents
concurrent rapid clicks from overwriting each other (last-write-wins).

Also fix missing session.flush() in add_rom_user() and add collection
endpoint tests.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 15:08:53 -04:00
Georges-Antoine Assi
154165fadf final fixes 2026-04-12 19:26:34 -04:00
Georges-Antoine Assi
105ed84e43 feat: show TheGamesDB link on platform drawer when tgdb_id is set
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-12 19:04:51 -04:00
Georges-Antoine Assi
dbb455ece7 Merge pull request #3248 from rommapp/copilot/fix-collapsible-menu-overflow
Fix settings drawer logout button overflowing on mobile
2026-04-12 16:29:48 -04:00
Georges-Antoine Assi
62e540d60e changes from bot review 2026-04-12 15:43:14 -04:00
Georges-Antoine Assi
4928041593 manual cleanu 2026-04-12 11:04:12 -04:00
Georges-Antoine Assi
522df9d31a feat: add libretro thumbnails as an artwork source
Adds the libretro thumbnail repository as a first-class artwork source so
region-correct box art (PAL/Europe, Japan, etc.) can be matched directly
to ROM filenames, addressing rommapp/romm#3239.

Implementation follows the SGDB handler pattern (artwork-only, no game
metadata): MetadataSource enum entry, scan-time fetch wired into the
SCAN_ARTWORK_PRIORITY loop, /search/roms integration, MatchRom dialog
chip + cover selection, and a heartbeat flag.

Matching is exact case-insensitive against the directory listing first
(so a ROM named "(Europe)" lands on the (Europe) artwork), with a
JaroWinkler fuzzy fallback at 0.8 that strips parenthetical tags from
both sides. Listings are cached in Redis with a 24h TTL.

`libretro_id` is persisted on the Rom model as the SHA1 hex of the
matched libretro filename — stable across scans, distinct per region,
indexed for lookup. Migration 0077 adds the column.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 22:57:20 -04:00
copilot-swe-agent[bot]
cb6b23b21a Fix logout button overflow on mobile by conditionally applying unset-height only on desktop
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/3ff1983b-80c8-48cf-9c1f-3339b60712ff

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-11 23:24:26 +00:00
Georges-Antoine Assi
686c609b3a Merge pull request #3155 from tmgast/feature/play-session-ingest
Add play session ingest for game time tracking
2026-04-11 11:23:02 -04:00
Martin Joneš
33f785314a Add forceScale and forceAlign config properties to Ruffle player 2026-04-11 09:12:12 +02:00
Martin Joneš
12f1f450c9 Add letterbox configuration to ruffle fixing canvas overflow 2026-04-11 08:32:33 +02:00
Georges-Antoine Assi
1b23a3ebb3 changes from bot review 2026-04-08 11:17:17 -04:00
Georges-Antoine Assi
702c062499 [ROMM-3235] Improve light mode text 2026-04-08 09:22:40 -04:00
Georges-Antoine Assi
c7eaa292be add DC and PSX to DS_3DS_PLATFORMS for jewel-case aspect ratios 2026-04-08 08:33:23 -04:00
Georges-Antoine Assi
932a5f63bd manual fix 2026-04-07 21:55:13 -04:00
copilot-swe-agent[bot]
4c9b70e4b2 fix: skip login redirect on 403 when on auth-exempt routes (register, reset-password, pair)
Agent-Logs-Url: https://github.com/rommapp/romm/sessions/df124007-1c2c-41d7-bb04-fccba2482fd1

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-04-07 20:58:40 +00:00
Georges-Antoine Assi
a181fe13a5 changes from bot review 2026-04-07 09:04:13 -04:00
Georges-Antoine Assi
b2e1e094f7 some simplification 2026-04-06 21:53:49 -04:00