This code in sPanel.pas:
Code:
if Showing and CanAnimate(Value) then begin
if not FAnimationTimer.Enabled then begin
FAnimationTimer.Enabled := FState in [svsaOpening, svsaClosing];
FAnimationTimer.OnTimer(FAnimationTimer);
case FState of
svsaOpened: DoOpened;
svsaOpening: DoOpening;
svsaClosed: DoClosed;
svsaClosing: DoClosing;
end;
end;
end
else begin
prevents both OnOpened and OnClosed to be called (because the animation timer is disabled).