1
0
mirror of https://github.com/bitwarden/browser synced 2026-01-03 09:03:32 +00:00

[BEEEP] [PM-565] Implement clipboard logic in rust (#4516)

Implement the Desktop clipboard logic natively using rust. This uses the arboard crate for clipboard functionality.

This change consists of 3 portions:
* Rust component.
* Updating renderer to call main using electron ipc.
* Update main to listen to renderer ipc and forward calls to the native clipboard module.
This commit is contained in:
Oscar Hinton
2023-10-02 18:50:57 +02:00
committed by GitHub
parent 6aed74d241
commit 30feb60645
14 changed files with 485 additions and 240 deletions

View File

@@ -0,0 +1,17 @@
import { ipcMain } from "electron";
import { clipboards } from "@bitwarden/desktop-native";
import { ClipboardWriteMessage } from "../types/clipboard";
export class ClipboardMain {
init() {
ipcMain.handle("clipboard.read", async (_event: any, _message: any) => {
return await clipboards.read();
});
ipcMain.handle("clipboard.write", async (_event: any, message: ClipboardWriteMessage) => {
return await clipboards.write(message.text, message.password ?? false);
});
}
}