MCPcopy Index your code
hub / github.com/ZToolsCenter/ZTools / setupIPC

Method setupIPC

src/main/api/shared/clipboard.ts:14–134  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

12 }
13
14 private setupIPC(): void {
15 // 获取剪贴板历史
16 ipcMain.handle(
17 'clipboard:get-history',
18 async (_event, page: number, pageSize: number, filter?: string) => {
19 try {
20 return await clipboardManager.getHistory(page, pageSize, filter)
21 } catch (error) {
22 console.error('[Clipboard] 获取剪贴板历史失败:', error)
23 return { items: [], total: 0, page, pageSize }
24 }
25 }
26 )
27
28 // 搜索剪贴板
29 ipcMain.handle('clipboard:search', async (_event, keyword: string) => {
30 try {
31 return await clipboardManager.search(keyword)
32 } catch (error) {
33 console.error('[Clipboard] 搜索剪贴板失败:', error)
34 return []
35 }
36 })
37
38 // 删除剪贴板记录
39 ipcMain.handle('clipboard:delete', async (_event, id: string) => {
40 try {
41 const result = await clipboardManager.deleteItem(id)
42 return { success: result }
43 } catch (error) {
44 console.error('[Clipboard] 删除剪贴板记录失败:', error)
45 return { success: false }
46 }
47 })
48
49 // 清空剪贴板历史
50 ipcMain.handle('clipboard:clear', async (_event, type?: string) => {
51 try {
52 const count = await clipboardManager.clear(type as any)
53 return { success: true, count }
54 } catch (error) {
55 console.error('[Clipboard] 清空剪贴板历史失败:', error)
56 return { success: false, count: 0 }
57 }
58 })
59
60 // 获取剪贴板状态
61 ipcMain.handle('clipboard:get-status', async () => {
62 try {
63 return await clipboardManager.getStatus()
64 } catch (error) {
65 console.error('[Clipboard] 获取剪贴板状态失败:', error)
66 return {
67 isRunning: false,
68 itemCount: 0,
69 imageCount: 0,
70 imageStorageSize: 0
71 }

Callers 1

initMethod · 0.95

Calls 12

getHistoryMethod · 0.80
searchMethod · 0.80
deleteItemMethod · 0.80
clearMethod · 0.80
writeToClipboardMethod · 0.80
simulatePasteMethod · 0.80
writeContentMethod · 0.80
getStatusMethod · 0.45
hideWindowMethod · 0.45
activateAppMethod · 0.45
updateConfigMethod · 0.45

Tested by

no test coverage detected