--the new implementation possibly fixes two crashes
that could occur occasionaly. First it is ensured
that the new dock in created after the old one has been
removed. We also use directly the containment instead
of using a reference for it which could create a crash
in some cases. One more fix, setting dock visible to false
had no reason as long as it is going to be deleted either
way.
--improve the signaling between the configuration window
and the dockview concerning freeEdges for current screens
and docks count. Now the docks counting is different
between screens and in general
--the new algorithms are using QScreen* values
from dockviews instead of the containment screen()
which can not be trusted at the first minutes
of a dock creation
--the globalshortcuts class contains all the relevant
code and includes also some functions that were used
from corona to trigger changes into the Latte Tasks
plasmoid
--this patch adds an external config file in
order to store the user layouts. Adds also in
the globalSettings the layouts mechanism
--todo: the confirmation dialog is not working
correctly for some reason. It doesnt return
the accept value and on the exec() function
is crashing
--this patch supports activation through shortcuts
--Meta+number, activates the relevant task, for
groups by default it activates the next available
window in the group
--Meta+Ctrl+number, create a new instance for that task
or launcher
--the user should know that must first enable these
shortcuts at plasma global shortcuts configuration
window
--if the user was adding docks too fast then
some of them were added at the bottom because
that was conflicting with the session
implementation. The fix fixes the situation
and preserves the alternative session functionality
--first all the code concerning exposeAltSession
is moved in it and in the future also the autostart
and currentSession can follow. This will improve
both dockview and configview
--this needs from the user side to add
in the .config/kwinrc
[ModifierOnlyShortcuts]
Meta=org.kde.lattedock,/Latte,org.kde.LatteDock,activateLauncherMenu
--the user is able to change into another
session/profile called "On The Road" for
which can set up its docks and applets
differently according to its needs. For
example hide its name, status, place
living etc.
--in order for a dock to be above KeepAbove
windows must contain flag BypassWindowManagerHint.
Unfortunately this flag breaks the experience with
AlwaysVisible state especially the struts and
snapping behavior. This patch recreates a
dockView when a mode is changed and an
update for the flags is needed.
--at the same time move the localGeometry to
dockView in order to trigger properly the
updateAbsGeometry when it is needed, on
window's geometry changes not only when there
is local geometry change
--when a dock is created through corona, the
addDock function reads the mode which is going
to be used and specifys this way the flags that
have to be set during docks creation