X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/7c89200521dd8c6cb8fc8a17c633ac80d4b18bd2..8ae300a55b40e1d20cb094b5b19a76b90ee0a63e:/ITPivotWindowEffect.m diff --git a/ITPivotWindowEffect.m b/ITPivotWindowEffect.m index 95c1040..25e21d4 100755 --- a/ITPivotWindowEffect.m +++ b/ITPivotWindowEffect.m @@ -24,7 +24,9 @@ - (void)performAppear { - [self setWindowVisibility:ITTransientStatusWindowAppearingState]; + __idle = NO; + + [self setWindowVisibility:ITWindowAppearingState]; [self performAppearFromProgress:0.0 effectTime:_effectTime]; } @@ -64,12 +66,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; @@ -85,7 +93,9 @@ - (void)performVanish { - [self setWindowVisibility:ITTransientStatusWindowVanishingState]; + __idle = NO; + + [self setWindowVisibility:ITWindowVanishingState]; [self performVanishFromProgress:1.0 effectTime:_effectTime]; } @@ -126,12 +136,19 @@ _effectTimer = nil; [_window orderOut:self]; [_window setAlphaValue:1.0]; - [self setWindowVisibility:ITTransientStatusWindowHiddenState]; + [self setPivot:0.0]; + [self setWindowVisibility:ITWindowHiddenState]; + + __idle = YES; + + if ( __shouldReleaseWhenIdle ) { + [self release]; + } } - (void)cancelVanish { - [self setWindowVisibility:ITTransientStatusWindowAppearingState]; + [self setWindowVisibility:ITWindowAppearingState]; [_effectTimer invalidate]; _effectTimer = nil;