diff options
author | Pascal Rigaux <pixel@mandriva.com> | 1999-10-11 17:35:35 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 1999-10-11 17:35:35 +0000 |
commit | e4f62031c585cbc4a45230714e13821b9bfca34c (patch) | |
tree | 29ff4480df90ce8b6c0ddf9231a1e567f34ffe2b /perl-install/my_gtk.pm | |
parent | 9ad846cd08f909f760f80bf703b8d4dbe1809c7b (diff) | |
download | drakx-e4f62031c585cbc4a45230714e13821b9bfca34c.tar drakx-e4f62031c585cbc4a45230714e13821b9bfca34c.tar.gz drakx-e4f62031c585cbc4a45230714e13821b9bfca34c.tar.bz2 drakx-e4f62031c585cbc4a45230714e13821b9bfca34c.tar.xz drakx-e4f62031c585cbc4a45230714e13821b9bfca34c.zip |
no_comment
Diffstat (limited to 'perl-install/my_gtk.pm')
-rw-r--r-- | perl-install/my_gtk.pm | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/perl-install/my_gtk.pm b/perl-install/my_gtk.pm index ede3a2d78..2f8eb812e 100644 --- a/perl-install/my_gtk.pm +++ b/perl-install/my_gtk.pm @@ -388,18 +388,21 @@ sub _ask_from_list($$$$) { Gtk->timeout_remove($timeout) if $timeout; $timeout = ''; - if ($e->{state} & 4) { - #- control pressed - $start_reg = $start_reg ? '' : "^" if $c eq "s"; - } elsif ($e->{keyval} >= 0x100) { + if ($e->{keyval} >= 0x100) { &$leave if $c eq "\r" || $c eq "\x8d"; - $starting_word = ''; + $starting_word = '' if $e->{keyval} != 0xffe4; # control } else { - &$leave if $c eq ' '; - - $curr++ if $starting_word eq '' || $starting_word eq $c; - $starting_word .= $c unless $starting_word eq $c; - + if ($e->{state} & 4) { + #- control pressed + $c eq "s" or return 1; + $start_reg and $start_reg = '', return 1; + $curr++; + } else { + &$leave if $c eq ' '; + + $curr++ if $starting_word eq '' || $starting_word eq $c; + $starting_word .= $c unless $starting_word eq $c; + } my $word = quotemeta $starting_word; my $j; for ($j = 0; $j < @$l; $j++) { $l->[($j + $curr) % @$l] =~ /$start_reg$word/i and last; |