-- disable the use of PlasmaCore.WindowThumbnail
under Wayland in order to fix a crash that was
appearing after a while when the user was using
previews
BUG: 392865
-- 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.
--when only launchers are shown and the user
has chosen to disable any active indicator
then the plasmoid should behave only as
a smart launchers list with no window
capabilities
--always delete a previous timer for checking
preview showing before creating a new one
--always make sure the before showing a preview
the dock isnt hidden
--animate tasks hidden spacers properly
when a task is inAttention and the user
enters the mouse at first time when the task
isnt zoomed
--improve tasks hidden spacers animated
behaviors
--improve applets hidden spacers animated
behaviors
--when the plasmoid is hovered when the
applets hoveredIndex should be initialized
and when an applet is hovered then the plamoids
hoveredIndex should be initialized to -1.
--the directRenderDelayer is used during first
entering in order to delay the activation of
directRendering. The cons of previous fastEntering
implementation added the necessity for this
replacement.
--previously directRender was activating also when
from the first entered element the mouse moved fast
enough to the second element. But this could happen
also accidentaly some times. This improvements indicates
also the mouse position in the second element to be
near the center of that element
--in some cases after activity changes some tasks
are shown empty because some ghost tasks are created.
This was tracked down to hidden TaskDelegates spacers.
--libtaskmanager sometimes adds items and
hasnt set its full settings. After the addition
it updates some of the settings. This fix
is trying to fix that circumstances by not having
any blocking warnings
--window previews were lowered in order to touch
the task for which are presenting issues. This way
the mouse confirms alway the taskContainsMouse flag
--title tooltips are shown only when the dock has
ended its sliding-in animations
--issue #852, when directRendering is activated
some of the tasks could be in restoreAnimation,
in such case they stop their animation are moved
to directRendering mode
--issue #852, improve how the two states of zoom-in
and directRendering are indetified and triggered.
The initialization of hovering indexes now is
trigerred only for window mouse out events.
--in order to go faster to directRenderMode in some
cases, the following criteria was added. If the zoomScale
of a task is greater than 1 and the mouse enters that task
then directRendering is enabled.
-- when a task that wasnt launcher was inAttention
state and was bouncing and the user was clicking it,
the animation wasnt that clear at its middle, there
was a small breakage.
--there were cases that window previews/tasks context menu/
title tooltips were shown at the same time. This patch fixes this
by adding timers to catch these case and show the above on
priority. The priority used is tasks context menu/window
previews/title tooltips
--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...
--the inAttention animation is being played by a
separate Loader, with this patch we hide the underground
original indicator in case it creates a visual
breakage in some cases
--in the initial design there was only a line for the
active task and the user could choose if wants to show
a second dot to indicate that this is a group of windows.
This behavior was updated in order to take into account
if the user has chosen to show only dots even for the
active task.
--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.