… | |
… | |
232 | |
232 | |
233 | delete $self->{visible}; |
233 | delete $self->{visible}; |
234 | |
234 | |
235 | undef $GRAB if $GRAB == $self; |
235 | undef $GRAB if $GRAB == $self; |
236 | undef $HOVER if $HOVER == $self; |
236 | undef $HOVER if $HOVER == $self; |
|
|
237 | |
|
|
238 | CFClient::UI::check_tooltip |
|
|
239 | if $CFClient::UI::TOOLTIP->{owner} == $self; |
237 | |
240 | |
238 | $self->focus_out; |
241 | $self->focus_out; |
239 | } |
242 | } |
240 | |
243 | |
241 | sub hide { |
244 | sub hide { |
… | |
… | |
1562 | my ($self) = @_; |
1565 | my ($self) = @_; |
1563 | |
1566 | |
1564 | my ($w, $h) = $self->SUPER::size_request; |
1567 | my ($w, $h) = $self->SUPER::size_request; |
1565 | |
1568 | |
1566 | ($w + 1, $h) # add 1 for cursor |
1569 | ($w + 1, $h) # add 1 for cursor |
1567 | } |
|
|
1568 | |
|
|
1569 | sub size_allocate { |
|
|
1570 | my ($self, $w, $h) = @_; |
|
|
1571 | |
|
|
1572 | $self->_set_text (delete $self->{text});#d# don't check for == inside _set_text |
|
|
1573 | } |
1570 | } |
1574 | |
1571 | |
1575 | sub key_down { |
1572 | sub key_down { |
1576 | my ($self, $ev) = @_; |
1573 | my ($self, $ev) = @_; |
1577 | |
1574 | |
… | |
… | |
2996 | my ($self, $text, %arg) = @_; |
2993 | my ($self, $text, %arg) = @_; |
2997 | |
2994 | |
2998 | $text =~ s/^\s+//; |
2995 | $text =~ s/^\s+//; |
2999 | $text =~ s/\s+$//; |
2996 | $text =~ s/\s+$//; |
3000 | |
2997 | |
|
|
2998 | return unless $text; |
|
|
2999 | |
3001 | my $timeout = time + ((delete $arg{timeout}) || 60); |
3000 | my $timeout = time + ((delete $arg{timeout}) || 60); |
3002 | |
3001 | |
3003 | my $group = exists $arg{group} ? $arg{group} : ++$self->{id}; |
3002 | my $group = exists $arg{group} ? $arg{group} : ++$self->{id}; |
3004 | |
3003 | |
3005 | if (my $item = $self->{item}{$group}) { |
3004 | if (my $item = $self->{item}{$group}) { |