diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index ffe893d..9e02afd 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -3,18 +3,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
@@ -65,7 +53,7 @@
-
+
@@ -88,20 +76,20 @@
-
+
-
-
-
+
+
+
-
+
@@ -110,20 +98,20 @@
-
+
-
-
-
+
+
+
-
+
@@ -132,7 +120,7 @@
-
+
@@ -145,7 +133,7 @@
-
+
@@ -200,19 +188,19 @@
-
+
+
-
@@ -285,22 +273,24 @@
-
+
+
-
+
+
-
+
\ No newline at end of file
diff --git a/circle_ci_test/record_test.py b/circle_ci_test/record_test.py
new file mode 100644
index 0000000..799cfe7
--- /dev/null
+++ b/circle_ci_test/record_test.py
@@ -0,0 +1,15 @@
+import sys
+from time import sleep
+
+from je_auto_control import record
+from je_auto_control import stop_record
+from je_auto_control import type_key
+
+record()
+type_key("t")
+type_key("e")
+type_key("s")
+type_key("t")
+
+sleep(1)
+stop_record()
diff --git a/je_auto_control/osx/listener/osx_listener.py b/je_auto_control/osx/listener/osx_listener.py
index 94f7e13..71edf86 100644
--- a/je_auto_control/osx/listener/osx_listener.py
+++ b/je_auto_control/osx/listener/osx_listener.py
@@ -12,16 +12,10 @@
from queue import Queue
-class RecordQueue(object):
+record_queue = Queue()
- def __init__(self):
- self.record_queue = None
+app = NSApplication.sharedApplication()
- def reset_queue(self):
- self.record_queue = Queue()
-
-
-record_queue_manager = RecordQueue()
class AppDelegate(NSObject):
def applicationDidFinishLaunching_(self, aNotification):
@@ -32,30 +26,31 @@ def applicationDidFinishLaunching_(self, aNotification):
def mouse_left_handler(event):
loc = NSEvent.mouseLocation()
- record_queue_manager.record_queue.put(("mouse_left", loc.x, loc.y))
+ record_queue.put(("mouse_left", loc.x, loc.y))
def mouse_right_handler(event):
loc = NSEvent.mouseLocation()
- record_queue_manager.record_queue.put(("mouse_right", loc.x, loc.y))
+ record_queue.put(("mouse_right", loc.x, loc.y))
def keyboard_handler(event):
- record_queue_manager.record_queue.put(("keyboard", int(hex(event.keyCode()), 16)))
if int(event.keyCode()) == 98:
- AppHelper.stopEventLoop()
+ pass
+ else:
+ record_queue.put(("keyboard", int(hex(event.keyCode()), 16)))
+ print(event)
def osx_record():
- record_queue_manager.reset_queue()
- app = NSApplication.sharedApplication()
+ record_queue = Queue()
delegate = AppDelegate.alloc().init()
- NSApp().setDelegate_(delegate)
+ app.setDelegate_(delegate)
AppHelper.runEventLoop()
def osx_stop_record():
- return record_queue_manager.record_queue
+ return record_queue
if __name__ == "__main__":
diff --git a/je_auto_control/osx/record/osx_record.py b/je_auto_control/osx/record/osx_record.py
index f0e7248..8a2256a 100644
--- a/je_auto_control/osx/record/osx_record.py
+++ b/je_auto_control/osx/record/osx_record.py
@@ -23,4 +23,16 @@ def stop_record(self):
raise AutoControlRecordException
return osx_stop_record()
-osx_recorder = OSXRecorder()
\ No newline at end of file
+osx_recorder = OSXRecorder()
+
+
+if __name__ == "__main__":
+ test_osx_recorder = OSXRecorder()
+ test_osx_recorder.record()
+ temp = test_osx_recorder.stop_record()
+ print(temp)
+ for action in temp.queue:
+ print(action)
+ while True:
+ pass
+
diff --git a/je_auto_control/wrapper/auto_control_record.py b/je_auto_control/wrapper/auto_control_record.py
index 78d0762..a864ffa 100644
--- a/je_auto_control/wrapper/auto_control_record.py
+++ b/je_auto_control/wrapper/auto_control_record.py
@@ -1,3 +1,5 @@
+import sys
+
from je_auto_control.utils.je_auto_control_exception.exceptions import AutoControlRecordException
from je_auto_control.utils.je_auto_control_exception.exception_tag import record_not_found_action_error
from je_auto_control.wrapper.auto_control_mouse import click_mouse
@@ -34,10 +36,14 @@ def stop_record_keyboard():
def record():
+ if sys.platform == "darwin":
+ raise Exception("macos can't use recorder")
recorder.record()
def stop_record():
+ if sys.platform == "darwin":
+ raise Exception("macos can't use recorder")
action_queue = recorder.stop_record()
if action_queue is None:
raise AutoControlRecordException
@@ -53,12 +59,8 @@ def stop_record():
if __name__ == "__main__":
record()
from time import sleep
- sleep(10)
+ sleep(5)
stop_record()
- sleep(3)
- import sys
- if sys.platform in ["darwin"]:
- record()
- stop_record()
+ sleep(2)
diff --git a/je_auto_control/wrapper/platform_wrapper.py b/je_auto_control/wrapper/platform_wrapper.py
index 77d69e3..d60a23d 100644
--- a/je_auto_control/wrapper/platform_wrapper.py
+++ b/je_auto_control/wrapper/platform_wrapper.py
@@ -864,8 +864,7 @@
keyboard_check = osx_keyboard_check
mouse = osx_mouse
screen = osx_screen
- recorder = osx_recorder
- if None in [keys_table, mouse_table, keyboard_check, keyboard, mouse, screen, recorder]:
+ if None in [keys_table, mouse_table, keyboard_check, keyboard, mouse, screen]:
raise AutoControlException("Can't init auto control")
elif sys.platform in ["linux", "linux2"]:
diff --git a/setup.py b/setup.py
index a8f2dfe..fa91bfd 100644
--- a/setup.py
+++ b/setup.py
@@ -5,7 +5,7 @@
setuptools.setup(
name="je_auto_control",
- version="0.0.39",
+ version="0.0.40",
author="JE-Chen",
author_email="zenmailman@gmail.com",
description="auto control gui",
diff --git a/test/platform_independent/test/record_test.py b/test/platform_independent/test/record_test.py
new file mode 100644
index 0000000..799cfe7
--- /dev/null
+++ b/test/platform_independent/test/record_test.py
@@ -0,0 +1,15 @@
+import sys
+from time import sleep
+
+from je_auto_control import record
+from je_auto_control import stop_record
+from je_auto_control import type_key
+
+record()
+type_key("t")
+type_key("e")
+type_key("s")
+type_key("t")
+
+sleep(1)
+stop_record()