Commit Graph

182 Commits (105b14de38adcf6daa4b69e24589678be8d1014d)

Author SHA1 Message Date
Michail Vourlakos 7f4ff70950 upgrader:Alignment instead of PanelPosition
--ContainmentQuickItem is now using alignment
in its configuration
5 years ago
Michail Vourlakos 1c88a97c55 app animations independent of plasma durations
--plasma durations can mess up the Latte animations
experience a lot. We now use our own set animations
durations which are independent of what the user
chose for plasma animations speed.

BUG:418883
5 years ago
Michail Vourlakos 4ad3880579 update PLASMAPANEL geometry immediate after hiding
--behaveAsPlasmaPanel can now slide in/out as real windows
but after they hide there is a chance that their geometry
should be updated. This patch makes sure that this will
happen exactly before the BEHAVEASPLASMAPANEL starts
sliding-in.
5 years ago
Michail Vourlakos 25677a01b5 block screen gap animations on startup 5 years ago
Michail Vourlakos 87f6330816 slide in/out nicely when hideThickScreenGap
--when the user has chosen to hide the screen gap
when there is a maximized window in the screen and
at the same time the View behaves as plasma panel,
it now slides in/out nicely
5 years ago
Michail Vourlakos e0c04a9c6f import:dont update view:local_geometry when hidden
--if this does not apply then local geometry are not valid
when views become hidden
5 years ago
Michail Vourlakos ecd39b4098 introduce minimum length option
--found also some fixes for mask calculations
in right or bottom alignment
5 years ago
Michail Vourlakos 1d8fe4541c Important:fix localGeometry calculations
--and add also new visual debug mode for
localGeometry calculations
5 years ago
Michail Vourlakos ab83bc5b2e fixes for BLUR in live editMode
--add also missing signal in Effects to updateEffects
when enabledBorders are changed
5 years ago
Michail Vourlakos 47f79db2ec improve show/hide functions of visibilitymanager
--test the new code both for x11 and wayland and check
out that it does not create crashes or any other new
bugs
5 years ago
Michail Vourlakos 90df4f4f61 support new visibility mode for SideBars
--SideBar views are shown/hide ONLY WHEN the
user has requested to DO SHOW from external
applets, shortcuts and scripts
5 years ago
Michail Vourlakos 9d30eb6257 support stick options for vertical views
--the user can now choose for vertical views to
stick their edges at the top or bottom screen edge
and ignore any top or bottom views accordingly. These
options are available in the Transparent Settings
area for vertical views and in advanced settings
mode.
5 years ago
Michail Vourlakos 6635f9fa8f mask fixes for some floating cases 5 years ago
Michail Vourlakos 87f86ebc75 trying to support masking for floating 5 years ago
Michail Vourlakos a9d4f91c05 add inSlideAnimation flag for ViewPart::Positioner
--it can be used in order to enable/disable some codepaths
5 years ago
Michail Vourlakos 1dc154f932 track inLocationAnimation of View:Positioner 5 years ago
Michail Vourlakos 10ce95597c slide out layouts when changing location 5 years ago
Michail Vourlakos dba2f3bc8b hide external shadows when real panel hidden 5 years ago
Michail Vourlakos 103de33c92 trying to implement real panels sliding in/ou 5 years ago
Michail Vourlakos 79705e9753 option to disable creenEdgeMargin for maximized
--improved settings for Floating windows in Behavior
tab and add a new option to hide ALL screen gaps meaning
both length screen and thickness screen gap when there
is a maximized window in the screen

BUG:415630
5 years ago
Michail Vourlakos 4cf929ea81 support containsMouse behavior for WindowsCanCover 5 years ago
Michail Vourlakos 32f02c871e consider also thickMarginsEnabled for screenEdge
--if thickness margins are disabled then it must not
be applied any screen edge margin
5 years ago
Michail Vourlakos 8194ee94bc inform applets/indicators for screen edge margin
--fix geometries publishing, update margins calculations
5 years ago
Michail Vourlakos 0ebef42513 add screenEdgeMargin and update border accordingly 5 years ago
Michail Vourlakos 5fff947091 improve panel background is shown identification 5 years ago
Michail Vourlakos 9dd798477e improve criteria for side panels dyamic touching
--Latte panels when they touch each other are informing
each other in order to provide consistent appearance. For
example the Unity mode where a top panel and a left panel
exist at the same time. In such case if the left panel is
INBUSY background state then the top panel is informed and
because inBusy state also. This way the top border of left dock
background does not look out of place. ON THE OTHER hand if
the left dock is hidden because the use has chosen auto-hide
visibility mode or any of the dodge(s) choices then the top
panel does not have to stay in isBusy state. The patch fixes
this by applying this behavior only when the left dock is shown
e.g. the mouse has entered the dock or the dodge mode is not
activated

BUG:415347
FIXED-IN:0.9.6
5 years ago
Michail Vourlakos 747d4870a0 introduce AutomaticItemSizer and add protector
--the automatic item sizer algorithm now is present
in its own class/responsibility area. As a new
improvement/fix the new implementation provides also
a protector/tracker that when the current prediction
to grow has already be applied two steps back in
history then the growing is not applied. This way
endless loops with growings and shrinks are blocked.

BUG:414180
FIXED-IN:0.9.5
5 years ago
Michail Vourlakos eb564fdc7d use automatic icon size for behaveAsPlasmaPanel
--this way the panel can be shrinked because it
exceeds screen boundaries even when view is used
as a plasma panel
5 years ago
Michail Vourlakos b078765d5c improve smartness for Unity case layout
--when a vertical view is in busy state and is touching
also a horizontal view that is fully transparent in
SMART mode then the visual result is not that good.
In that case it is better to show the view background.
The horizontal view background in that case can provide
three different states:
a) if the panel style for popups is activated then the
horizontal view will follow the plasma original style
b) if NOT [a] and solid background for touching windows
is enabled then solid background will be offered
c) if NOT [a] and NOT [b] then the isBusy state
transparency will be offered
6 years ago
Michail Vourlakos ab9fbc3727 support touching horizontal view and isbusy
--trying to increase smartness for horizontal
and vertical views. In multiple layouts environment
a view can exist in cases that one or more of
the sided views that is touching it is NOT
transparent, it would be nice for those
cases the top or bottom  view to LOSE also
its transparency in order to not look
inconsistent.
6 years ago
Michail Vourlakos 6f51a1b770 fix published absolute geometry in !compositing
--absolute geometry is the published area that the
dock/panel occupies when it is shown. So it should
not change when the dock becomes hidden. This patch
fixes the case for the !compositing environment.
6 years ago
Michail Vourlakos 3c9c36f0f2 update absolute geometry in !compositing slide-in 6 years ago
Michail Vourlakos c3b132b5c9 fix "Disabled KWin edges" for !compositing
BUG:410370
6 years ago
Michail Vourlakos 0cd1d702bb block view hiding when suddenly contains mouse 6 years ago
Michail Vourlakos 1b0de4f312 improve calculations for view mask and shadows
--improve how applet shadows are considered in order
to increase or decrease the view mask based on how
big or not are the applets shadows
6 years ago
Michail Vourlakos c05204ab7b enable windows tracking for draggingActiveWindow
BUG: 408266
6 years ago
Michail Vourlakos 3c97bd222e track how many applets need windowsTracking 6 years ago
Michail Vourlakos 50ddf87d4d improve margins for ruler only under editMode
--this way the mask under Normal mode is more
accurate
6 years ago
Michail Vourlakos ae4578433c dont track windows for AutoHide mode
--add initialization of values for views
tracking hints when enabled becomes false
--add some debug messages to be used when
we want to test out things
6 years ago
Michail Vourlakos a6b8fbcaff consider view::hidden state after slide-out 6 years ago
Michail Vourlakos a27ff3ec48 REFACTOR:Update LayoutManager to Layouts::Manager
--create "layouts" own directory in order to host
all LAYOUTS management/control code and classes
6 years ago
Michail Vourlakos 29157f4636 refactor:rename managedLayout to layout/viewLayout 6 years ago
Michail Vourlakos c38e3016de update hidden state after slide-in
BUG: 406415
6 years ago
Michail Vourlakos a2566d1414 move dodgeAllWindows to windowtracker 6 years ago
Michail Vourlakos 8a99a9249b improvements for !compositing mode
--fixed struts gap for !compositing mode in order
to handle the strange kwin behavior. Kwin under
!compositing removes 1px. from the struts specified
by windows
--plenty of fixes concerning automatic coloring
under !compositing mode
6 years ago
Michail Vourlakos 499c4eb1d1 update !compositing panelbackground used until now
--following plasma approach and use always
even for !compositing mode the widgets/panel-background
svg file. This way when Latte and Plasma panels are
combined there is uniformity between them.

BUG: 406597
6 years ago
Michail Vourlakos 105655310a improve edit mode sliding in animation 6 years ago
Michail Vourlakos 03f507b09c improve liveediting for maxLength changes
--the user can now get visual feedback also for
Justify mode changes that are influenced by
maxLength and offset changes
6 years ago
Michail Vourlakos 20a57f3c15 improve edge changing animation 6 years ago
Michail Vourlakos 5665efd31f add a publishing state to simplify things
--this way the syncGeometries calculations are
reduced
6 years ago
Michail Vourlakos db6a4e9d0d make struts and Always Visible lighter
--support them also in Live Editing
6 years ago
Michail Vourlakos 9d76dc7284 consistent metrics between different states 6 years ago
Michail Vourlakos 0b90411b1d IMPORTANT: All new Indicators architecture
--this huge commit contains all the changes needed
in order for Latte to load Indicators dynamically
from their own packages
6 years ago
Michail Vourlakos 8be388b893 improve vastly the indicators arch independence 6 years ago
Michail Vourlakos f06e3415de restore mask calculaltions for noCompositingEdit 6 years ago
Michail Vourlakos 25b636465a split animations and make par.effect independent 6 years ago
Michail Vourlakos 01e60370b0 consider shadows for updating needed mask
--avoiding circumstances that the shadows are broken
because the mask is too small
6 years ago
Michail Vourlakos f1a34ce437 add hacks in config windows for inner shadow 6 years ago
Michail Vourlakos e1c964ea34 move external shadow under liblatte2 6 years ago
Michail Vourlakos 0816e2b8aa fix top masking during editMode
--improve also identifying when subtracting
edit mode mask is needed
6 years ago
Michail Vourlakos c21d355f9a fix calculations for maxThickness 6 years ago
Michail Vourlakos 94415e24b4 improve config windows calculated geometries 6 years ago
Michail Vourlakos 736d068a44 improve masking for config windows
--now config windows are masked properly in order to
accessible to all of their areas. By design the config
windows are trying to be below the main view, this is
why masking is needed in order to work properly and not
having areas that can not be clicked/accessed because
of the top Latte View
6 years ago
Michail Vourlakos 542174f296 make edit visual totally dynamic
--meaning that edit Visual can contain more
elements than just the usual ones and as such
we can now add a "Rearrangement" option to make
things easier to switch between live/static editing
6 years ago
Michail Vourlakos 527cddb72d update Ruler and EditVisual
--improve and restructure all editMode in order
for Ruler and EditMode to be ready to accept more
direct available settings in settings overlay
section.
6 years ago
Michail Vourlakos 9615c7362b enable Blur in LiveMode 6 years ago
Michail Vourlakos 6db1ca7b5d fix typo 6 years ago
Michail Vourlakos c69271f9e0 restore panel thickness in editMode 6 years ago
Michail Vourlakos ab9eb5d536 consider also editMode mask requirements
--take into consideration the margin needed between
the contents and MaxLength ruler in order to calculate
correctly the thickness needed
6 years ago
Michail Vourlakos dd1c3f61b8 increase mask thickness when indicators needed it 6 years ago
Michail Vourlakos fb522d6231 introduce new margins for containment 6 years ago
Michail Vourlakos c6178e58bd only touching windows at DynamicBackground criteria
--at the same time disable Blur for isBusy state of
panel drawing

BUG: 404483
6 years ago
Michail Vourlakos 507e7ffde8 expose existsActiveWindow from windowstracker 6 years ago
Michail Vourlakos 7772ee2855 add Type property for Latte::View
Summary:
--this way any part interested to know the
real type of Latte::View it can access the
all new type() property

Test Plan:
test view settings that indicate correctly
the panel/dock type

Reviewers: trmdi, #latte_dock

Reviewed By: trmdi

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D18926
6 years ago
Michail Vourlakos 1e65211277 DodgeAllWindows now uses WindowsTracker
--this way we use the same code for Dynamic
Background and DodgeAllWindows
6 years ago
Michail Vourlakos 9b9072d8f6 update qml code to follow windowTracker 6 years ago
Michail Vourlakos ad5286279f rename properties appropriately in containment 6 years ago
Michail Vourlakos b3eaa35506 fixes for incorrect references 6 years ago
Michail Vourlakos 1bd4e648bc add visual feedback for Blur in editMode 6 years ago
Michail Vourlakos eab2851e4e respect Blur for forcePanelForDistortedBackground 6 years ago
Michail Vourlakos 5e09a41e99 refactor:remove no needed colorizer signals
--the new infrastructure to track background
brightness does not need communication between
universalsettings and view colorizer enabler
6 years ago
Michail Vourlakos 81335bc92f improve LayoutManager qml references 6 years ago
Michail Vourlakos f84043d28e REFACTOR:change dock in containment to latteView 6 years ago
Michail Vourlakos 67253eda9d REFACTOR:update qml to new Latte.Types 6 years ago
Michail Vourlakos 44006f2fe6 refactor:move dockTransparency to View::Effects
--rename dockTransparency to backgroundOpacity
6 years ago
Michail Vourlakos 885e438143 refactor:colorizerSupport moved to View::Effects
--renamed also from colorizerSupport to colorizerEnabled
6 years ago
Michail Vourlakos 3de7993b8d refactor:move shadow to Effects
-rename also to shadow to innerShadow for
better naming. This shadow is used when the
shadow is drawn inside the window from qml
side, such examples are the dock case and the
editVisual case
6 years ago
Michail Vourlakos 253ca3085a fix warnings 6 years ago
Michail Vourlakos 3a0a95e6a9 refactor: rename properties in View::Effects
--effectsArea became "rect"
--maskArea became "mask"
6 years ago
Michail Vourlakos 47c3d6fb41 refactor:move effects and mask at own dock class 6 years ago
Michail Vourlakos 71d648437f move dock positioning code into its own class 6 years ago
Michail Vourlakos 78b41eff91 use current transparency to update effects
--the background contrast effect should be applied
only when the dock/panel is visually solid otherwise
it may block the transparency settings

BUG: 397431
FIXED-IN: v0.8.1
7 years ago
Michail Vourlakos b5954009c2 Blur is not working for solid panels
--removing the option to check blurring
based on whether a panel is solid or not
and also check !compositing. Blurring doesnt
make any sense at !compositing environments

BUG: 396955
FIXED-IN: 0.8.1
7 years ago
Michail Vourlakos 62497561d2 Revert "wayland fix crash when changing location"
This reverts commit 797ead1f1d.
7 years ago
Michail Vourlakos 797ead1f1d wayland fix crash when changing location
--when a dock was changing location and kwin
effects where enabled then a crash was appearing
under wayland. So we block drawing effects when
a dock is inTempHiding or inForceHiding
7 years ago
Michail Vourlakos 285d00a21c dont blur in forceSolidPanel if it was deactivated 7 years ago
Michail Vourlakos da5cb9c61f fix #946,improve kwin edges support
--make the behaviour more robust and be more
precise at geometries used at all times
7 years ago
Michail Vourlakos 1f0acbc3b5 Support KWin Edges mechanism
--by default now Latte supports the KWin Edges mechanism,
this way the following issues are fixed:
fix #935, fix #721, fix #687, fix #512, fix #514
--improve dock behavior when the user user touch
gestures
--fix #144, support KWin bright placeholders
--this behavior can be disabled if the user prefers
the old one from the Tweaks page
--in !compositing no more is shown a 1px line at
the screen edge when the dock is hidden
--support KWin Edges in Multiple Layouts state under
X11
7 years ago
Michail Vourlakos edc8905ea8 improve slide out animation 7 years ago
Michail Vourlakos c6d755eb27 delay sliding-in when changing location
--the sliding-in is delayed a bit when
changing location in order to create a more
predictable animation for applets
7 years ago