IsThereAnyDeal / AugmentedSteam

Augments your Steam Experience
https://augmentedsteam.com
GNU General Public License v3.0
1.41k stars 86 forks source link

[FEATURE REQUEST] Support/fix store features on Steamdeck version of store pages #1483

Open FinalDoom opened 2 years ago

FinalDoom commented 2 years ago

If you load the steam store with your user agent overridden to Valve Steam Gamepad, AS doesn't work properly. I'm not sure just yet, as the relevant classes are the same, such as .game_area_purchase_game_wrapper.

Current Behavior (if any)

Silent failure, no ITAD links appended.

Desired Behavior

Works as on normal store pages.

Motivation / Use Case for Changing the Behavior

Looking at being able to inject on steam deck via plugin, this is one of many related hurdles to figure out.

candela97 commented 2 years ago

Steam has a special UI when it detects it's running on a Deck. After a bit of tweaking, most of our features "work", but will need to be restyled/repositioned due to design differences. We're currently evaluating if we should make a separate extension for the Deck, and which features should be ported over. Which features would you like to have the most?

FinalDoom commented 2 years ago

Personally I'm only concerned with ITAD price links. I was working on a nice wrapper for the Decky plugin system, nearly working but have been busy the last few weeks. Either way, through an existing plugin system or a separate injection point, the library will have to be added through script tags added dynamically, most simply a rollup or other single file pack. Chrome Dev Tools Page/addScriptToEvaluateOnNewDocument seems like the best way to do that given execution environment. When I have some more time free I should be able to get the Decky stuff working, and can look at this AS issue.

Were you able to get anything on the UI @candela97 ? That's the area I'd have the most difficulty with since it's a new codebase. Styling should be easy.

candela97 commented 2 years ago

The reason AS doesn't work is because of this check: https://github.com/IsThereAnyDeal/AugmentedSteam/blob/10db27450a197c9aaa5525a06b89c89268961f62/src/js/Content/Features/Page.js#L68 We insert our menu, progress indicator, etc. into the global header, and pages without it are likely not suitable to augment. In order to support the Deck, we'll need to disable features that don't make sense or don't work properly, and redesign our Options page to support smaller screen size and touch controls. This may take a while because we're also planning a major refactor to use a frontend framework and migrating to MV3.