-- when removing a task and there are surrounding
separators then the hidden spacers are updated
immediately for the neighbour tasks. In such case
in order to not break the removal animation a small
margin must applied.
--the old architecture that was trying to keep
an internal separators record couldnt catch up
and at the same time could create issues with
internal separators at different activities.
--the internal separators should be able to positioned
always perfect comparing to the other launchers around them.
Only way this could be achieved is by giving them the
possibility to be applied to specific Activities...
For the user to assign internal separators to specific
Activities should right click them in editMode...
--when there were many internal separators in the row
and the user was dragging a task the internal separators
indexes afterwards were broken. This fixes this by
forcing the separators to update their indexes after
the user finishes dragging.
--the user now can add an internal separator and set
its position also by taking into account in which task
the context menu is shown
--the user now can remove any internal separator wants to
by showing its context menu options in editMode
--hide internal separators when overlap and show
only one
--hide internal separators at start or end of the
plasmoid, the user can us separator applet in those
places
--add safety array checkes in order to avoid any
crashes from accessing out-of-arrays elements
--the internalSeparatorPos approach was removed
from the plasmoid. The next steps are:
1. ParabolicManagers to update their logic in order
to take into account multiple internal separators
2. To hide all consequent separators either as applets
all internal separators
--make the single separator old architecture to
work correctly with the new multiple internal
separators architecture. Many things need to be
updated in order for this to work but lets make
one step at a time.
--The internal separator can be hidden when it is
found at the edges of Tasks Plasmoid, it creates a
more pleasant result. If the user wants separators at
the edges can always use the Separator plasmoid from
audoban. This fix would fix also the overlap
of internal sepator with external applet separator.
--this commit takes into account applets separators
and the internal separator so that the number of
separators that are subsequent do not influence the
parabolic effect animation
--this is finally used properly through the
ParabolicManagers new architecture. Any old
problems concerning applets that didnt clearing
their zoom should be fixed totally now!!
--move all the logic around parabolic effect signals
into one place, ParabolicManager. The ParabolicManager
is responsible for triggering all the messages to tasks
that are neighbour to the hovered task. This will
help a lot to catch cases such as separators and proper
clearing zoom.