--there are launchers that do not trigger properly
theirs apps, so in the end of the animation the launcher
was remaining locked and wasnt animated because it was
waiting for the app window to be created. This commit
fixes this, if the launcher at the end of the bouncing
animation is not in removal stage the it is properly
unblocked
--ListView is anchoring its children very strange.
This was creating circumstances that the children
were anchoring themselves wrongly e.g. when removing
them and in some animations. This commit introduces
heuristics (workarounds) for these cases. The
broken anchor situations are protected by introduced
correct anchors from our qml side in listview
child items
--by taking account the libtaskmanager way of doing
things. Latte is trying to delay the removal of the
launcher in order for the animation to play correctly.
At the same time if a window or startup is added is
not shown if there is a waitingLauncher(animated launcher)
until this launcher completes its animation
--the windows count sometimes do not count
correctly for example with firefox window.
In such case the removal animation is called.
This patch protects the hiding animation
that needs hiding the main icon when this
is the last one shown in such cases
--during closing a task the decoration
from libtaskmanager returns no valid strings.
The problem was first observed with the
remove window animation. To solve it
introduced at our iconitem a lastValidIconName
that contains the last valid iconName.
--relevant to #250,creates consistency for
hovering tasks and applets. The only concerns
is around the springanimation introduced in
plasma 5.10 but this will be checked later
how it can be supported properly
--this a big fix for the painting mechanism.
Introduces a new direct rendering phase in
which no delays are happening on drawing.
This commit contains also the fixes in various
places in order for the new rendering to work
correctly