Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hyprland下窗口失去焦点不能自动关闭 & 文档中关于Wayland 支持部分有点错误 #966

Open
Pan-O opened this issue Oct 29, 2024 · 1 comment

Comments

@Pan-O
Copy link

Pan-O commented Oct 29, 2024

问题描述

在hyprland下,使用翻译窗口并不能实现窗口失去焦点时自动关闭,但是ocr识别窗口可以,我查到之前有这个 issue
我看了一下源代码,发现 src/window/Recognize /index.jsx 里面的这个部分代码已经被删去了

void listen('tauri://move', () => {
    info('Move');
    if (blurTimeout) {
        info('Cancel Close');
        clearTimeout(blurTimeout);
    }
});

但是在 src/window/Translate/index.jsx 中,这部分代码仍然存在

我自己删去后本地编译了一下是可以正常使用的
这两个窗口在这部分的代码应该是差不多的吧,是漏处理了吗


另外就是文档中关于Wayland 支持 部分错误

划词翻译窗口跟随鼠标位置

由于目前 pot 在 Wayland 下还无法获取到正确的鼠标坐标,所以内部的实现无法工作。 对于某些桌面环境/窗口管理器,可以通过设置窗口规则来实现窗口跟随鼠标位置,这里以 Hyprland 为例:

windowrulev2 = float, class:(pot), title:(Translator|OCR|PopClip|Screenshot Translate) # Translation window floating
windowrulev2 = move cursor 0 0, class:(pot), title:(Translator|PopClip|Screenshot Translate) # Translation window follows the mouse position.

这部分代码实际title部分好像不大行
我用 hyprctl 查到实际 pot 的翻译窗口还有 ocr 识别窗口的 title 分别是 TranslateRecognize

因此我用了这个规则,就能识别到了

windowrulev2 = float, class:(pot),title:(Translate|Recognize) # Translation window floating
windowrulev2 = move cursor 0 0, class:(pot),title:(Translate|Recognize)  # Translation window follows the mouse position.

操作系统
Arch linux

窗口系统(Linux Only)
Hyprland

软件版本

pot: 3.0.6

补充信息

No response

@YogiLiu
Copy link

YogiLiu commented Dec 9, 2024

窗口失去焦点不能自动关闭

KDE Plasma 6 Wayland 下有同样的问题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants