--fix separators, spacers corner cases behavior
--dont apply hidden spacers for separators and
spacers
--remove the plasma panel spacer reference which
is deprecated and not used any more
--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
--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
--this patch positions correctly behaveAsPanel view
types in !compositing mode concerning and taking into
account maxLength and offset
--the patch introduces also an AppletsContainer to
substitute all three layouts of LayoutsContainer
--this is side-way path for mouse events and
more specific the mouse pressed, released
events to be sent from parent window to its
qml containment part. This way it is possible
to keep the original plasma applet behavior
such as original plasma tooltips and provide
Latte specific functionality such as animated
clicks from indicators.
NOTE: An investigation - testing took place in
order to check if this approach could be also used
for mouseMove events to be used for applets parabolic
effect. The result was that this was not possible because
there were too many signals and too much calculations
too identify for which applet the signal belonged to.
The parabolic effect was not fluid in that case and
could not catch up.
--infrastructure is now ready to expose to
applets the full color paletter and not
make compromises by choosing only from
original plasma theme for some of the
exposed colors
--dont reverse colors for selection group.
It creates a much nicer effect from user point
of view to keep the highlighting colors the
same for both the normal and reversed plasma
themes.
--providesHoveredAnimation, in order to disable
the Latte one
--providesClickedAnimation, in order to disable
the Latte one
--needsMouseEventCoordinates, in order to know
when the mouse pressed e.g. creating animations
like the android way
--fix how applets are identifying their index when the
user switches alignments from Justify to Another and
vice versa. More specific this patch helps in order to
not break the parabolic effect between alignment changes.
--the Latte Settings window tries its best in order
to provide a nice experience concerning its width/height
ratio and a width size that is best for its contents.
There are cases that this fails so the user in the
best to set it right. Latte now provides two shortcuts
Meta+Scroll, that changes the width scale ratio and
Ctrl+Scroll, that changes the height scale ratio when
settings are in Basic mode.
The previous shortcuts must be applied when the mouse
is over the empty areas in the Settings View window.
--based on the current indicator there minimum
thickness and indicator padding can be altered.
Providing some visual feedback for the user to
understand these limits is a good practice.
--there is a combinantion of settings that enables
plasma original applet behavior.
1. the applet is locked and is not using parabolic effect
2. the zoomfactor === 1 and the user has not activated
title tooltips
Summary:
When iconSize is not big enough, center aligned shortcut badges look better than top-left aligned ones.
BUG: 406037
Test Plan:
- When iconSize < 48: shortcut badges are center aligned
- When iconSize >= 48: they are top-left aligned
For example, with iconSize = 32:
Before:
{F6736365}
After:
{F6736366}
Reviewers: #latte_dock, mvourlakos
Reviewed By: mvourlakos
Subscribers: mvourlakos, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D20128
--introduce a new class called level which contains
all the needed information concerning indicator level
and at the same time the bridge that provides information
for the specific indicator states
--try to improve experience for liveEditingMode and
inConfigureApplets. LiveEditingMode should be as much
as nearer to the standard experience and inConfigureApplets
state should provide nice coloring
--in order for all indicators infrastructure to
load the plugin correctly the configuration and
the component elements of ViewPart::Indicator
must be loaded first correctly and afterwards
the relevant Indicators to follow
--there is now an always shown underlying layer that
provides full solidness for 100% panel transparency
--Colorizer.CustomBackground was updated in order to
support Borders drawing
--indicators now support both Back/Front
layers. Back layer is the usual layer
behind the current Item and the Front layer is
a layer above the current Item (overlay)
--update Unity to follow new architecture
--now that masking is used in order to subtract
mask areas that overlap with underlying config
windows, the edit shadow can be as big as we
need with no problems
--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
--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
--improve and restructure all editMode in order
for Ruler and EditMode to be ready to accept more
direct available settings in settings overlay
section.
--first commit to restructure editMode in order to
support livemode under editing. Live mode means
that all options changes during editMode will be
available to be tested directly
--applets can now use the LatteBridge in order
to send/receive messages between them. A good
example of this could be the window title and
the window appmenu applets in order the hide
and show themselves based on mouse hovering.