← Back to team overview

sikuli-driver team mailing list archive

[Question #277073]: How to prevent user input or get the name of the active window

 

New question #277073 on Sikuli:
https://answers.launchpad.net/sikuli/+question/277073

I'm attempting to run a script that only activates at certain intervals (It monitors a window), while also trying to prevent the user from inputting anything while the script does what it does.

Here's an idea of what I'm trying to accomplish:
The user is doing something on one screen, such as on google chrome, or writing a document, etc.
On a second screen there's a timed process running (Input can only be added after X interval).
To minimize the effort needed for the user to input the data, I've made the script automatically go to the prompt the user needs to when it's ready.
However, this doesn't prevent the user from inputting anything. If they're dragging the mouse while sikuli is trying to, they overpower it (Ruining the entire purpose of it). The prompt is also specific on what you can enter, so if a user manages to accidentally hit enter early or etc, it will also void the input.
If I could momentarily block user input (No mouse input, keyboard input limited to stopping the script or like an escape key), this would prevent the user from overriding the script.

However, if there is no way to block the users input, is there a way I could get the name of the active window?
Right now, I send a prompt on screen that warns the user (The script doesn't go till they hit ok), but I only want this to fire if the window isn't the one that the script needs. (Basically: if activeWindow("Application") is False: ).
As there's no reason I should wait for the user to say it's okay to take over, if they're already waiting.

I tried to look around for an answer on this and the closest I found was a post where someone wrote a code that would delay the script for 15 seconds while the user is using the mouse.

Sorry for the rambling.

-- 
You received this question notification because your team Sikuli Drivers
is an answer contact for Sikuli.