mirror of
https://github.com/lhns/steam-frame-nix.git
synced 2026-10-06 06:00:22 +02:00
Clearer file names and layout; docs/development.md
- steam-keyboard-patch.nix -> vr-keyboard-extra-keys.nix (option
keyboard.vr.extraKeys), helper.mjs -> xdotool-helper.mjs;
homeManagerModules.steam-keyboard-patch stays as an alias.
- vr-keyboard: panel.js/unpatch-panel.js/relay.mjs ->
suggestions-panel/{patch,unpatch}.js + relay.mjs; decoder.js ->
swipe-decoder.js; build.nix split into dictionary.nix and check.nix.
- modules/lib -> modules/steam-ui-patches/lib (the UI patch library).
- docs/development.md: repository layout (what runs where), runtime names.
Patch names, user services and state files are unchanged.
This commit is contained in:
1 parent
b3d93e8526
commit
5d15902ba1
40 files changed
+330
-161
No files matched your search
@@ -1,8 +1,8 @@
|
||||
// Gestures and suggestions for Steam's VR keyboard (vr-keyboard.nix),
|
||||
// injected into Steam's SharedJSContext (8080). The keyboard is a popup of
|
||||
// that context ("SteamVR - Keyboard"); everything works on its document.
|
||||
// mkPatch convention plus four more arguments: decoder.js, textmodel.js,
|
||||
// corrector.js and the dictionary text ("word<TAB>zipf*10\n...").
|
||||
// mkPatch convention plus four more arguments: swipe-decoder.js,
|
||||
// textmodel.js, corrector.js and the dictionary text ("word<TAB>zipf*10\n...").
|
||||
//
|
||||
// - Swipe: the laser arrives as touch events; Steam types the key a touch
|
||||
// started on at release. Once a press leaves its first key we drop that
|
||||
@@ -20,9 +20,9 @@
|
||||
// replace text only while the model proves the characters they replace
|
||||
// intact.
|
||||
// - Strip: in the page over the number row ("inside") or as a SteamVR panel
|
||||
// above/below the keyboard ("above"/"below", panel.js): state out via the
|
||||
// CDP binding __sfuiStripOut, picks back via
|
||||
// __sfuiSwipe.remote.pick(seq, index) (relay.mjs).
|
||||
// above/below the keyboard ("above"/"below", suggestions-panel/patch.js):
|
||||
// state out via the CDP binding __sfuiStripOut, picks back via
|
||||
// __sfuiSwipe.remote.pick(seq, index) (suggestions-panel/relay.mjs).
|
||||
// All Steam internals are checked first (sigs, instance members); if one is
|
||||
// missing the keyboard stays stock. Only passive listeners; never blocks
|
||||
// Steam's events. Debugging: __sfuiSwipeLog, __sfuiSwipePaths
|
||||
@@ -87,7 +87,7 @@
|
||||
const own = (o, k) => Object.prototype.hasOwnProperty.call(o, k);
|
||||
|
||||
// ---- trail and in-page strip -------------------------------------------------
|
||||
const inPage = O.position === 'inside'; // else a SteamVR panel (panel.js)
|
||||
const inPage = O.position === 'inside'; // else a SteamVR panel (suggestions-panel/)
|
||||
const style = doc.createElement('style');
|
||||
style.textContent = `
|
||||
#sfui-swipe-trail { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; pointer-events: none; z-index: 10000; }
|
||||
|
||||
Reference in new issue
Block a user