作者:手机用户2602933165 | 来源:互联网 | 2023-10-11 10:57
This comes up when you have an application that is in a beach-ball state (easy to test by attaching a debugger to any application with Xcode and hitting pause). Running application:activate() on that app will not return, causing Hydra to become stalled for a long period (from 5 to 30 seconds).
To reproduce, use Xcode to attach and pause e.g. Firefox and run the following in the REPL:
1 2 3 4 5 6 7
| lua
apps = application.runningapplications()
app = fnutils.find(apps, function(a) return a:title() == "Firefox" end)
app:title() --returns Firefox, no problem
app:hide() --does nothing but returns no problem
app:unhide() --does nothing but returns no problem
app:activate() --Hydra is now beach-ball for quite a while |
While there's no expectation that Hydra can focus an unresponsive app, ideally it could still be usable for actions on other apps rather than stalling. A side-effect of Hydra stalling is that hotkey actions get queued, so when Hydra does return to responsive state, a bunch of queued actions may happen all at once.
该提问来源于开源项目:mjolnirapp/mjolnir
That sounds like something outside of our control.