2026-07-29 13:54:34 +02:00
|
|
|
const { contextBridge, ipcRenderer } = require("electron");
|
|
|
|
|
contextBridge.exposeInMainWorld("cfg", {
|
|
|
|
|
get: () => ipcRenderer.invoke("settings-get"),
|
|
|
|
|
set: (key, value) => ipcRenderer.invoke("settings-set", key, value),
|
2026-07-30 19:29:32 +02:00
|
|
|
engines: () => ipcRenderer.invoke("search-engines"),
|
2026-07-30 20:58:45 +02:00
|
|
|
addEngine: (eng) => ipcRenderer.invoke("add-engine", eng),
|
|
|
|
|
removeEngine: (id) => ipcRenderer.invoke("remove-engine", id),
|
2026-07-30 22:55:52 +02:00
|
|
|
setEngineEnabled: (id, on) => ipcRenderer.invoke("set-engine-enabled", id, on),
|
2026-07-30 23:26:00 +02:00
|
|
|
setEngineOrder: (ids) => ipcRenderer.invoke("set-engine-order", ids),
|
2026-08-06 01:41:31 +02:00
|
|
|
removeFromList: (id) => ipcRenderer.invoke("remove-from-list", id),
|
|
|
|
|
// Main asks settings to jump to a specific sidebar section (e.g. from the
|
|
|
|
|
// engine picker's "Search settings…" click). Emits the section id string.
|
|
|
|
|
onFocusSection: (cb) => ipcRenderer.on("focus-section", (_e, section) => cb(section)),
|
2026-08-02 11:39:00 +02:00
|
|
|
// Collision-mode: BCNR/ICANN policy + per-name/per-TLD overrides
|
|
|
|
|
collisionState: () => ipcRenderer.invoke("collision-state"),
|
|
|
|
|
setCollisionPolicy: (p) => ipcRenderer.invoke("collision-set-policy", p),
|
|
|
|
|
resetCollisions: () => ipcRenderer.invoke("collision-reset"),
|
2026-07-29 13:54:34 +02:00
|
|
|
});
|