diff options
Diffstat (limited to 'src/MTools/Anim/MOpacity.pm')
-rw-r--r-- | src/MTools/Anim/MOpacity.pm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/MTools/Anim/MOpacity.pm b/src/MTools/Anim/MOpacity.pm index 4525b2d..382a505 100644 --- a/src/MTools/Anim/MOpacity.pm +++ b/src/MTools/Anim/MOpacity.pm @@ -77,6 +77,7 @@ sub new { }); $self -> {__animation} = undef; $self -> mconfigure (%options); + $self -> {__complete} = 0; return $self; } @@ -102,7 +103,12 @@ sub start { }); $self -> {__animation} -> wheninterrupted (sub { $self -> {__animation} = undef; - $self -> notify ('ANIMATION_ABORD', $self -> {__opacity}); + if ($self -> {__complete}) { + $self -> {__complete} = 0; + $self -> notify ('ANIMATION_END'); + } else { + $self -> notify ('ANIMATION_ABORD', $self -> {__opacity}); + } }); $self -> {__animation} -> start (); } @@ -119,6 +125,7 @@ sub complete { my ($self) = @_; return if !$self->isRunning(); $self->__event($self -> mget ('to_opacity') - $self -> {__opacitydep}); + $self -> {__complete} = 1; $self->stop(); } |