X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/7c89200521dd8c6cb8fc8a17c633ac80d4b18bd2..bd40b798b6a46cfecdfb128e2992bba254148911:/ITDissolveWindowEffect.m diff --git a/ITDissolveWindowEffect.m b/ITDissolveWindowEffect.m index fc2bd38..147840d 100755 --- a/ITDissolveWindowEffect.m +++ b/ITDissolveWindowEffect.m @@ -22,7 +22,9 @@ - (void)performAppear { - [self setWindowVisibility:ITTransientStatusWindowAppearingState]; + __idle = NO; + + [self setWindowVisibility:ITWindowAppearingState]; [self performAppearFromProgress:0.0 effectTime:_effectTime]; } @@ -60,12 +62,18 @@ { [_effectTimer invalidate]; _effectTimer = nil; - [self setWindowVisibility:ITTransientStatusWindowVisibleState]; + [self setWindowVisibility:ITWindowVisibleState]; + + __idle = YES; + + if ( __shouldReleaseWhenIdle ) { + [self release]; + } } - (void)cancelAppear { - [self setWindowVisibility:ITTransientStatusWindowVanishingState]; + [self setWindowVisibility:ITWindowVanishingState]; [_effectTimer invalidate]; _effectTimer = nil; @@ -81,7 +89,9 @@ - (void)performVanish { - [self setWindowVisibility:ITTransientStatusWindowVanishingState]; + __idle = NO; + + [self setWindowVisibility:ITWindowVanishingState]; [self performVanishFromProgress:1.0 effectTime:_effectTime]; } @@ -120,12 +130,18 @@ _effectTimer = nil; [_window orderOut:self]; [_window setAlphaValue:1.0]; - [self setWindowVisibility:ITTransientStatusWindowHiddenState]; + [self setWindowVisibility:ITWindowHiddenState]; + + __idle = YES; + + if ( __shouldReleaseWhenIdle ) { + [self release]; + } } - (void)cancelVanish { - [self setWindowVisibility:ITTransientStatusWindowVanishingState]; + [self setWindowVisibility:ITWindowVanishingState]; [_effectTimer invalidate]; _effectTimer = nil;