*** empty log message ***
authorroot <root>
Sun, 8 Jan 2006 00:41:20 +0000 (00:41 +0000)
committerroot <root>
Sun, 8 Jan 2006 00:41:20 +0000 (00:41 +0000)
src/perl/option-popup
src/perl/urxvt-popup

index 92da3d49494fe3e6364f17ca38cd2fc3dc5da7b7..9ecb397139139b3b21604e50c36a809bd799fe07 100644 (file)
@@ -9,7 +9,7 @@ sub on_button_press {
       my %unsafe = map +($_ => 1),
          qw(borderLess console iconic loginShell reverseVideo
             scrollBar scrollBar_floating scrollBar_right
-            secondaryScreen transparent utmpInhibit);
+            secondaryScreen transparent utmpInhibit meta8);
 
       for my $name (sort keys %urxvt::OPTION) {
          next if $unsafe{$name};
index f213aeb48470cd4a7f42051c9c68e83bddd08b13..abfce9972956852307c56dc25faf2aac3989c8d5 100644 (file)
@@ -29,7 +29,13 @@ sub refresh {
 sub on_motion_notify {
    my ($self, $event) = @_;
 
-   $self->{hover} = $event->{row} + 1;
+   delete $self->{hover};
+
+   my ($row, $col) = ($event->{row}, $event->{col});
+   if ($col >= 0 && $col < $self->ncol
+       && $row >= 0 && $row < @{ $self->{data}{item} }) {
+      $self->{hover} = $event->{row} + 1;
+   }
    $self->refresh;
 
    1
@@ -47,9 +53,6 @@ sub on_button_press {
 sub on_button_release {
    my ($self, $event) = @_;
 
-   my $row = $event->{row};
-   my $col = $event->{col};
-
    if ($event->{button} == $self->{data}{event}{button}) {
       $self->ungrab;
       $self->destroy;
@@ -57,6 +60,7 @@ sub on_button_release {
 
    $self->{press}[$event->{button}] = 0;
 
+   my ($row, $col) = ($event->{row}, $event->{col});
    if ($col >= 0 && $col < $self->ncol
        && $row >= 0 && $row < @{ $self->{data}{item} }) {
       $self->{data}{item}[$row]{activate}->($event);