animatedValue fixed
This commit is contained in:
parent
d03779cc6d
commit
925613b81c
@ -395,8 +395,7 @@ QskAnimationHint QskSkinnable::effectiveAnimation(
|
|||||||
return hint;
|
return hint;
|
||||||
}
|
}
|
||||||
|
|
||||||
const QskSkin* skin = effectiveSkin();
|
if ( auto skin = effectiveSkin() )
|
||||||
if ( skin )
|
|
||||||
{
|
{
|
||||||
const auto a = skin->hintTable().resolvedAnimator( aspect, hint );
|
const auto a = skin->hintTable().resolvedAnimator( aspect, hint );
|
||||||
if ( a.isAnimator() )
|
if ( a.isAnimator() )
|
||||||
@ -485,6 +484,10 @@ QVariant QskSkinnable::animatedValue(
|
|||||||
if ( aspect.state() == QskAspect::NoState )
|
if ( aspect.state() == QskAspect::NoState )
|
||||||
aspect = aspect | skinState();
|
aspect = aspect | skinState();
|
||||||
|
|
||||||
|
const auto aspect0 = aspect;
|
||||||
|
|
||||||
|
Q_FOREVER
|
||||||
|
{
|
||||||
Q_FOREVER
|
Q_FOREVER
|
||||||
{
|
{
|
||||||
v = QskSkinTransition::animatedHint( control->window(), aspect );
|
v = QskSkinTransition::animatedHint( control->window(), aspect );
|
||||||
@ -493,6 +496,13 @@ QVariant QskSkinnable::animatedValue(
|
|||||||
|
|
||||||
aspect.clearState( aspect.topState() );
|
aspect.clearState( aspect.topState() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( v.isValid() || aspect.placement() == QskAspect::NoPlacement )
|
||||||
|
break;
|
||||||
|
|
||||||
|
aspect = aspect0;
|
||||||
|
aspect.setPlacement( QskAspect::NoPlacement );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user