Question #142707 on Sikuli changed:
https://answers.launchpad.net/sikuli/+question/142707

Summary changed to:
[Java] Sikuli X: WebDriver/Firefox: Hang in app.focus() if used before new 
Screen() - workaround

Description changed to:
****** workaround
use "Screen scr = new Screen()" before touching any other Sikuli features
--------------------------------------------

For understanding, here is my use case...  I have running Firefox.app
via Selenium 2.0/WebDriver (FirefoxDriver really) and there is a
javascript confirmation popup that WebDriver is not handling correctly.
So I create a Sikuli Screen object and click the <OK> button with
Sikuli.  Works great!  I'm really stoked that I can drop into Sikuli
whenever I like from my Java automation framework.

Now here's the issue... I have to call screen.click("ok_button.png")
twice to get to the <OK> button since Firefox.app is not the active
application when the test automation invokes it.  So a single
screen.click("ok_button.png") simply brings Firefox.app into focus.
Then a 2nd screen.click("ok_button.png") is required to click the <OK>
button.  So to work around that issue, I created a new
App("Firefox.app") and then called app.focus() just before the
screen.click("ok_button.png").  Now the test hangs and in the output,
the last few lines are:

java.library.tmpdir: /Applications/Sikuli-IDE.app/Contents/Frameworks
Mac OS X utilities loaded.
[log] App.focus Firefox.app(0) #0
[log] openApp: "Firefox.app"

So it seems that a called to app.focus() is causing the hang.  Here is
the code that hangs:

        app = new App("Firefox.app");
        app.focus();
        
        Screen s = new Screen();
        s.click("ok_button.png", 0);

The test runs great when I comment out these 2 lines, but then of course
I need to call click twice:


        // app = new App("Firefox.app");
        // app.focus();
        
        Screen s = new Screen();
        s.click("ok_button.png", 0);
        s.click("ok_button.png", 0);

So I'm not sure what's going on.  Any suggestions?

-- 
You received this question notification because you are a member of
Sikuli Drivers, which is an answer contact for Sikuli.

_______________________________________________
Mailing list: https://launchpad.net/~sikuli-driver
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~sikuli-driver
More help   : https://help.launchpad.net/ListHelp

Reply via email to