Skip to content

Fixes page: add Recent sub-tab with newly published fixes feed - #20

Open
deadpoolook wants to merge 1 commit into
madoiscool:mainfrom
deadpoolook:feat/fixes-recent-tab
Open

Fixes page: add Recent sub-tab with newly published fixes feed#20
deadpoolook wants to merge 1 commit into
madoiscool:mainfrom
deadpoolook:feat/fixes-recent-tab

Conversation

@deadpoolook

Copy link
Copy Markdown

Summary

Adds a Recent sub-tab to the Fixes page, showing the most recently published Denuvo fixes across all games (a "what's new" feed), alongside the existing Games grid.

The feed reads the public denuvo_fixes table directly from PostgREST (anon key, same pattern as GetStandardUsageAsync reading user_downloads), embedding each fix's game name/header image and tags in a single bounded query (order=created_at.desc&limit=25). There's no /api/denuvo "recent" endpoint, so no backend change is needed.

What's included

  • FixesView.xaml: new Games | Recent tab bar; the recent feed panel (loading ring, empty/error state, card list with cover, game name, "New" badge for fixes published within the last 3 days, description); search + tag pills + pager are gated to Games mode only.
  • FixesViewModel.cs: FixesPage enum, ShowGames/ShowRecent/OpenRecentFix commands, RecentFixes collection + RecentFixVm, LoadRecentAsync (warm-started on page load, reloaded on Refresh), loading/empty/error state.
  • LuaToolsApiClient.cs: GetRecentDenuvoFixesAsync(limit, ct) — bounded anon PostgREST read with embedded joins; returns null on failure.
  • FixModels.cs: DenuvoRecentFix, DenuvoRecentGame, DenuvoRecentFixTag.
  • Localization: 5 new keys (Fixes_Tab_Games, Fixes_Tab_Recent, Fixes_New, Fixes_Recent_Empty, Fixes_Recent_Err_Load) added to Strings.resx/Strings.Designer.cs and translated in all 29 language files. Since every key is now translated, PENDING_TRANSLATION in check-i18n.py is left empty (unchanged from upstream).

Verification

  • python scripts/check-i18n.pyi18n check OK: 29 language files, 465 keys each, XML valid, placeholders consistent.
  • dotnet build LuaToolsGui.sln → 0 warnings, 0 errors.
  • dotnet test → 207/207 passing.
  • Manually verified the Recent tab loads real data from db.lua.tools and opens a game's fix view on click.

@madoiscool

Copy link
Copy Markdown
Owner

Can you add some screenshots of what this looks like please

@deadpoolook

Copy link
Copy Markdown
Author
atualizaçao1 atualizaçao 2

@deadpoolook

Copy link
Copy Markdown
Author

Você poderia adicionar algumas capturas de tela de como isso se parece, por favor?

AE COMO FICOU

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants