Как активировать конкретное окно Safari с помощью rb-appscript? - PullRequest
0 голосов
/ 13 июля 2011

Я не могу получить rb-appscript для активации определенного окна Safari. Всегда активируется последнее активное окно.

(в irb, если rb-appscript уже установлен)

require 'appscript'
include Appscript

safari = app 'Safari'
safari.open_location "http://www.google.com"
safari.open_location "http://www.apple.com"
safari.open_location "http://www.bing.com"
safari.documents.URL.get
=> ["http://www.bing.com/", "http://www.apple.com/", "http://www.google.com.ph/", "http://www.apple.com/startpage/"]
safari.documents[1].URL.get
 => "http://www.bing.com/"
safari.documents[3].URL.get
 => "http://www.google.com.ph/"

Теперь вот волосатая часть. Активация документов [3] должна активировать окно Google, но это не то, что происходит.

safari.documents[3].activate
 => nil (activates the bing window instead of the google window)
safari.windows[3].activate
 => nil (activates the bing window instead of the google window)

1 Ответ

3 голосов
/ 13 июля 2011

Вы не можете activate windows:

app("Safari").windows[its.name.eq("Google")].index.set(1)

tell application "Safari" to set index of (windows where name is "Google") to 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...