diff options
| author | Ailin Nemui | 2017-01-09 14:35:07 +0100 | 
|---|---|---|
| committer | Ailin Nemui | 2017-01-09 14:35:07 +0100 | 
| commit | 12d9a5088baea7eb6118b567c734af996f9f7ba2 (patch) | |
| tree | 7843fd7a6af27daeddf4bf9ea3dafab4699befc2 | |
| parent | 4a999028d8007a74dd57c2ea1a229552ba60f349 (diff) | |
| download | scripts.irssi.org-12d9a5088baea7eb6118b567c734af996f9f7ba2.tar.bz2 | |
update trackbar22 to v2.3
* fix uninitialized warning reported by varazir
* add trackbar signals for use in other scripts
| -rw-r--r-- | scripts/trackbar22.pl | 11 | 
1 files changed, 9 insertions, 2 deletions
| diff --git a/scripts/trackbar22.pl b/scripts/trackbar22.pl index 30015a2..6c899b6 100644 --- a/scripts/trackbar22.pl +++ b/scripts/trackbar22.pl @@ -96,7 +96,7 @@ use Encode;  use POSIX qw(strftime);  use vars qw($VERSION %IRSSI); -$VERSION = "2.2"; # cb3189a33c8e5f9 +$VERSION = "2.3"; # 45c0adad4366edd  %IRSSI = (      authors     => 'Peter Leurs and Geert Hauwaerts', @@ -106,7 +106,6 @@ $VERSION = "2.2"; # cb3189a33c8e5f9      description => 'Shows a bar where you have last read a window.',      license     => 'GNU General Public License',      url         => 'http://www.pfoe.be/~peter/trackbar/', -    changed     => 'Fri Jan 23 23:59:11 2004',      commands    => 'trackbar',  ); @@ -234,6 +233,7 @@ sub add_one_trackbar {      $win->print(line($win->{width}), MSGLEVEL_NEVER);      $view->set_bookmark_bottom('trackbar');      $unseen_trackbar{ $win->{_irssi} } = 1; +    Irssi::signal_emit("window trackbar added", $win);      $view->redraw;  } @@ -253,6 +253,7 @@ sub win_ignored {      my $view = shift || $win->view;      return 1 unless $view->{buffer}{lines_count};      return 1 if $win->{name} eq '(status)' && !$config{use_status_window}; +    no warnings 'uninitialized';      return 1 if grep { $win->{name} eq $_ || $win->{refnum} eq $_  			   || $win->get_active_name eq $_ } @{ $config{ignore_windows} };      return 0; @@ -271,10 +272,13 @@ sub sig_window_changed {  sub trackbar_update_seen {      my $win = shift;      return unless $win; +    return unless $unseen_trackbar{ $win->{_irssi} }; +      my $view = $win->view;      my $line = $view->get_bookmark('trackbar');      unless ($line) {          delete $unseen_trackbar{ $win->{_irssi} }; +        Irssi::signal_emit("window trackbar seen", $win);          return;      }      my $startline = $view->{startline}; @@ -283,6 +287,7 @@ sub trackbar_update_seen {      if ($startline->{info}{time} < $line->{info}{time}              || $startline->{_irssi} == $line->{_irssi}) {          delete $unseen_trackbar{ $win->{_irssi} }; +        Irssi::signal_emit("window trackbar seen", $win);      }  } @@ -477,6 +482,8 @@ update_config();  Irssi::signal_add_last( 'mainwindow resized' => 'redraw_trackbars')      unless $old_irssi; +Irssi::signal_register({'window trackbar added' => [qw/Irssi::UI::Window/]}); +Irssi::signal_register({'window trackbar seen' => [qw/Irssi::UI::Window/]});  Irssi::signal_register({'gui page scrolled' => [qw/Irssi::UI::Window/]});  Irssi::signal_add_last('gui page scrolled' => 'trackbar_update_seen'); | 
