sikuli-driver team mailing list archive
-
sikuli-driver team
-
Mailing list archive
-
Message #50465
[Bug 1815299] Re: [1.1.4] Region().highlight() doesn't accept values lower than 1.0 --- fixed 2019-02-09 build #192
** Summary changed:
- [1.1.4] Region().highlight() doesn't accept values lower than 1.0
+ [1.1.4] Region().highlight() doesn't accept values lower than 1.0 --- fixed 2019-02-09 build #192
** Description changed:
+ ************************ BE AWARE
+ see: https://sikulix-2014.readthedocs.io/en/latest/region.html#Region.highlight
+ --- minimum highlight time is 100 msecs
+ --- after closing a highlight, we wait at least 300 msecs to give the GUI some time for the next actions
+ --- for highlight times > 500 msecs the wait-after-close-time is included in the highlight timing, below, it adds on.
+
+ --------------------------------------------------------------------------
+
Script:
=====
import os, sys, time
sys.path.append(os.path.dirname(os.path.realpath(__file__)) + '/sikulixapi.jar')
from org.sikuli.script import App
from org.sikuli.script import Screen
from org.sikuli.basics import Settings
from org.sikuli.script import Mouse
from org.sikuli.script import Location
class Sikuli:
- def __init__(self):
- Mouse.setMouseMovedAction(0) # 0 - Disable User Mouse Interaction
- Settings.MoveMouseDelay = 0.1 # Doesn't work if Settings.setShowActions(False) is executed afterwards
- # Settings.Highlight = False # True - Fires two Times per Action
- # Settings.setShowActions(False) # False - does disable the Settings.MoveMouseDelay Setting
- # Mouse.setMouseMovedHighlight(True) # Doesn't show any Effect
- Settings.MinSimilarity = 0.95
- Settings.DebugLogs = False
- self.screen = Screen()
- self.highlight = True
- self.mouse_move_away_method = 'Offset' # Origin, Offset
+ def __init__(self):
+ Mouse.setMouseMovedAction(0) # 0 - Disable User Mouse Interaction
+ Settings.MoveMouseDelay = 0.1 # Doesn't work if Settings.setShowActions(False) is executed afterwards
+ # Settings.Highlight = False # True - Fires two Times per Action
+ # Settings.setShowActions(False) # False - does disable the Settings.MoveMouseDelay Setting
+ # Mouse.setMouseMovedHighlight(True) # Doesn't show any Effect
+ Settings.MinSimilarity = 0.95
+ Settings.DebugLogs = False
+ self.screen = Screen()
+ self.highlight = True
+ self.mouse_move_away_method = 'Offset' # Origin, Offset
- def app(self, app):
- try:
- self.app = App(app)
- except:
- pass
- finally:
- self.app = App(app)
+ def app(self, app):
+ try:
+ self.app = App(app)
+ except:
+ pass
+ finally:
+ self.app = App(app)
- def app_open(self):
- self.app.open()
-
- def app_close(self):
- self.app.close()
+ def app_open(self):
+ self.app.open()
- def move_offset(self, x, y):
- Mouse.move(x, y)
+ def app_close(self):
+ self.app.close()
- def move(self, x, y):
- loc = Location(x, y)
- Mouse.move(loc)
+ def move_offset(self, x, y):
+ Mouse.move(x, y)
- def click_image(self, image, timeout=5):
- if self.mouse_move_away_method == 'Origin':
- self.move(0, 0)
- if self.mouse_move_away_method == 'Offset':
- self.move_offset(-50, -50)
- reg = self.screen.wait(image, timeout)
- if self.highlight:
- reg.highlight(0.9) # Float Values lower than 1.0 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
- self.screen.click(image)
+ def move(self, x, y):
+ loc = Location(x, y)
+ Mouse.move(loc)
+ def click_image(self, image, timeout=5):
+ if self.mouse_move_away_method == 'Origin':
+ self.move(0, 0)
+ if self.mouse_move_away_method == 'Offset':
+ self.move_offset(-50, -50)
+ reg = self.screen.wait(image, timeout)
+ if self.highlight:
+ reg.highlight(0.9) # Float Values lower than 1.0 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
+ self.screen.click(image)
Versions:
========
Jython 2.7.0
SikuliXApi.jar Version 1.1.4
Windows 10
Question:
========
The reg.highlight(0.9) throw an Exception:
PS E:\Audio\Audio Installer\Jython\Test> jython .\Script.py
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.python.core.PySystemState (file:/C:/jython2.7.0/jython.jar) to method java.io.Console.encoding()
WARNING: Please consider reporting this to the maintainers of org.python.core.PySystemState
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[log] highlight M[1027,680 74x22]On(0) S 10000 for 0.9 secs
Traceback (most recent call last):
- File ".\Ableton.py", line 11, in <module>
- sik.click_image(r'..\..\Images\test_next.png')
- File "..\sikulix.py", line 52, in click_image
- reg.highlight(0.9) # Float Values like 0.1 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
- at java.base/java.lang.Thread.sleep(Native Method)
- at org.sikuli.util.ScreenHighlighter.closeAfter(ScreenHighlighter.java:144)
- at org.sikuli.util.ScreenHighlighter.highlight(ScreenHighlighter.java:214)
- at org.sikuli.script.Region.highlight(Region.java:2164)
- at org.sikuli.script.Region.highlight(Region.java:2142)
- at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.base/java.lang.reflect.Method.invoke(Method.java:566)
+ File ".\Ableton.py", line 11, in <module>
+ sik.click_image(r'..\..\Images\test_next.png')
+ File "..\sikulix.py", line 52, in click_image
+ reg.highlight(0.9) # Float Values like 0.1 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
+ at java.base/java.lang.Thread.sleep(Native Method)
+ at org.sikuli.util.ScreenHighlighter.closeAfter(ScreenHighlighter.java:144)
+ at org.sikuli.util.ScreenHighlighter.highlight(ScreenHighlighter.java:214)
+ at org.sikuli.script.Region.highlight(Region.java:2164)
+ at org.sikuli.script.Region.highlight(Region.java:2142)
+ at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
+ at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
+ at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
+ at java.base/java.lang.reflect.Method.invoke(Method.java:566)
java.lang.IllegalArgumentException: java.lang.IllegalArgumentException:
timeout value is negative
--
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to Sikuli.
https://bugs.launchpad.net/bugs/1815299
Title:
[1.1.4] Region().highlight() doesn't accept values lower than 1.0 ---
fixed 2019-02-09 build #192
Status in Sikuli:
Fix Committed
Bug description:
************************ BE AWARE
see: https://sikulix-2014.readthedocs.io/en/latest/region.html#Region.highlight
--- minimum highlight time is 100 msecs
--- after closing a highlight, we wait at least 300 msecs to give the GUI some time for the next actions
--- for highlight times > 500 msecs the wait-after-close-time is included in the highlight timing, below, it adds on.
--------------------------------------------------------------------------
Script:
=====
import os, sys, time
sys.path.append(os.path.dirname(os.path.realpath(__file__)) + '/sikulixapi.jar')
from org.sikuli.script import App
from org.sikuli.script import Screen
from org.sikuli.basics import Settings
from org.sikuli.script import Mouse
from org.sikuli.script import Location
class Sikuli:
def __init__(self):
Mouse.setMouseMovedAction(0) # 0 - Disable User Mouse Interaction
Settings.MoveMouseDelay = 0.1 # Doesn't work if Settings.setShowActions(False) is executed afterwards
# Settings.Highlight = False # True - Fires two Times per Action
# Settings.setShowActions(False) # False - does disable the Settings.MoveMouseDelay Setting
# Mouse.setMouseMovedHighlight(True) # Doesn't show any Effect
Settings.MinSimilarity = 0.95
Settings.DebugLogs = False
self.screen = Screen()
self.highlight = True
self.mouse_move_away_method = 'Offset' # Origin, Offset
def app(self, app):
try:
self.app = App(app)
except:
pass
finally:
self.app = App(app)
def app_open(self):
self.app.open()
def app_close(self):
self.app.close()
def move_offset(self, x, y):
Mouse.move(x, y)
def move(self, x, y):
loc = Location(x, y)
Mouse.move(loc)
def click_image(self, image, timeout=5):
if self.mouse_move_away_method == 'Origin':
self.move(0, 0)
if self.mouse_move_away_method == 'Offset':
self.move_offset(-50, -50)
reg = self.screen.wait(image, timeout)
if self.highlight:
reg.highlight(0.9) # Float Values lower than 1.0 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
self.screen.click(image)
Versions:
========
Jython 2.7.0
SikuliXApi.jar Version 1.1.4
Windows 10
Question:
========
The reg.highlight(0.9) throw an Exception:
PS E:\Audio\Audio Installer\Jython\Test> jython .\Script.py
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.python.core.PySystemState (file:/C:/jython2.7.0/jython.jar) to method java.io.Console.encoding()
WARNING: Please consider reporting this to the maintainers of org.python.core.PySystemState
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[log] highlight M[1027,680 74x22]On(0) S 10000 for 0.9 secs
Traceback (most recent call last):
File ".\Ableton.py", line 11, in <module>
sik.click_image(r'..\..\Images\test_next.png')
File "..\sikulix.py", line 52, in click_image
reg.highlight(0.9) # Float Values like 0.1 not possible; reg.highlight() disable the Click Action; Clicks doesn't come trough; Use reg.highlight(<int>) instead
at java.base/java.lang.Thread.sleep(Native Method)
at org.sikuli.util.ScreenHighlighter.closeAfter(ScreenHighlighter.java:144)
at org.sikuli.util.ScreenHighlighter.highlight(ScreenHighlighter.java:214)
at org.sikuli.script.Region.highlight(Region.java:2164)
at org.sikuli.script.Region.highlight(Region.java:2142)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
java.lang.IllegalArgumentException:
java.lang.IllegalArgumentException: timeout value is negative
To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/1815299/+subscriptions
References