From f08ef19fbe4c02eba2609d1372e0752414ee42dd Mon Sep 17 00:00:00 2001 From: yj <1336058017@qq.com> Date: Wed, 16 Oct 2024 16:44:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.js | 13 +++++++- preload.js | 4 +++ .../Meeting/ChatSmallWindow/index.module.scss | 8 +++-- src/page/Meeting/ChatSmallWindow/index.tsx | 5 ++- .../Meeting/CurrentSpeakUserWindow/index.tsx | 2 +- .../ShareScreenWindow/index.module.scss | 18 ++++++++--- src/page/Meeting/ShareScreenWindow/index.tsx | 31 ++++++++++++------- src/page/Meeting/index.module.scss | 7 +++-- src/page/Meeting/index.tsx | 6 ++-- src/render.d.ts | 1 + 10 files changed, 67 insertions(+), 28 deletions(-) diff --git a/main.js b/main.js index 85fe4a4..832fda1 100644 --- a/main.js +++ b/main.js @@ -320,7 +320,7 @@ app.on('ready', () => { childWindow[config.key] = child child.once('ready-to-show', () => { childWindow[config.key].show() - childWindow[config.key].setAlwaysOnTop(true) + childWindow[config.key].setAlwaysOnTop(true, 'pop-up-menu') windowOperation(config) }) child.webContents.on('before-input-event', (event, input) => { @@ -346,6 +346,17 @@ app.on('ready', () => { childWindow[key] = "" } }); + // 设置子窗口 + ipcMain.handle('setChildWindow', (event, config) => { + const child = childWindow[config.key]; + const display = screen.getDisplayMatching({ ...child.getBounds() }); + const { width, height } = display.size + let x, y; + if (config.key === 'shareScreenWindow') { + x = Math.round((width - config.width) / 2); + childWindow[config.key].setBounds({ width: config.width }) + } + }); // 隐藏主窗口 ipcMain.handle('mainWindowHide', () => { mainWindowHide() diff --git a/preload.js b/preload.js index 73210bf..b68956c 100644 --- a/preload.js +++ b/preload.js @@ -81,6 +81,10 @@ window.electron = { closeChildWindow: (key) => { ipcRenderer.invoke('closeChildWindow', key) }, + // 设置子窗口 + setChildWindow: (config) => { + ipcRenderer.invoke('setChildWindow', config) + }, // 隐藏主窗口 mainWindowHide: () => { ipcRenderer.invoke('mainWindowHide') diff --git a/src/page/Meeting/ChatSmallWindow/index.module.scss b/src/page/Meeting/ChatSmallWindow/index.module.scss index c5626e8..369294c 100644 --- a/src/page/Meeting/ChatSmallWindow/index.module.scss +++ b/src/page/Meeting/ChatSmallWindow/index.module.scss @@ -20,8 +20,7 @@ align-items: flex-start; >div { - background-color: #5574f25d; - color: black; + background-color: #1e232baf; padding: 4px; box-sizing: border-box; border-radius: 0 15px 15px 15px; @@ -31,6 +30,11 @@ >span:nth-child(1) { white-space: nowrap; + color: #ff970f; + } + + >span:nth-child(2) { + color: #fff; } } } diff --git a/src/page/Meeting/ChatSmallWindow/index.tsx b/src/page/Meeting/ChatSmallWindow/index.tsx index 1e99b01..6370a9f 100644 --- a/src/page/Meeting/ChatSmallWindow/index.tsx +++ b/src/page/Meeting/ChatSmallWindow/index.tsx @@ -30,10 +30,9 @@ const ChatSmallWindow: React.FC = () => {