--reduce workarounds for tasks previews and simplify
the previews model case. Now all previews, both single
window and group are using the same delegate in
order to be drawn
--in the past in order for previews to be valid
we had to hide and reshow previews after each
current task changing. As it appears this might
not be needed any more, let's try to disable it.
--update previews immediately after first task with
preview is shown. All the rest tasks showing previews
should trigger their previews showing immediately.
Only the first task when previews are not shown
must trigger the delayer
--provide an option for previews to work as a
popup window[new] or as tooltip[classic]
--multiple fixes to show/hide previews based on
user preferences from left click and hovering
a task
--move the active window line as the last item
of Preview column in order to be always drawn and
never overlap with previews or previous items
--when parabolic zoomfactor===1 a rare case
was that some tasks were appearing pixelated.
By disabling the Tasks Icons mathimatical roundness
this looks fixed.
--finally after two years I found why there was a glitch
when the parabolic effect was hovering from Task into
an applet and vice versa. Tasks were rounding their
size before exposing it to container. Now this is fixed.
--Drag a task animation is now improved to be a little
more responsive and to inform also its mask requirements
to animations
--AppletItem::clip was introduced in order to
avoid circumstances that applets exceed their limits
and as such still events from surrounding applets.
Because of that change applets should now apply
their layout properties as valid all the time
--use a single slot when View triggers its workarounds
for the kwin issue that kwin hides panels when an activity
stops. In such case the view shadows are also redrawn.
--during scrolled tasks the scrolllable list
now is autoscrolled properly when the user
is repositioning launchers through dragging
or when dragging external files over tasks
and launchers
--a new implementation is needed which is going
to be simpler and lighter. Removing the current
implementation, parabolic effect works just fine
without issues and feels more responsive.
--the new implementation relies on items in order to
forward scale signals properly to their neighbours. So
parabolic effect does not have to know separators and
hidden items any more. As it appears it is lighter
also and more responsive. This is a very important
milestone for the parabolic effect.
--various improvements/fixes for previews and highlight
windows in new plasmoid architecture. All tasks settings
are now stored in applet level and not in containment
level
BUG:420692
--an better plural naming was chosen in order for
for consumers to distiguish abilities purpose. Abilities
are designed to be use by multiple applets and
containers
--improve types and references and add types splitted
at better places. So now we have
- LatteCore.Types that are global for all components
- LatteTasks.Types that are private to tasks plasmoid
- LatteContainment.Types that are private to latte
containment
--introduce AppletAbilities qml library which is going
to be available to all applets to use it freely. In the stage
all components will be qml-only but in the future when
any of the components have been stabilized for their
apis then many of them could gain c++ implementation
--use a more logical organization for types. LibLatte2
is split to become LatteCore library and Latte types
are now moved to application level. The Latte Types will
be split even more... Tasks-Only related types will
become Latte.Tasks types
BUG:420210
--First steps in order to support mulitple Tasks
applets in the same dock and panel.
--Step1: migrate values from Containment to Task
applet.
--Step2: deprecate Task applet options that are
found in containment
--Step3: provide multiple dynamic Tasks tabs in
settings
--update implementation to use "root.location"
instead of root.position
--update implementation to use "root.alignment"
instead of root.userPanelPosition
--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
--remove no-needed anchors changes state for Task.IconItem
and at the same time fix the size calculations for IconItem.
There were cases for Views that did not use the parabolic effect
at all and Tasks contained single windows tasks (that did not
have launchers assigned), these specific tasks were
appearing at minimum icon size 16px. even though the user
had set much greater values.
--a new Wheel action is introduced to Tasks and
the user can now choose to disable wheel actions
only for tasks OR cycle through grouped tasks OR
upwards cycles trhough grouped tasks and downwards
minimizes them.
BUG:416096
--enabledForApplets and lengthPadding for indicators
has now moved to indicators responsibility to handle
--as a consequence usesPlasmaStyle has been removed
from indicators API. The corner cases that indicators
conflict with plasma theme applets should be handled
differently and in a different way
--requesting from users a different way to remove
the Latte Tasks plasmoid if they want to is not
a good hig. Reenabling the classic ways to remove
Latte Tasks. The user can now use the applet tooltip
to remove it or by right clicking it in Latte
edit mode. Because of this the Tasks->Recycling
button is not needed any more.
BUG:415274
after dragging a task, the task should return to
normal state. In qt 5.14 default states that have
a "when" property do not play well
BUG:415333
FIXED-IN:0.9.6
Summary:
- Add `Configure Latte Global Settings...` because it's too hidden in Layout > Configure and does not relate to the Layout menu.
- Insert a new `Separator` to separate between Global settings and View settings (see screenshot)
- Rename `Panel/Dock Settings` to `Edit Panel/Dock` (Verb + Noun)
- Rename `Layout > Configure...` to `Layout > Manage Layouts` (Verb + Noun)
Menu Items Order:
a. -separator-
b. Layouts->
c. Configure Application...
e. -separator-
f. Add Widgets...
g. Edit Dock...
h. -separator- [only for Tasks plasmoid]
i. Close... [only for Tasks plasmoid]
BUG: 415584
Test Plan:
Before:
{F7844554}
After:
a. context menu of applets
{F7845184}
b. context menu of a task that hasn't/has one window shown
{F7844944}
{F7845185}
c. context menu of Latte Tasks plasmoid when used on the desktop
{F7845186}
{F7845187}
Reviewers: #latte_dock, #vdg, mvourlakos
Reviewed By: #latte_dock, mvourlakos
Subscribers: ngraham, ndavis, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D26238
--update the publish task geometries code
in order to identify also when the dock
has hide itself or is fully shown properly
and update the published task geometries
accordingly
--screenEdgeMarginEnabled value is not really needed
to applets and indicators. Only the margin value
applied is of importance in order to place themselves
properly.
--use screenEdgeMargin in order to support more border
styles for custom background component that paints
the underneath panel background for smart coloring.
--this way in multiple layouts mode when switching
different layouts the tasks/launchers are sliding in/out
only when we switch between different activities in
the same layout and NOT when switching between different
activities in different layouts
--meaning to not activate the previews window in that
case. Single windows should be activated immediately
after left click, previews are not necessary in that
case.
FIXED-IN:0.9.2
--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.
--through level.requested options each indicator
instance can request specific repositioning for
each icon. Very good example for this is the
Win7 style indicator
--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
--when qml software rendering is enabled the ShaderEffects
do not work. Hiding sources in that case is hiding
from the user tasks and applets with no visual feedback.
Sources in that case should hide themeselves and give
the user the minimum which is the original drawn contents.
BUG:410920
FIXED-IN:0.9.2
--the user can now choose to enable or NOT 3D
style for all badges through Latte Global Preferences
window. By default the Flat style is preferred
BUG: 409467
--The user from Tasks,Badges can choose a more prominent
color for notification badges (usually reddish). In case
the user has not enabled that option(default) then the plasma
theme highlight color is used which is also the default
option of Latte v0.8
BUG: 408955
--the user can now adjust the Scrolling options
for its Tasks when the items overflow. The following
are provided:
Scrolling: ENABLE/DISABLE
--Manual Scrolling: DISABLE/PARALLEL/HORIZONTALANDVERTICAL
--Auto Scrolling: ENABLE/DISABLE
BUG: 407779
--when dragging a new applet over the view
the responsiveness is now improved vastly
--the new architecture uses two different
DragAndDropAreas. One which is the old one
and is used when dragged launchers, urls and
separators. The second is used only when
applets are dragged into the view
--the visuals for adding launchers/applets have
been improved and a circular visual is preferred
now instead
--case 1: first left applet neighbour of Tasks was not
clearing its zoom if the mouse was entering too fast
the Tasks applet from the applet direction
--case 2: first task in Tasks was not clearing its zoom
when the applet triggering the clear zoom effect was too
far from the Tasks
BUG: 401294
--previous code was creating an endless loop during
launchers syncing when there were windows between
the launchers.
example to reproduce: add a Discover launcer and
at the previous indexes there should be some
launchers that have open windows but their launcher
is assigned to different activity. Drag afterwards
the Discover launcher to first indexes e.g. 0,1
--plasmoid.screenGeometry is costly under Latte environment
because it supports multple layouts in multiple activities.
By using the View::screenGeometry the calls are minimized
almost totally.
Summary:
Fixes an issue where the shell plasmoid fails to load when QtGraphicalEffects 1.2 is missing from the system. This causes various issues like the task manager applet failing to load.
BUG: 406818
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D20774
--info badges updated their colors in order to attract
more attention on them. Most themes etc. use for their
negativeTextColor a reddish color so that is a good
match for this.
--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.
--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
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
Summary:
Currently, the task group tooltip doesn't react to the user hovering over a thumbnail. This patch modifies the active window line to also act as a hover indicator, making the UI more responsive to the user's mouse movements.
{F6734813}
Reviewers: #latte_dock, mvourlakos
Reviewed By: #latte_dock, mvourlakos
Subscribers: mvourlakos, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19281
Summary: In Windows, it is possible to close windows by middle-clicking their previews in the taskbar. This patch adds this feature to Latte Dock. Now, middle clicking an item in the task group tooltip will close the corresponding window.
Reviewers: #latte_dock, mvourlakos
Reviewed By: #latte_dock, mvourlakos
Subscribers: mvourlakos, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D19284
--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
--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
--the Colorizer that was responsible to
grey out the information badges when the
task is dragged, it was creating crashes
when its latte view was removed by the user
--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