--dodge modes now check in start if the dock contains
the mouse and thus dont make any other calculations
or calls to kwin if the dock contains the mouse
--as an example Firefox 55 triggers a windowChanged
event in every mouse movement. Thus the dock wasnt
appearing because it was sent a raideDock(false)
signal. Adding a containsMouse check for all dodgeModes
fixes this. A raiseDock(false) is never sent if
the dock containsMouse
--changed the design totally and use only signals
between plasmoid in order to update their models. This
way the launcherList from their tasksmodel should be
updated only on the initialization phase of the Latte
plasmoid. Afterwards signaling between them takes
place, in order to inform each other for adding,
removing launchers, moving them and assigning them
to activities
--the addDock code now checks if at the primary screen
in the specific edge there is already assigned an explicit
dock. In that case it doesnt add that primary dock
--during startup Latte checks if a tasks plasmoid
is going to be present (because of multi-screen settings).
Now these checks are also considering the case of
plasma taskmanagers
--there are cases that a layout file can be broken because
there are containments having same applet ids. This
check informs the user for such layouts when the
layout manager is appearing
-- copy dock method wasnt using correctly the signals
and the methods from containments during first loading
the new copied containments. That could create crashes
if the user was trying to remove a copied dock directly
after used the copy method
--Latte when loading a layout tries to identify if based
on the docks settings there will be at least one dock
containing a tasks plasmoid. This code was extended in order
to identify also the plasma taskmanagers. One more improvement
is that this code now is executed also when dynamically
changing layouts