Commit Graph

157 Commits (316b6fb6df79b6a90b8287675a0718761a0b795a)

Author SHA1 Message Date
Michail Vourlakos 091295126d support loading for the new architecture 8 years ago
Michail Vourlakos db08a09bbf Importer importes the containments correctly 8 years ago
Michail Vourlakos 1a9ea88bc8 add LayoutSettings class and expose classes 8 years ago
Michail Vourlakos 06ddef8506 cnew architectures classes,add missing licenses 8 years ago
Michail Vourlakos 720a5e5123 update main layout config files 2s after loading
--we update the main layout config files 2secs after
the main layout loading
8 years ago
Michail Vourlakos 67d1f1d4f9 fix #565,full dynamic reload the layout
--the new layout is loaded without closing
Latte and with properly loading globalSettings
and screen from the layout file. The layout
new files are updated when Latte is closing
8 years ago
Michail Vourlakos b417ae52c3 support dynamic layouts loading 8 years ago
Michail Vourlakos c72f7f4531 fix #573,improve the primary docks behavior
--users reported that when activating an external screen
as primary and at the same time disabling the original
screen e.g. the laptop one, latte wasnt showing docks at
all. This could also occur on startup. This commit
fixes this and improves more the multi-screen code in
various corner cases
8 years ago
Johan Smith Agudelo Rodriguez 1e8fc4a739 Wait for ContainmentView destruction 8 years ago
Johan Smith Agudelo Rodriguez ae3c856346 keeping compatibility with gcc 4.8 8 years ago
Michail Vourlakos 0bd90b8fd2 improve recreate dock implementation
--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.
8 years ago
Michail Vourlakos 69c28eff7a fix #537,reenable show() on dock creation
--this code has been checked to not break both
wayland with plasma 5.10 and x11
8 years ago
Michail Vourlakos 5e1d851888 delay the recreation of a dock
--when recreating a dock it might be a good idea
to delay a bit in order to give to the config
window the time to delete itself
8 years ago
Johan Smith Agudelo Rodriguez a6bcc53aad Cleaning up a bit before implementing always visible 8 years ago
Michail Vourlakos 111d59e1c5 fix crash with qt5.9 and wayland
--the show() function of a wayland surface shouldnt
be called before the surface is created. In other case
in qt 5.9 creates a crash
8 years ago
Michail Vourlakos ab045b2e9d fix #537,add copied dock properly in explicit scr
--the copy dock function now works properly in a
multi-screen environment
8 years ago
Michail Vourlakos cf86fddeec fix #537,properly set copy location in multi-scr 8 years ago
Michail Vourlakos 9ccf9978be update docksCount on screen changes 8 years ago
Michail Vourlakos a05785e34b differentiate dockNo perScreen and total
--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
8 years ago
Michail Vourlakos 97b3c4f854 update algorithms for docksCount,freeEdges
--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
8 years ago
Michail Vourlakos 973cc935fc always set explicit screen on copy method 8 years ago
Michail Vourlakos 5eb63a3cbc move new copied dock to explicit screen
--if the new copied dock is on a multi-screen
environment the algorithm adds it in the first
available alternative screen that has the same
edge free
8 years ago
Michail Vourlakos 2078cb1cb2 support copyDock correctly from corona
--the code copies the containment configuration
and also if there is a systray in it
8 years ago
Michail Vourlakos b0ebfdbe4f first approach to copy a dock 8 years ago
Michail Vourlakos 575ff06a66 support window placement in wayland!!! :) 8 years ago
Michail Vourlakos 4de9ea1e7e add globalshortcuts class to improve semantics
--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
8 years ago
Michail Vourlakos 4381384d20 add deleteLater instead of delete for dockView 8 years ago
Michail Vourlakos 7d3458d45c support behaveAsPlasmaPanel in the dockview 8 years ago
Michail Vourlakos a8c6e2f342 disable debug message for dbus calls 8 years ago
Michail Vourlakos 883750267a add external config file and support presets
--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
8 years ago
Michail Vourlakos 26d5ba4a64 fix #415,disable ByPass flag by default 8 years ago
Michail Vourlakos 738dc50fff Merge branch 'v0.6' into master 8 years ago
Michail Vourlakos 597c457b9b fix #385,load font through QFontDatabase 8 years ago
Michail Vourlakos 4f030849f0 expose through dbus updateBadge for dock items
--apps can sent through dbus and identificator
e.g. "kmail" and a value for unread mails e.g.2
Latte afterwards will update that specific badger
8 years ago
Michail Vourlakos b034e748bb fix #365,support shortcuts to activate tasks
--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
8 years ago
Johan Smith Agudelo Rodriguez adf82df246 fix #355, Request for new visibility policy: Windows Go Below 8 years ago
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
8 years ago
Johan Smith Agudelo Rodriguez ab3acd35d9 reorder members 8 years ago
Michail Vourlakos 2af10514ed fix,restore adding docks in alternative session 8 years ago
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
8 years ago
Johan Smith Agudelo Rodriguez 80f2199774 fix assertion when id is -1 8 years ago
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
8 years ago
Michail Vourlakos d8410ff235 fix #277,use normal dock window from tweaks
-- with this setting the user can disable
the BypassWindowManagerHint flag for specific
docks
8 years ago
Michail Vourlakos bb7235879b move autostart code in globalSettings 8 years ago
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
8 years ago
Michail Vourlakos 7b060c22a5 fix #272,expose alternative session in menu 8 years ago
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
8 years ago
Johan Smith Agudelo Rodriguez 26756143f1 fix assertion if id is -1 8 years ago
Johan Smith Agudelo Rodriguez 2b5974ef43 restoring compatibility for plasma 5.8 8 years ago
Johan Smith Agudelo Rodriguez da800a11a8 fix assertion over debug message 8 years ago
Johan Smith Agudelo Rodriguez fb16fee66b fix #246, Incorrect/inconsistent behaviour when switching virtual desktops 8 years ago
Johan Smith Agudelo Rodriguez e26f316e67 implicit conversion 8 years ago
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
8 years ago
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
8 years ago
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.
8 years ago
Michail Vourlakos 13325ca022 fix #238,disable/enable raise dock temporary 8 years ago
Michail Vourlakos 1a04ff968d fix #233,support autostart through tweaks page 8 years ago
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
8 years ago
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.
8 years ago
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
8 years ago
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.
8 years ago
Michail Vourlakos c510c74cc5 fix #214, 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
8 years ago
Michail Vourlakos 81dfa36cef set a timer for sync docks screens
--add debuging message
8 years ago
Michail Vourlakos 2e54a90eef fix right edge positioning
--do not load primary screen when the specific
edge is occupied in the primary screen
8 years ago
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
8 years ago
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
8 years ago
Michail Vourlakos 52c8673aad semantic improvements 8 years ago
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
8 years ago
Michail Vourlakos b88170caaa support always on primary case
-- :) fantastic behavior from Latte...
8 years ago
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
8 years ago
Michail Vourlakos 14b72f49e6 restore add/remove dock buttons
--also use a single timer for screen sync
for dockview
8 years ago
Michail Vourlakos 9259a28cde improvements to add/remove docks on screen demand 8 years ago
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...
8 years ago
Michail Vourlakos d4da25e2e6 add a screen pool for multi-screens 8 years ago
Johan Smith Agudelo Rodriguez fbf5808667 update commandline options 8 years ago
Johan Smith Agudelo Rodriguez 75d4b71216 #199, AbstractWindowInterface is now a shared resource 8 years ago
Michail Vourlakos 55f88360c2 Revert "block dock hiding when alternatives are shown"
This reverts commit ddd1a57875.
8 years ago
Michail Vourlakos a430d85119 block dock hiding when alternatives are shown 8 years ago
Johan Smith Agudelo Rodriguez 0d325f827f fix #48, Support Alternatives from the Context Menu 8 years ago
Michail Vourlakos 827bde86d4 fix #116, remove QueuedConnection 8 years ago
Michail Vourlakos 65a2367fd6 fix #116, 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
8 years ago
Michail Vourlakos 3ab252339c fix #116,add protections in multi-screen 8 years ago
Johan Smith Agudelo Rodriguez 988ffdae35 fix position when external shadows is enable 8 years ago
Johan Smith Agudelo Rodriguez 0592ba3aaf avoid overlaping 8 years ago
Johan Smith Agudelo Rodriguez 8c820073f0 fix narrow casts 8 years ago
Michail Vourlakos 0476a85aab fix #155,fix availableScreenRect of latte corona
--this is based on the plasma implementation
8 years ago
Michail Vourlakos 41e79cf188 support debug flags from the runtime
--the user is able to set some additional
debug flags in --debug state by just executing
the application.

supported flags:
--with-window: provides a separate window
to show metrics from each separate dock
--graphics: visual indicator for the various
elements
--mask: additional debug messages concerning
mask calculations
8 years ago
Johan Smith Agudelo Rodriguez fedb872e4a Merge branch 'master' into about-dialog 8 years ago
Johan Smith Agudelo Rodriguez 2e8fe37fd2 #98, added about dialog 8 years ago
Michail Vourlakos ca97e6d486 disable more debug messages 8 years ago
Michail Vourlakos 13fa35c99a fix #75, improve loadLayout on startup
--loadLayout is called only once and when
the activities service is in ready state
8 years ago
Michail Vourlakos fd40ef7f4d update locations when dock changes location
--updates the available locations in the configuration
window when any dock updates its location
8 years ago
Michail Vourlakos 2c0e536cf9 remove old applets config from active containments 8 years ago
Johan Smith Agudelo Rodriguez 05163c2911 code cleaned 8 years ago
Johan Smith Agudelo Rodriguez 9cb5b44b93 master merged on audoban2 8 years ago
Michail Vourlakos 5b1d152dc9 fix #84,closing Latte cleans config file
--when Latte is closing removes all entries for
containments that are obsolete
8 years ago
Johan Smith Agudelo Rodriguez 3a627a8d65 Free resources for dockview 8 years ago
Johan Smith Agudelo Rodriguez c42250d9bb avoid white spaces with astyle 8 years ago
Johan Smith Agudelo Rodriguez 2307efd4c4 clean up code #79 8 years ago
Michail Vourlakos 0f658a1e54 fix #76, add waiting dock views
--add m_waitingDockViews which are waiting
for removal confirmation. Using destroyedChanged
signal from containments in order to support
the behavior
--improve freeEdges code based on
the docksCount implementation
8 years ago