55 VersionReply , WorkspaceReply , SeatReply , InputReply )
66from .events import (IpcBaseEvent , BarconfigUpdateEvent , BindingEvent , OutputEvent , ShutdownEvent ,
77 WindowEvent , TickEvent , ModeEvent , WorkspaceEvent , InputEvent , Event )
8- from ._private import PubSub , MessageType , EventType , Synchronizer
8+ from ._private import PubSub , Handler , MessageType , EventType , Synchronizer
99
10- from typing import List , Optional , Union , Callable
10+ from typing import List , Optional , Union
1111import struct
1212import json
1313import socket
@@ -380,7 +380,7 @@ def _subscribe(self, events):
380380 self .subscriptions |= events
381381 return result
382382
383- def off (self , handler : Callable [[ 'Connection' , IpcBaseEvent ], None ] ):
383+ def off (self , handler : Handler ):
384384 """Unsubscribe the handler from being called on ipc events.
385385
386386 :param handler: The handler that was previously attached with
@@ -389,9 +389,7 @@ def off(self, handler: Callable[['Connection', IpcBaseEvent], None]):
389389 """
390390 self ._pubsub .unsubscribe (handler )
391391
392- def on (self ,
393- event : Union [Event , str ],
394- handler : Optional [Callable [['Connection' , IpcBaseEvent ], None ]] = None ):
392+ def on (self , event : Union [Event , str ], handler : Optional [Handler ] = None ):
395393 def on_wrapped (handler ):
396394 self ._on (event , handler )
397395 return handler
@@ -401,7 +399,7 @@ def on_wrapped(handler):
401399 else :
402400 return on_wrapped
403401
404- def _on (self , event : Union [Event , str ], handler : Callable [[ 'Connection' , IpcBaseEvent ], None ] ):
402+ def _on (self , event : Union [Event , str ], handler : Handler ):
405403 """Subscribe to the event and call the handler when it is emitted by
406404 the i3 ipc.
407405
0 commit comments