--- deliantra/Deliantra-Client/DC/UI.pm 2007/12/08 18:38:13 1.444 +++ deliantra/Deliantra-Client/DC/UI.pm 2007/12/22 06:50:45 1.447 @@ -141,7 +141,7 @@ $GRAB->update if $GRAB; check_hover $widget; - $TOOLTIP_WATCHER->trigger; + $TOOLTIP_WATCHER->invoke; } } @@ -311,7 +311,7 @@ undef $GRAB if $GRAB == $self; undef $HOVER if $HOVER == $self; - $CFPlus::UI::TOOLTIP_WATCHER->trigger + $CFPlus::UI::TOOLTIP_WATCHER->invoke if $TOOLTIP->{owner} == $self; $self->emit ("focus_out"); @@ -442,7 +442,7 @@ if ($CFPlus::UI::TOOLTIP->{owner} == $self) { delete $CFPlus::UI::TOOLTIP->{owner}; - $CFPlus::UI::TOOLTIP_WATCHER->trigger; + $CFPlus::UI::TOOLTIP_WATCHER->invoke; } } @@ -450,7 +450,7 @@ sub coord2local { my ($self, $x, $y) = @_; - Carp::confess unless $self->{parent};#d# + return (undef, undef) unless $self->{parent}; $self->{parent}->coord2local ($x - $self->{x}, $y - $self->{y}) } @@ -459,7 +459,7 @@ sub coord2global { my ($self, $x, $y) = @_; - Carp::confess unless $self->{parent};#d# + return (undef, undef) unless $self->{parent}; $self->{parent}->coord2global ($x + $self->{x}, $y + $self->{y}) } @@ -3703,6 +3703,7 @@ return unless $self->{timer}; + $self->{timer}->stop; if ($self->{visible}) { $self->{timer}->set ( $self->{anim_start} @@ -3710,8 +3711,6 @@ * int 1.5 + (EV::now - $self->{anim_start}) / $self->{animspeed} ); $self->{timer}->start; - } else { - $self->{timer}->stop; } } @@ -4184,8 +4183,6 @@ delete $self->{item}{$k} if $v->{timeout} < $NOW; } - $self->{timer}->set (1, 1); - my @widgets; my @items = sort {