aboutsummaryrefslogtreecommitdiffstats
path: root/games/Games.qml
AgeCommit message (Collapse)AuthorFilesLines
12 hoursgames: search the Steam store from the launcherDanilo M.1-6/+83
Down switches the strip and preview from the library to store results, searched as you type with a 350ms debounce through the store's keyless api/storesearch endpoint, using QML's own XMLHttpRequest rather than a process. Results already in the library read Owned or Installed in green, the rest their price; Enter opens steam://store/<appid> in the client, Up or Escape returns to the library with the query kept, so a name that matches nothing locally is one keypress from the store. The endpoint answers {"total":0} for every term when no cc is given, despite looking like it geolocates, and the locale here is en_US, so the country is fixed to Italy. Store art comes from Steam's CDN; newer apps keep theirs under hashed paths that 404, so the preview layers the search's capsule under the hero and the tile shows the initial until its cover is actually ready. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 hoursgames: the Steam library as an endless strip with a large previewDanilo M.1-0/+276
An overlay on DP-1: a looping PathView of slanted tiles along the bottom, the centred one shown large above it in Steam's hero art with its title. Installed games and non-Steam shortcuts come first, by last played; owned games that are not installed follow, framed in peach, and Enter installs them. Launches go through steam -silent so the Steam window stays down. games.py reads appmanifests, the binary shortcuts.vdf and Steam's library cache on every opening; owned games come from the Web API through a cache refreshed in the background. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>