diff options
author | Michael Stapelberg <michael@stapelberg.de> | 2017-09-24 15:40:30 +0200 |
---|---|---|
committer | Michael Stapelberg <michael@stapelberg.de> | 2017-09-30 11:41:57 +0200 |
commit | ce21de8ddea4468ffcaf966da763d02d4dbd1e8d (patch) | |
tree | 8ccd74000e6ebe8f94dbba04251954f1885aedb6 /AnyEvent-I3 | |
parent | 14c8cf86223a8f2e5863113ed13efcff8eca257b (diff) | |
download | i3-ce21de8ddea4468ffcaf966da763d02d4dbd1e8d.tar.gz i3-ce21de8ddea4468ffcaf966da763d02d4dbd1e8d.zip |
Implement the tick event
This makes our tests less flaky, shorter, and more readable.
fixes #2988
Diffstat (limited to 'AnyEvent-I3')
-rw-r--r-- | AnyEvent-I3/lib/AnyEvent/I3.pm | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/AnyEvent-I3/lib/AnyEvent/I3.pm b/AnyEvent-I3/lib/AnyEvent/I3.pm index 08b1c0a7..198c41c9 100644 --- a/AnyEvent-I3/lib/AnyEvent/I3.pm +++ b/AnyEvent-I3/lib/AnyEvent/I3.pm @@ -99,11 +99,12 @@ use constant TYPE_GET_BAR_CONFIG => 6; use constant TYPE_GET_VERSION => 7; use constant TYPE_GET_BINDING_MODES => 8; use constant TYPE_GET_CONFIG => 9; +use constant TYPE_SEND_TICK => 10; our %EXPORT_TAGS = ( 'all' => [ qw(i3 TYPE_RUN_COMMAND TYPE_COMMAND TYPE_GET_WORKSPACES TYPE_SUBSCRIBE TYPE_GET_OUTPUTS TYPE_GET_TREE TYPE_GET_MARKS TYPE_GET_BAR_CONFIG TYPE_GET_VERSION - TYPE_GET_BINDING_MODES TYPE_GET_CONFIG) + TYPE_GET_BINDING_MODES TYPE_GET_CONFIG TYPE_SEND_TICK) ] ); our @EXPORT_OK = ( @{ $EXPORT_TAGS{all} } ); @@ -120,6 +121,7 @@ my %events = ( barconfig_update => ($event_mask | 4), binding => ($event_mask | 5), shutdown => ($event_mask | 6), + tick => ($event_mask | 7), _error => 0xFFFFFFFF, ); @@ -519,6 +521,18 @@ sub get_config { $self->message(TYPE_GET_CONFIG); } +=head2 send_tick + +Sends a tick event. Requires i3 >= 4.15 + +=cut +sub send_tick { + my ($self, $payload) = @_; + + $self->_ensure_connection; + + $self->message(TYPE_SEND_TICK, $payload); +} =head2 command($content) |