do not start sliding ins/outs with no reason

--ViewPart:VisibilityManager is sending events
to show or hide but it can not validate the view
visual state meaning is hidden, sliding in/out, blocked
etc. That role is taken from Containment::VisibilityManager
that accepts that signals and in case the state are
requesting is already provided then in such case
these signals are ignored.
--This way myView flags for inSlidingIn/Out/PartiallyShown/FullyShown
etc are providing valid values in some previous
problematic scenarios
--This fix solves the issue that parabolic effect with Tasks Previews
it was not too responsive but it had many glitches
work/spdx
Michail Vourlakos 4 years ago
parent 690ce51d75
commit 7e26d54a08

@ -536,7 +536,9 @@ Item{
}
//! Normal Dodge/AutoHide case
if (!slidingAnimationAutoHiddenIn.running && !inRelocationHiding){
if (!slidingAnimationAutoHiddenIn.running
&& !inRelocationHiding
&& (latteView.visibility.isHidden || slidingAnimationAutoHiddenOut.running /*it is not already shown or is trying to hide*/)){
slidingAnimationAutoHiddenIn.init();
}
}
@ -555,7 +557,8 @@ Item{
//! Normal Dodge/AutoHide case
if (!slidingAnimationAutoHiddenOut.running
&& !latteView.visibility.blockHiding
&& !latteView.visibility.containsMouse) {
&& (!latteView.visibility.containsMouse || latteView.visibility.mode === LatteCore.Types.SidebarOnDemand /*for SidebarOnDemand mouse should be ignored on hiding*/)
&& (!latteView.visibility.isHidden || slidingAnimationAutoHiddenIn.running /*it is not already hidden or is trying to show*/)) {
slidingAnimationAutoHiddenOut.init();
}
}

Loading…
Cancel
Save