Commit Graph

819 Commits (074d9efee17806e16af0a651d2c386616be61c3a)

Author SHA1 Message Date
Michail Vourlakos 074d9efee1 use all floating screen gaps for Fitt's Law 5 years ago
Michail Vourlakos 4cf929ea81 support containsMouse behavior for WindowsCanCover 5 years ago
Michail Vourlakos d9e18794c8 simplify keepabove/below calling
--start a bit to work with "Windows Always Cover"
visibility mode
5 years ago
Michail Vourlakos f9779d5284 introduce two new windows visibilities in options
--add options for visibility modes:
   - Windows Can Cover
   - Windows Always Cover
5 years ago
Michail Vourlakos 4bffa9736a improvements to settings layout
--fix also some left of warnings from
screen edge margin
5 years ago
Michail Vourlakos 6f7eebeec2 choose behavior for floating screen gap
--when the user has enabled dragging/moving active
window from floatings screen gap then that space
can not be used to activate applets. It is rather
used to drag/move/restore last active window.
5 years ago
Michail Vourlakos c8bd9553c8 update EnvironmentActions for screenEdgeMargin 5 years ago
Michail Vourlakos 6a17a3e67b only left click for applets neutral areas activate 5 years ago
Michail Vourlakos 6a95af5f8c option,always apply Fitt's Law for floating mode
-The use can specify to always apply Fitt's Law when
in floating mode
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 1c7eec05e3 send only screenEdgeMargin to applets/indicators
--screenEdgeMarginEnabled value is not really needed
to applets and indicators. Only the margin value
applied is of importance in order to place themselves
properly.
5 years ago
Michail Vourlakos 06fdd0d703 make screenEdgeMargin aware some elements
--update some containment elements and make
them screenEdgeMargin aware in order to be
positioned properly
5 years ago
Michail Vourlakos 896afcc068 support screen edge margin for behaveAsPlasmaPanel 5 years ago
Michail Vourlakos a40ff9cf5b update CustomBackground to more border styles
--use screenEdgeMargin in order to support more border
styles for custom background component that paints
the underneath panel background for smart coloring.
5 years ago
Michail Vourlakos 8ee4b83461 update applets to screen edge margin awareness
--applets can now use the screen edge margin value
in order to follow Fitt's Law for floating docks/panels
if they want to. Latte takes case all applets of
course but in case an applet would like also to
to use also the space between the gap of the view
and the screen edge, it can so.
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 d31d7afb9d dont wait for dock to show for activate shortcuts
--when the application launcher is not a popup then
we do not have to wait for the dock show we can execute
the activation code immediately
--when Latte activates an entry can now understand
if a popup is going to be shown in order to delay
the execution. If a popup is NOT going to show either
for a latte task or an applet then the code is executed
immediately

BUG:415417
FIXED-IN:0.9.6
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 08be166ae3 increase grow/shrink distance limits
--automatic icon sizer is using a prediction
algorithm in order to decide to grow or not the
items size. There is a chance that the prediction
calculations are executed too early and as
such grow/shrink limits it is better to not
be to near to each other. That approach should
make the AutomaticItemSizer implementation a little
more robust.
5 years ago
Michail Vourlakos abd333ea63 fix debug window texts 5 years ago
Michail Vourlakos 484741558e add comments 5 years ago
Michail Vourlakos 2493971f03 improve atScreenEdge code 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 2577c33b7d improvements for margins/paddings
--fix also how firstVisibleIndex is tracked for
AppletContainer(s)
5 years ago
Michail Vourlakos 5c5084f7bb improve some semantics in AppletItem 5 years ago
Adrien Brunelat a21f46d85f
[414174] - Panel background transition color bug
Summary:
Added animation on background color change.
Removed test for background color that is not needed any more.

BUG:414174
FIXED-IN:0.9.5

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: ognarb, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D25392
5 years ago
Michail Vourlakos bfd72413d9 show a smaller indicator for atScreenEdge applets
--this is a temporary fix in order to provide a
visually pleasant result until the final fix for
Fitt's law is applied.
5 years ago
Michail Vourlakos 5aac422a65 Fitt's Law improvements for applets
--each applets layout can not identify properly
which applet is the first/last visible from its
contents. This way we can now identify properly
at all cases which applets should remove their
margins in order to follow Fitt's Law at screen
edges. For example when a windows buttons applet
is found at the screen edge and suddently it
hides itself then the next visible applet should
be considered at screen edge and such should remove
its margins in order to touch the screen edge.
5 years ago
Michail Vourlakos 453ac890ab remove exceptions for systray and indicators
--remove the layout exception for the plasma systray
and behave for this just all the rest applets
--fix indicators for applets in order to consider
properly the indicators padding and applets margins.
In other words the Latte indicators for applets should
not take up all the length provided but ONLY the
applet length + indicators padding (without at any
case the applet length margins)

BUG:414104
FIXED-IN:0.9.5
5 years ago
Michail Vourlakos 63ed290593 improve option "Hide Background when not needed"
--when option "Hide Background when not needed" is
used on its own activates or not the forceTransparentPanel
code path. So when that option is enabled and any
window is touching the Latte::View then the force
transparency codepath should be disabled. In such
case the user background settings are applied.

BUG:414071
FIXED-IN:0.9.5
5 years ago
Michail Vourlakos c2a1c20d92 expose colorScheme to lastActiveWindow(s)
--applets can now use the color scheme from lastActiveWindow
objects in order to paint some of their elements
5 years ago
Michail Vourlakos b9d82fe0f1 improvements for automatic icon size code path
--this patch add two fixes concerning automatic
icon size when contents exceed the view maximum
length.
--A) when the function is called then it also
called one more time after 1sec to confirm that
the icon size found is valid. In the past that
approach was creating an endless loop that should
not be triggered any more
--B) the grow limit was made to be equal with
the shrink limit trying to be more predictive from
the user when the items will grow or shrink. In
the future we must take care of this if the items
grow or shrink endlessly

BUG:411860
FIXED-IN:0.9.3
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 ac11a3a2d7 do not overlay applets when icon found !visible
--many applets are changing layouts and during that
process the main icon becomes invisile, in that case
the latte overlaied icon should also been disabled and
let applet paint itself accordingly

FIXED-IN:0.9.3
5 years ago
Michail Vourlakos f64f5107bb remove margins,!canbehovered applets in screen edges
--when an applet can not be hovered meaning to use
the parabolic effect and that applet is at the far
screen edge then margins can be disabled for this applet
in order to look exactly touching the screen edge
and at the same feel right following Fitt's Law
5 years ago
Michail Vourlakos 7663e86068 multiple fixes for different margins
--multiple fixes for margins all over the place. More
specific how they are calculated and when they are
used
5 years ago
Michail Vourlakos d8a32fa18a load an indicator for the view background
--this way the plasma android-style click can be
triggered for empty areas
5 years ago
Michail Vourlakos a385f49aea dont draw outline for plasma popups
--when the user of course has chosen the plasma
experience for applets popups
6 years ago
Michail Vourlakos 17621e0ffd check no panel shadows from windows states first 6 years ago
Michail Vourlakos cef15c3adc forceSolidness higher priority from busy background 6 years ago
Michail Vourlakos 5a2c59601c Indicators:different margins for applets
--indicators gained a way to set different margins
for applets if they want to
6 years ago
Michail Vourlakos edfd111d9a use only exter.margins for separators
--separators are only usings the external margins
between items. In the past it was also consider
the indicators internal padding. This is not
needed and it was creating too big empty
spaces with no real reason.
6 years ago
Michail Vourlakos 768a6b4b2a indicators can now offset a bit icons
--through level.requested options each indicator
instance can request specific repositioning for
each icon. Very good example for this is the
Win7 style indicator
6 years ago
Michail Vourlakos 2866b6a3aa plasma theme colors for !accelerated graphics
--fix also how accelerated graphics are identified
by using GraphicsInfo api
6 years ago
Michail Vourlakos 724a59eb23 add accelerated graphics checks all over the place
--when qml uses software rendering checks should be
added in order to not hide the visual elements. This
is taking place now in a more concrete way and checked
also that tasks with badges or not are still shown

BUG:411037
FIXED-IN:0.9.2
6 years ago
Michail Vourlakos 551edf01fb provide Progress information to indicators
--as a test case, the Plasma indicator now supports
the original plasma progress indicator of plasma
taskmanagers
6 years ago
Michail Vourlakos 153f5dab27 remove obsolete draggingStarted signals/slots
--draggingStarted signals/slots were used in order
to handle the active window dragging from empty areas.
The new approach ungrabs the mouse properly through
View relevant function and at the same time sends a
QEvent::Leave event to inform applets that the mouse
has left the view. This is enough in order to remove
any older draggingStarted workarounds and hacks.
6 years ago
Yuri Chornoivan 15ab253efd Fix minor EBN issues 6 years ago