|
@@ -32,18 +32,21 @@ class EngineAction:
|
|
|
self.execute_on_window(extended_controls, xkeyevent, target_window)
|
|
|
|
|
|
|
|
|
-class SelectGagAction:
|
|
|
+class SelectGagAction(EngineAction):
|
|
|
|
|
|
- def __init__(self, factor_x, factor_y):
|
|
|
+ def __init__(self, target_engine_index, factor_x, factor_y):
|
|
|
+ super().__init__(
|
|
|
+ target_engine_index=target_engine_index,
|
|
|
+ )
|
|
|
self._button = Xlib.X.Button1
|
|
|
self._factor_x = factor_x
|
|
|
self._factor_y = factor_y
|
|
|
|
|
|
- def execute(self, extended_controls, xkeyevent):
|
|
|
- engine_geometry = extended_controls.primary_engine_window.get_geometry()
|
|
|
+ def execute_on_window(self, extended_controls, xkeyevent, engine_window):
|
|
|
+ engine_geometry = engine_window.get_geometry()
|
|
|
smaller_dimension = min(engine_geometry.width, engine_geometry.height)
|
|
|
attr = dict(
|
|
|
- window=extended_controls.primary_engine_window,
|
|
|
+ window=engine_window,
|
|
|
detail=self._button,
|
|
|
state=xkeyevent.state,
|
|
|
event_x=int(engine_geometry.width / 2
|
|
@@ -63,7 +66,7 @@ class SelectGagAction:
|
|
|
e = Xlib.protocol.event.ButtonPress(**attr)
|
|
|
else:
|
|
|
e = Xlib.protocol.event.ButtonRelease(**attr)
|
|
|
- extended_controls.primary_engine_window.send_event(e)
|
|
|
+ engine_window.send_event(e)
|
|
|
|
|
|
|
|
|
class RewriteKeyEventAction(EngineAction):
|