Problem
Oculo cannot type into Reddit's new editor (Shreddit, built on Lexical). All 5 strategies fail:
- CDP Input.dispatchKeyEvent — debugger attaches to renderer webContents, not the webview guest
- InputEvent dispatch —
isTrusted: false, Lexical rejects
- insertText (Electron IME) — Lexical ignores IME events
- execCommand('insertText') — Lexical doesn't use execCommand
- sendInputEvent char-by-char — Electron events not reaching Lexical's event listeners
Root Cause
Reddit's Lexical editor validates event.isTrusted and rejects all programmatic input. The CDP approach (which generates trusted events) fails because the debugger attaches to the wrong webContents — it needs to attach to the <webview> tag's guest webContents, not the renderer's.
Fix Required
- In the IPC handler for
view:cdp-type, get the webview's guest webContents ID (not the renderer's)
- The renderer should pass the webview's
getWebContentsId() value, not the BrowserView/WebContentsView ID
- Route
debugger.attach() to the guest webContents
Affected Sites
- Reddit (new.reddit.com) — Shreddit/Lexical editor
- Any site using Lexical, ProseMirror, or editors that check
isTrusted
- Twitter/X works fine (uses standard contenteditable without isTrusted checks)
Problem
Oculo cannot type into Reddit's new editor (Shreddit, built on Lexical). All 5 strategies fail:
isTrusted: false, Lexical rejectsRoot Cause
Reddit's Lexical editor validates
event.isTrustedand rejects all programmatic input. The CDP approach (which generates trusted events) fails because the debugger attaches to the wrong webContents — it needs to attach to the<webview>tag's guest webContents, not the renderer's.Fix Required
view:cdp-type, get the webview's guest webContents ID (not the renderer's)getWebContentsId()value, not the BrowserView/WebContentsView IDdebugger.attach()to the guest webContentsAffected Sites
isTrusted