特定のアプリ(Skim)は、スナップショットが「アクティブ」として選択されているかどうかに関係なく、他のウィンドウの上に浮かぶスナップショットウィンドウを提供します。
set window_name to name of front window
スナップショットウィンドウがアクティブであるかどうかに関係なく、フロントウィンドウとして識別されます。
スクリプトは、アクティブウィンドウがスナップショットウィンドウであるかどうかをどのように判断できますか?
特定のアプリ(Skim)は、スナップショットが「アクティブ」として選択されているかどうかに関係なく、他のウィンドウの上に浮かぶスナップショットウィンドウを提供します。
set window_name to name of front window
スナップショットウィンドウがアクティブであるかどうかに関係なく、フロントウィンドウとして識別されます。
スクリプトは、アクティブウィンドウがスナップショットウィンドウであるかどうかをどのように判断できますか?
Skimのウィンドウのプロパティはそれを取得しませんが、それは可能Accessibility Frameworks (GUI Scripting)
です。
ユーザー補助フレームワークが無効になっている場合は、[ユニバーサルアクセスシステム環境設定]ペインの[支援機器へのアクセスを有効にする]チェックボックスをクリックして有効にします。
set snapshotIsActive to my checkSkimFrontWindow()
on checkSkimFrontWindow() -- this handler return true or false
tell application "System Events"
tell process "Skim"
set frontmost to true
delay 0.1
tell window 1 to subrole is "AXDialog" and value of attribute "AXMain" is true
end tell
end tell
end checkSkimFrontWindow