Skip to content

Persist per-game store selection across app restarts#144

Open
Jayian1890 wants to merge 24 commits intoOpenCloudGaming:devfrom
Jayian1890:feat/persist-variant-selection
Open

Persist per-game store selection across app restarts#144
Jayian1890 wants to merge 24 commits intoOpenCloudGaming:devfrom
Jayian1890:feat/persist-variant-selection

Conversation

@Jayian1890
Copy link

Persist per-game store/variant selection across app restarts.

What changed:

  • Save selected variant map to localStorage under key opennow.variantByGameId.
  • Load persisted selections on app init before applying defaults.

Files changed:

  • opennow-stable/src/renderer/src/App.tsx

Notes:

  • This change only affects persistence of the selected store/variant per game.
  • TypeScript typecheck in the workspace currently reports unrelated errors in gfn/webrtcClient.ts.

- Introduced `requestKeyframe` method in GfnSignalingClient to send keyframe requests with reason, backlog frames, and attempt count.
- Added IPC handler for keyframe requests in the main process.
- Updated preload API to include `requestKeyframe` method.
- Enhanced StreamView component to manage sidebar tabs for preferences and shortcuts.
- Implemented decoder pressure detection and recovery mechanisms in GfnWebRtcClient, including bitrate reduction and keyframe requests.
- Updated diagnostics to track decoder pressure state and recovery attempts.
- Styled sidebar tabs for better user experience.
- Introduced new settings for recording shortcuts in settings.ts and App.tsx.
- Implemented recording API methods in preload/index.ts for starting, stopping, and managing recordings.
- Enhanced StreamView component to handle recording state, display recording controls, and show recordings in a sidebar.
- Added CSS styles for recording indicators and recording cards in styles.css.
- Updated IPC channels in ipc.ts to support recording operations.
- Defined new types for recording requests and entries in gfn.ts.
…ming

Remove exclusive input mode switching that prevented concurrent use of
different input methods. Previously, when a controller was active, mouse
and keyboard input would be suppressed, and vice versa.

Changes:
- Remove activeInputMode property and mode switching logic
- Remove input mode checks from mouse/keyboard event handlers
- Modify gamepad keepalive to work continuously instead of mode-dependent
- Allow all input types (controller, mouse, keyboard) to work simultaneously

This enables users to use controllers for gameplay while still having
access to mouse/keyboard for UI navigation and other inputs.
feat(streamview-sidebar): add streamview sidebar
feat(stream-recording): add stream recording support
fix(input): simultaneous input handling fix
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.

1 participant