tisfeng / Easydict

一个简洁优雅的词典翻译 macOS App。开箱即用,支持离线 OCR 识别,支持有道词典,🍎 苹果系统词典,🍎 苹果系统翻译,OpenAI,Gemini,DeepL,Google,Bing,腾讯,百度,阿里,小牛,彩云和火山翻译。A concise and elegant Dictionary and Translator macOS App for looking up words and translating text.
GNU General Public License v3.0
6.4k stars 325 forks source link

dev: 调试模式下,每次应用启动,迷你窗口的位置都被重置了 #504

Closed tisfeng closed 2 months ago

tisfeng commented 2 months ago

很奇怪,调试模式下,每次应用启动会调用 windowDidResize,导致迷你窗口的位置都被重置了,坐标都会是一个奇怪的值,例如 {55, 28}

image
tisfeng commented 2 months ago

调试发现,好像是这个 PR 导致 #500 ,切到前一个提交 06929ffe 就没有这个问题 😑

tisfeng commented 2 months ago

@AkaShark 有空看一下

AkaShark commented 2 months ago

emm.. Let me check #500 code, but seems I don't change the window location😭

AkaShark commented 2 months ago

@AkaShark 有空看一下

okay

tisfeng commented 2 months ago

明天可能要发新版本,这个你看能不能先解决。

AkaShark commented 2 months ago

明天可能要发新版本,这个你看能不能先解决。

okay 今天上午看下了,是由于https://github.com/tisfeng/Easydict/blob/7d7c8d4e026267ada2bf03749027a9951626413b/Easydict/Swift/Feature/Configuration/Configuration.swift#L406 这个地方会在初始化的时候触发一次,所以在启动的时候会调用下windowDidResize

tisfeng commented 2 months ago

你修改一下 updateButtonsToolTip 方法,不要调用 updateConstraints,改成销毁这些动作按钮,然后重新创建,updateConstraints 方法也需要作出相应的修改。

tisfeng commented 2 months ago

想了想,好像也没必要,我们直接更新一下按钮的 toolTip 应该就可以 🥲

你试一下。

AkaShark commented 2 months ago

okay 稍等我试下的

AkaShark commented 2 months ago

https://github.com/tisfeng/Easydict/pull/506 看了下closeFloatingWindowIfNotPinnedOrMain这个回调在在启动并且监听到后也会去初始化window,然后windowDidResize就会收到通知。

tisfeng commented 2 months ago

Fixed.