Skip to content
Source
Sign inSign up

preview-pick-preload.ts

24 lines779 Bytes

1import { ipcRenderer } from "electron";
2​
3import {
4 PASSKEY_BRIDGE_ARGUMENT,
5 PRIMARY_PASTE_DISABLED_ARGUMENT,
6} from "./preview/GuestProtocol.ts";
7import { installPasskeyBridge } from "./preview/PasskeyBridge.ts";
8import "./preview/PickPreload.ts";
9​
10// Electron hands webPreferences.additionalArguments to sandboxed preloads in process.argv.
11if (process.argv.includes(PASSKEY_BRIDGE_ARGUMENT)) {
12 installPasskeyBridge((channel, publicKey) => ipcRenderer.invoke(channel, publicKey));
14​
15if (process.argv.includes(PRIMARY_PASTE_DISABLED_ARGUMENT)) {
16 // Same guard as the app preload: Blink pastes PRIMARY on an uncancelled middle mouseup.
17 window.addEventListener(
18 "mouseup",
19 (event) => {
20 if (event.button === 1) event.preventDefault();
21 },
22 true,
23 );