--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
--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.
--following issue from #730 more qml code
was found that wasnt releasing connect signals
properly. That could create crashes because
already deleted qml objects could receive such
signals. That was observed after qt>=5.9.2
--trying to show all tasks in all states directly
when the environment is in !compositing
--block all animations (removals/showings) when
the environment is in !compositing
--add more animation phases in order to provide
a better experience for the inAttention bouncing
animation
--add visual debuggers for the spacers and padders
needed for the bouncing animation
--move the release of signals manual bindings for
tasks delegates from onRemove event of the delegate
at Component.onDestruction. The crash was happening
when the code path(onRemove event) wasnt occuring,
so the bindings werent released.
--a faulty check was using backgroundColor instead of
textColor for badges shown from global shortcuts indicators
--improve badges to understand the new url form of
plasma 5.11 launchers
--during assigning activities for a launcher
a window that had a launcher for the active
activity maybe doesnt have any more when it is removed.
in this cases the removal animation should be
played
--when two or more consequently launchers were bouncing
their animation was broken because they were changing
places. This patch catches these cases and provides
a proper way to show these animations.
--enable task margins for neighbour separator
when the internal separator is hidden but there
is an applet separator at the edges and the task
is found two steps far from the edge e.g.
pos=1 or pos=tasksCount-2
--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.
--during removing a TaskDelegate the window is destroyed
in some cases and the icon provided by libtaskmanager
is a unknown pixmap. In such cases we should paint the
last valid one. That way it is always painted the correct
svg file even when removing a window that doesnt have
a launcher and the libtaskmanager provides an unknown
pixmap for it
--the user can add a previewsDelay value in ms in the
latte plasmoid General settings which can be found
in a layout file in order to change the delay which
a preview is needed to be activated. Values lower
than 150ms are ignored because they break the previews
experience by providing faulty previews
--protect wheel actions in order to not trigger themselves
multiple times
--use a timer to achieve this goal in order to be able
to support also X11 systems that have previews enabled for
all windows (a behavior that normally breaks the isMinimized
state)
--when the dock is hidden or in animation no mouse
wheel actions are accepted
--laucher: only the up action is accepted in order to
activate that launcher
--window: up action shows the window, if it is shown
nothing happens,
down actions, minimizes the window, it is is already
minimized nothing happens
--group: up/down to cycle through the windows