App-MatrixClient

 view release on metacpan or  search on metacpan

lib/App/MatrixClient/RoomTab.pm  view on Meta::CPAN

      on_expire => sub { $room->typing_stop },
   ) );
}

sub append_line
{
   my $self = shift;

   if( $self->{typing_line} ) {
      my @after = $self->{scroller}->pop;
      $self->SUPER::append_line( @_ );
      $self->{scroller}->push( @after );
   }
   else {
      $self->SUPER::append_line( @_ );
   }
}

sub set_typing_line
{
   my $self = shift;
   my ( $line ) = @_;

   $self->{scroller}->pop if delete $self->{typing_line};

   # No timestamp
   local $self->{timestamp_format};
   $self->SUPER::append_line( $self->{typing_line} = $line ) if $line;
}

sub still_typing
{
   my $self = shift;

   my $timer = $self->{typing_grace_timer};
   if( $timer->is_running ) {
      $timer->reset;
   }



( run in 1.251 second using v1.01-cache-2.11-cpan-49f99fa48dc )