--- rxvt-unicode/src/perl/urxvt-popup 2006/01/07 20:29:28 1.2 +++ rxvt-unicode/src/perl/urxvt-popup 2006/01/07 23:18:56 1.6 @@ -3,8 +3,6 @@ # this extension implements popup-menu functionality for urxvt. it works # together with the urxvt::popup class. -use List::Util; - sub refresh { my ($self) = @_; @@ -18,7 +16,9 @@ $rend = $self->{press} ? "\x1b[m" : "\x1b[30;46m"; } - $cmd .= "$rend\x1b[K" . $self->locale_encode ($item->{text}) . "\015\012"; + $cmd .= "$rend\x1b[K"; + $cmd .= $self->locale_encode ($item->{render}->($item)); + $cmd .= "\015\012"; $row++; } @@ -55,8 +55,9 @@ $self->destroy; } + $self->{press}[$event->{button}] = 0; + if ($event->{button} == 1) { - $self->{press}[$event->{button}] = 0; refresh $self; warn "$event->{row} $event->{col}\n";#d# @@ -113,7 +114,7 @@ # might fail, but try anyways $self->grab ($self->{data}{event}{time}, 1) - and $self->allow_events_sync; + and $self->allow_events_async; on_button_press $self, $self->{data}{event} if $self->{data}{event}{button}; @@ -128,11 +129,9 @@ # should definitely not fail $self->grab ($self->{data}{event}{time}, 1) - and $self->allow_events_sync; + and $self->allow_events_async; } -sub on_destroy { -}