Commit Graph

71 Commits (b48c74ed08f155a8a087d7635a8124b92016685f)

Author SHA1 Message Date
Michail Vourlakos 7173d12625 return correct screen geometry from corona
--signal triggering for screenGeometryChanged(id)
can not be added yet as it is not plasma 5.8
compatible
Johan Smith Agudelo Rodriguez ab3acd35d9 reorder members
Michail Vourlakos 2af10514ed fix,restore adding docks in alternative session
Michail Vourlakos 9529fe8a3c fix adding dock at the bottom when shouldnt
--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
Johan Smith Agudelo Rodriguez 80f2199774 fix assertion when id is -1
Michail Vourlakos 610e0d6a74 fix #285,expanded to false for applets
--when changing session all the applets from
the previous session should hide their
expanded options
Michail Vourlakos d8410ff235 fix #277,use normal dock window from tweaks
-- with this setting the user can disable
the BypassWindowManagerHint flag for specific
docks
Michail Vourlakos bb7235879b move autostart code in globalSettings
Michail Vourlakos e57d525824 create globalsettings for corona
--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
Michail Vourlakos 7b060c22a5 fix #272,expose alternative session in menu
Michail Vourlakos 3542a3e66c restore availableScreenRect behavior
--when an id is sent that is not contained
at stored screens then the primary screen
geometry is used instead
Johan Smith Agudelo Rodriguez 26756143f1 fix assertion if id is -1
Johan Smith Agudelo Rodriguez 2b5974ef43 restoring compatibility for plasma 5.8
Johan Smith Agudelo Rodriguez da800a11a8 fix assertion over debug message
Johan Smith Agudelo Rodriguez fb16fee66b fix , Incorrect/inconsistent behaviour when switching virtual desktops
Johan Smith Agudelo Rodriguez e26f316e67 implicit conversion
Michail Vourlakos 97e57550bf fix #102,show apps menu with Super key
--this needs from the user side to add
in the .config/kwinrc

[ModifierOnlyShortcuts]
Meta=org.kde.lattedock,/Latte,org.kde.LatteDock,activateLauncherMenu
Michail Vourlakos 4ea4a903fd fix #152,support an alternative session
-- On The Road was renamed at Alternative
Session and more improvements to the code
were added
Michail Vourlakos 45e95788ed fix #152,add On The Road session
--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.
Michail Vourlakos 13325ca022 fix #238,disable/enable raise dock temporary
Michail Vourlakos 1a04ff968d fix #233,support autostart through tweaks page
Michail Vourlakos b8ce37d4c3 fix #198,recreate windows when it is needed
--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
Michail Vourlakos ead7892551 fix #194,the user can enable a solid background
--this is especial useful for plasma themes with big
transparency. Latte can not support blur and background
contrast kwin effects for panel backgrounds that are drawn
inside its qml side.
Michail Vourlakos 0b2bebfbd8 protect dock removal in some cases
--forbid removal of the last running dock with
tasks in it
--forbid removal of the last tasks plasmoid from
running docks
Michail Vourlakos 6010638094 support overlap dock cases by using free space
--this commit uses free region from corona instead
of free rectangle in order to calculate size and
positioning for the docks. This way is possible to
be positioned more intelligently.
Michail Vourlakos c510c74cc5 fix , comment new multi-screen behavior
--refer to last 6-7 commits that contain this new
multi-screen behavior
--the new multi-screen behavior becomes more intelligent.
Latte trys to never let you without a dock containing
tasks plasmoid. It trys to do that intelligently not
depending on how many docks you have registered and if
they are set to explicit or primary ones
Michail Vourlakos 81dfa36cef set a timer for sync docks screens
--add debuging message
Michail Vourlakos 2e54a90eef fix right edge positioning
--do not load primary screen when the specific
edge is occupied in the primary screen
Michail Vourlakos 5421b976fa remove on primary docks on special cases
--primary docks are removed when their edge is
occupied in the new primary screen and their
current screen is destroyed. Also they are added
when the screen edge is available
Michail Vourlakos 74770a9f37 dock containing tasks is protected in multi-screen
--the last dock containing tasks can not be removed
automatic by Latte based on screens heuristics
--on startup Latte checks if a dock containing tasks
will be loaded based on screens associated. If it
doesnt it loads the first dock containing tasks and
puts it on primary screen and setting also its flag
to onPrimary
--on the configuration window when a dock changes from
explicit to primary screen by latte automation the
record of the previous screen is shown correctly
Michail Vourlakos 52c8673aad semantic improvements
Michail Vourlakos 18f57f51fd block screen change when edge is occupied
--unfortunately this contains also white spaces
fixes. Sorry for this but by implementing multi-screen
the laptop wasnt correctly configured for
astyle and whitespaces
Michail Vourlakos b88170caaa support always on primary case
-- :) fantastic behavior from Latte...
Michail Vourlakos 03fc80439a fixes for plasma behavior and screens ids
--there are cases that screens instead of returning
correct screen names the return names like
"0:0". These are totally ignored in order to not
break the screen ids database
Michail Vourlakos 14b72f49e6 restore add/remove dock buttons
--also use a single timer for screen sync
for dockview
Michail Vourlakos 9259a28cde improvements to add/remove docks on screen demand
Michail Vourlakos 8a7bb2942c add basic multi screen support
--the user can change the dock's screen
from the configuration window... Optimizations
must be made of course in the future...
Michail Vourlakos d4da25e2e6 add a screen pool for multi-screens
Johan Smith Agudelo Rodriguez fbf5808667 update commandline options
Johan Smith Agudelo Rodriguez 75d4b71216 , AbstractWindowInterface is now a shared resource
Michail Vourlakos 55f88360c2 Revert "block dock hiding when alternatives are shown"
This reverts commit ddd1a57875.
Michail Vourlakos a430d85119 block dock hiding when alternatives are shown
Johan Smith Agudelo Rodriguez 0d325f827f fix , Support Alternatives from the Context Menu
Michail Vourlakos 827bde86d4 fix , remove QueuedConnection
Michail Vourlakos 65a2367fd6 fix , endless showing loop at startup
--in a multi-screen environment that
 primary screen is not set to 0 it was
 created an endless showing loop at
 startup (catch-up race) between
 screen:0 and primaryScreen
Michail Vourlakos 3ab252339c fix #116,add protections in multi-screen
Johan Smith Agudelo Rodriguez 988ffdae35 fix position when external shadows is enable
Johan Smith Agudelo Rodriguez 0592ba3aaf avoid overlaping
Johan Smith Agudelo Rodriguez 8c820073f0 fix narrow casts
Michail Vourlakos 0476a85aab fix #155,fix availableScreenRect of latte corona
--this is based on the plasma implementation