触发全局快捷方式时,哪个应用程序具有焦点

时间:2015-05-25 22:02:25

标签: desktop-shortcut electron

我使用全局快捷方式弹出对话框。 但我想根据触发快捷方式时具有焦点的应用程序来填充对话框。

但我无法找到办法。我阅读了扩展代码here 但很难知道如何修改代码,以及如何重新编译电子。

如果有人有指针,那将非常感激:)

2 个答案:

答案 0 :(得分:0)

我无法找到方法知道哪个应用程序之前有焦点,但我能够隐藏我的应用并将焦点返回到上一个应用,模拟点击“隐藏”。视图菜单中的选项:

./gradlew clean test

or

./gradlew clean build

我希望它有所帮助。

答案 1 :(得分:0)

我自己找到了一个答案,它看起来是最前面的应用程序(至少在OSX上)它仍然是在调用之前具有焦点的应用程序。

这是我的ClojureScript代码,用于查找应用信息

(defn- get-current-app-info-osx
  "Return info about the current frontmost application on OSX"
  []
  (let [remote  (js/require "remote")
        nodobjc (js/require "nodobjc")]
    (.framework nodobjc "AppKit")
    (let [workspace (.NSWorkspace nodobjc "sharedWorkspace")
      app       (workspace "frontmostApplication")
      app-name  (str (app "localizedName"))
      app-id    (str (app "bundleIdentifier"))]
  {:name app-name
   :id   app-id})))