Commit Graph

168 Commits (262b3bd23866bcdda1d1e8bd751d2c8038213148)

Author SHA1 Message Date
Michail Vourlakos 510974c3ff fix #356,expose offset in the dockview
--this patch updates borders correctly based
also on the offset variable
--fixes the calculations for offset and panel
background positioning
8 years ago
Johan Smith Agudelo Rodriguez 21321fb16c fix #344, edit mode still active when I change the session 8 years ago
Michail Vourlakos 761f088ea6 fix #331,set onAllDesktops early in the process
--the delay during creating dockview and setting
its dock window flags from visibilitymanager creates
a situation that the window manager temporary creates
a normal window with no special flags for the docks
8 years ago
Michail Vourlakos 241999579b fix #292,workaround for KF5.32 empty mask
--in KF5.32 FrameSvg returns many times a mask
that is an empty QRegion(). this patch makes
sure that at least our rectangular metrics
for masks and effectsarea are used instead.
Of course this means that themes with rounded
corners dont look as they should in !compositing
state
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 f371ea2a45 fix #275,top dock gains priority for AlwaysVisible
--the other docks must be also AlwaysVisible in order
for the top dock to be above them...
8 years ago
Michail Vourlakos df760a909a move currentSession 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 c0eaeca09c add effectArea in DebugWindow
--export correctly the drawEffects variable
8 years ago
Michail Vourlakos a4ee035c93 fix #270,enable blur for panel background
--the user can habe blur and background contrast
effects in all cases for the panel and can
also choose the behavior from Tweaks page
8 years ago
Michail Vourlakos fa2da5ceb1 fix #257,crash alternative session & !compositing 8 years ago
Johan Smith Agudelo Rodriguez 784710e6d2 include unused 8 years ago
Johan Smith Agudelo Rodriguez ac18a88e60 Merged branch master into master 8 years ago
Johan Smith Agudelo Rodriguez 0375e15d0a close config window before close latte 8 years ago
Michail Vourlakos c61c14e9be improve panel painting for disabled compositing 8 years ago
Johan Smith Agudelo Rodriguez 095dc50f1e fix restore connfig for raiseOnDesktop/ActivityChange 8 years ago
Michail Vourlakos 059a778765 fix #235,set icon for docks differently
--for some reason the icon name returned from
the metadata of corona is empty.This gets
the windowIcon set for the application.
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 32f2ebc8e0 improve proportion icon size with automatic icon
--when dock is changing screens and dock is using
an automatic calculated icon size based on contents
the automatic icon size must be recalculated for the
new proportion icon size
8 years ago
Michail Vourlakos 70e3c2bb7a expose dockview local geometry to qml 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 329ba8b6ff fix #126, improve behavior for auto positioning
--support also an edge case where a top and left dock
overlap each other but there is also a free space in them.
This case hasnt been taken into account into the previous
implementation
8 years ago
Michail Vourlakos f3dbd30ec1 signals to update free area
--more specific when the normalThickness or
shadow size are changed
8 years ago
Michail Vourlakos b2b4517ba8 fix crash from quit of configuration window 8 years ago
Michail Vourlakos 70c83d8b83 support blur/background contrast effects
--support these effects for docks that draw
their shadows externally with the window
server
8 years ago
Michail Vourlakos 2a8bd25e0e compute availableScreenRect only once
--this commit reduces into half the calculations
needed from the vertical docks in order to position
themselves based on horizontal docks. More specific
it makes the QRegion calculations only once for
each dock instead of two times
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 0f7df07ef1 remove no return error 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 d2e8dd7881 fix #218,reenable garbage collect and trim cache
--the clear component cache was disabled because on
exit it creates crashes when 2 and more docks are
running
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 fbf8cd3802 disable debug messages 8 years ago
Michail Vourlakos 81dfa36cef set a timer for sync docks screens
--add debuging message
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 5962cbc9bb stop timer on exit 8 years ago
Michail Vourlakos 6214318e09 change primary dock screen when relevant edge freed 8 years ago
Michail Vourlakos 38e3446db9 do not allow a primary dock overlap an explicit 8 years ago
Michail Vourlakos 2385e593d2 fix screen choosing from configuration window
--the check for the screen if it has the specific
edge free added some small bugs
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 0bef60838a disable flag ByPassWindowManagerHint 8 years ago
Michail Vourlakos 5f5cfbad35 fix #208,crash on exit through quit button 8 years ago
Michail Vourlakos 17d2626443 fix whitespaces 8 years ago
Johan Smith Agudelo Rodriguez d2b5487abd fix #198, flag ByPassWindowManagerHint 8 years ago
Michail Vourlakos c72e62a5d0 fix #12,multi-screen support
--this commit is just a small clean up that
acts as a reference for all the previous
10-12 commits that provide the new anticipated
multi-screen support. With multi-screen support
the user can set for its docks either to be always
on the primary screen or an explicit one... The
docks are loaded and removed automatically on
screen changes
8 years ago
Michail Vourlakos b88170caaa support always on primary case
-- :) fantastic behavior from Latte...
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 f46848e039 add screen information into debug window 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 c468353407 fix #116, update screen in screengeometry changes
--when the screengeometry was called the dockview screen
hadnt changed to primaryscreen, that had as a
consequence the dock to go to the primary screen
but because that was out of the boundaries of
its own screen to return again to first place
8 years ago
Johan Smith Agudelo Rodriguez 1ba8a62e07 remove property debugFlags of DockView 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 0a50e76bf6 disable debug messages 8 years ago
Michail Vourlakos a38dd1d91e disable debug message 8 years ago
Michail Vourlakos 4c0a97348c disable debug messages, fix masking positioning 8 years ago
Michail Vourlakos b7c42a5365 mouse events debug messages 8 years ago
Michail Vourlakos 81b36dc91e improve when dock can hide itself
--when an applet becomes activated then the dock
shouldnt hide itself until the applet to become
inactive
8 years ago
Michail Vourlakos 827bde86d4 fix #116, remove QueuedConnection 8 years ago
Michail Vourlakos 4579fcff46 protect crashes from containment() in dockview 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 b717a714f5 fix #154,crash on screenGeometry change
--strange thing is that the code producing
this was very weird. From the user's backtrace
syntax: if(!screen())
and more specific at updateEnabledBorders() of
dockview was creating the crash.
replacing it with syntax:
if (!this->screen())
fixes the issue
8 years ago
Michail Vourlakos 6dd4aa9982 fix, publish correct borders
--this fix publish the correct panel borders
that should be drawn according to alignment
and location. Improves also PanelBox heurestics
and should be also any shadows issues
8 years ago
Michail Vourlakos 09629b774b support drawing panel shadows outside dock window
--this is set by default only in case of Always Visible,
zoom factor 1.0, Justify alignment and maximum panel
thickness
8 years ago
Michail Vourlakos f9a2226457 prevent dockview crashes because screen in not set 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
Michail Vourlakos 84de2ad1e4 remove maxLength from dockview 8 years ago
Michail Vourlakos 9c3e8f891c fix occusional crash from right click triggering 8 years ago
Michail Vourlakos ca97e6d486 disable more debug messages 8 years ago
Michail Vourlakos 72baaa8809 fix #93,masking updated correctly on config win
--this can be tested by opening the configuration window
through the tasks. Even though a task is zoomed when
triggering the configuration window the animations
do not break afterwards
8 years ago
Michail Vourlakos 5a390e95b3 fix #96, fix right click for systray 8 years ago
Michail Vourlakos 254ad13536 small fixes with new right click menu
--this fixes right click in zoom factor area
for latte plasmoid and right click in containment
areas that dont have an applet
8 years ago
Michail Vourlakos 585cb154b7 improve systray and make it part latte experience
--improve right click behavior for systray and make it
behave according to latte experience
8 years ago
Michail Vourlakos 03eb69a618 simplify appletItems discovery for right click
--the containment becomes independent from dockView.
The appletItems which are needed in order to show
the context menu correctly are discovered from dockView
without any need of functionality from containment
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 2d2c7875e7 fix some qml warnings on dock removal 8 years ago
Johan Smith Agudelo Rodriguez 72bd7a0af8 fix #85, removing Dock crashes Latte 8 years ago
Johan Smith Agudelo Rodriguez 05163c2911 code cleaned 8 years ago
Michail Vourlakos af74c952ef fix two serious crashes from config window
--first is inside the freeEdges function call
on destruction
--the second is also in the app's destruction
because of the call to a destructed containment
through m_containment. This variable was deleted
8 years ago
Johan Smith Agudelo Rodriguez 6da8142351 disconnect all the signals in the destruction 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
Michail Vourlakos d641ec0b33 fix #54,dock is shown when applet needs attention 8 years ago
Johan Smith Agudelo Rodriguez 4ea00588e9 timer unnecessary 8 years ago
Michail Vourlakos 25f901cdee fix two crashes
-- one private slot was missing, right clicking
was creating a crash because of this sometimes
-- removing a second or third created dock was
causing a crash because visibilitymanager wasnt
removed in sync and correctly from the dockview
8 years ago
Michail Vourlakos a74fe28c18 consider shadow size for currentThickness
--this solves an issue concerning configuration window
placement when changing locations
8 years ago
Johan Smith Agudelo Rodriguez f844f91ac2 unnecessary sync 8 years ago
Johan Smith Agudelo Rodriguez 5d59cfb01c better debug info 8 years ago
Johan Smith Agudelo Rodriguez dd7009e96e reduced number of calls to syncGeometry 8 years ago
Johan Smith Agudelo Rodriguez 2cb031ee50 improve auto sync geometry, and cleaning code unused 8 years ago
Michail Vourlakos c831f3f8c6 fix #25, set dock's geometry correctly 8 years ago
Michail Vourlakos dd091b6569 restore layouts in main config window
--the latest fix for the configuration window placement
does not need to drop the clean implementation with
layouts
8 years ago
Michail Vourlakos 1ffa4e9ab4 fix correct placement of config window in startup 8 years ago
Michail Vourlakos fba9d62ee2 fix #50, update config window location
--fix also some crashes concerning the existence
of multiple config windows from different docks.
8 years ago