Commit Graph

330 Commits (4976c1e2568c900d0ec2f4d449517d7df64ad8da)

Author SHA1 Message Date
Michail Vourlakos 8525e076f8 Tasks,dont mask out zoomed items too soon
--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
5 years ago
Michail Vourlakos 39cc767eed drop panelUserSetAlignment not used anymore 5 years ago
Michail Vourlakos e64921d2bf rename Indexer ability clients properties
--include also a fix for Tasks addingarea
5 years ago
Michail Vourlakos 836cecec41 Tasks fix thickness calculations scrollable list 5 years ago
Michail Vourlakos 3417b5ee0b dont separate launchers from tasks 5 years ago
Michail Vourlakos ef2592b183 add Indexer applet Ability
--works beautifully and nicely even in
multi-applets indexer supported environment
5 years ago
Michail Vourlakos b1ce98e8a4 introduce PrabolicEffect Ability for applets 5 years ago
Michail Vourlakos a0e4f688e5 fix some previews issues 5 years ago
Michail Vourlakos 81abb0eb35 fix some parabolic effect glitches 5 years ago
Michail Vourlakos 7e1be6144a remove Parabolic::DirectRender timer functionality
--remove direct render timer which is not used any more.
5 years ago
Michail Vourlakos 140cc8cb73 smoothen up parabolic effect 5 years ago
Michail Vourlakos c9b7866662 HoveredIndex:Drop plasmoid implementation
--parabolic effect does not need hovered index
any more in order to work properly
5 years ago
Michail Vourlakos 7b521634a8 restore properly multi-tasks parabolic effect
--update parabolic effect clear zoom functionanlity in order
to clear zoom properly
5 years ago
Michail Vourlakos db60035917 fix Tasks AddingArea positioning 5 years ago
Michail Vourlakos 22f9bdd6a7 use Metrics Ability for screenEdgeMargin 5 years ago
Michail Vourlakos 6259c395de move lengthMargin(s) to Metrics ability 5 years ago
Michail Vourlakos dae35a12bb rename thicknessMargins to thicknessEdges
--which is more accurate an Edge can be the calculated
distance of margin+border+padding like css is also
describing
5 years ago
Michail Vourlakos c45e45138f rename Metrics padding.length 5 years ago
Michail Vourlakos 1c6fef6c12 move thickMargin(s) to Metrics Ability 5 years ago
Michail Vourlakos ce97e8c9aa fixes for Previews in tasks left click 5 years ago
Michail Vourlakos 816466c7a4 tasks:improve Previews dragging file from outside 5 years ago
Michail Vourlakos 00127f28c0 Tasks:introduce Tasks.Dialog
--this is just a subclass of PlasmaQuick::Dialog
that provides "containsMouse" property
5 years ago
Michail Vourlakos 3018bd0fff tasks:restore previews window functionality
--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
5 years ago
Michail Vourlakos 97e7c428b7 rename Ability.Container to Metrics
--major change but improves readability a lot
5 years ago
Michail Vourlakos 03de9bb09f replace maxZoomFactor with innerZoomFactor
--innerZoomFactor is a way for applets to
request specific zoom factor at some cases
for example during some of their animations
5 years ago
Michail Vourlakos c9ec2bc957 rename minZoomFactor to animations.maxZoomFactor 5 years ago
Michail Vourlakos 69aaedac5f move Tasks local animations to local ability 5 years ago
Michail Vourlakos ef1fc413c9 publich Containet ability components 5 years ago
Michail Vourlakos 4237bd44b6 references improvements for Tasks applet 5 years ago
Michail Vourlakos c43dd6d003 update root references to Abilities 5 years ago
Michail Vourlakos 152a467878 refactor: Tasks applet support Animations ability 5 years ago
Michail Vourlakos df72c018c9 update plasmoid for AbilityDefinition.Animations 5 years ago
Michail Vourlakos b1f5e169ee provide new abilities imports structure 5 years ago
Michail Vourlakos 6a558df10b refactor:add Containment.AnimationsAbility
--change/update the animations api in order to
be understandable and easier to maintain/debug
5 years ago
Michail Vourlakos 13a9522a16 rename abilities imports to distiguish purpose
--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
5 years ago
Michail Vourlakos ac99708315 MAJOR MAJOR:splitting types to their own component
--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
5 years ago
Michail Vourlakos 3bee600a98 introduce AppletAbilities as qml library
--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
5 years ago
Michail Vourlakos 6833a9b5cb expose an object for AppletRequirements 5 years ago
Michail Vourlakos 505f63b3ad update plasmoid Containment to Container 5 years ago
Michail Vourlakos 42c44c20da Abilities:Move Tasks iconSizes to ContainmentAb 5 years ago
Michail Vourlakos e525596a04 refactor:split Latte Types to Tasks and Types
--move also irrelevant types to their owner. For
example LayoutsPage is moved to Settings::Dialog
namespace
5 years ago
Michail Vourlakos b69af88ebc refactor:move irrelevant WindowSystem properties
--irrelevant WindowSystem properties are now moved
to LatteCore.Environment that fit better semantically
5 years ago
Michail Vourlakos 5073939335 REFACTOR:split up and refactor liblatte2 and types
--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
5 years ago
Michail Vourlakos 5fdcef81af TASKS:Migrate to multiple Tasks architecture
--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
5 years ago
Michail Vourlakos da648b5b4e Tasks:update to location and alignment
--update implementation to use "root.location"
instead of root.position
--update implementation to use "root.alignment"
instead of root.userPanelPosition
5 years ago
Michail Vourlakos 6fffd19826 Tasks:remove deprecated code 5 years ago
Michail Vourlakos 25d061bb8f introduce Environment in Latte library
--as first value provide the separator length
that needs to be applied for all separators
5 years ago
Michail Vourlakos aa3aba50d9 make blockHiding multiple state
--blockHiding now tracks down which event has
requested it and it can work flawlessly with
multiple events

BUG:419034
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 4971655a2c support Chromium/Chrome audio channels
--upstream patch from Plasma taskmanagers
5 years ago
Michail Vourlakos de1604bb71 improve bouncing animation speed for plasma 5.18 5 years ago
Michail Vourlakos b5233ddfe0 option for tasks to scroll and minimize them
--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
5 years ago
Tranter Madi 77c170c8f7 Update from Plasma for ToolTipInstance.qml
Summary: Just pull the update from Plasma

Reviewers: #latte_dock, mvourlakos

Reviewed By: #latte_dock, mvourlakos

Subscribers: mvourlakos, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D26760
5 years ago
Michail Vourlakos 63971f4429 enable normal Latte Tasks removal action
--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
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 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 8194ee94bc inform applets/indicators for screen edge margin
--fix geometries publishing, update margins calculations
5 years ago
Michail Vourlakos 165db28a24 plasmoid use layout last used activity
--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
5 years ago
Michail Vourlakos ec78b188b5 plasma theme colors for !accelerated graphics
--fix also how accelerated graphics are identified
by using GraphicsInfo api
6 years ago
Michail Vourlakos 83d090c550 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 30f3145f95 Introduce Flat and 3D style for Badges
--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
6 years ago
Michail Vourlakos df9394ddd6 option for prominent color of Notification Badges
--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
6 years ago
Michail Vourlakos f04009b665 simplify code part 6 years ago
Michail Vourlakos cda688c2a5 refactor:move AddingVisuals to LatteComponents 6 years ago
Michail Vourlakos 74772cd7a9 introduce SCROLLING options for Tasks
--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
6 years ago
Michail Vourlakos 828b31fb78 animate new launchers when dropping them 6 years ago
Michail Vourlakos 7ffe7d436d introduce plasmoid:TasksExtendedManager
--All the Tasks WORKSAROUNDS for libtaskmanager
limitation in one place
6 years ago
Michail Vourlakos ee81cdf1bd send urlsDropped signal from containment 6 years ago
Michail Vourlakos 1ef4de0da8 VASTLY IMPROVE dragging experience
--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
6 years ago
Michail Vourlakos 8ccdd2e719 improve Tasks adding launchers responsiveness 6 years ago
Michail Vourlakos 8b2e31e6ef launchers syncing improve positions discoverring
--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
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 7ae63e7dd1 optimize screenGeometry calls from Tasks plasmoid
--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.
6 years ago
Michail Vourlakos e64e003a7c mask correctly the vertical scrollable tasks 6 years ago
Michail Vourlakos 12e8863f4b update info badges color for tasks notifications
--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.
6 years ago
Michail Vourlakos 834b6477ac update tasks previews
--remove the workaround timer that was used
from previews dialog in order to draw properly
single previews changes
6 years ago
Michail Vourlakos d8c294aada compute better scrolling area thickness 6 years ago
Michail Vourlakos f572970a95 add option for Tasks scrolling 6 years ago
Michail Vourlakos b493fdf9fb hide Tasks applet actions when in Latte app 6 years ago
Michail Vourlakos 4b92a87c41 update fill(s) applets appropriately
--more specific when maxLength is changed
in editMode and !inconfigureAppletsMode
6 years ago
Michail Vourlakos f5a46b3da9 scrolling,support multiple layouts and positions 6 years ago
Michail Vourlakos 88af46f5bf move alignment into scrollingarea 6 years ago
Michail Vourlakos fd99fba0bf refactor:Previews and TasksList on own directories 6 years ago
Michail Vourlakos 706dee5b74 move tasks layout to dedicated folder 6 years ago
Michail Vourlakos 6710be3ae5 update plasmoid to support scrolling 6 years ago
Michail Vourlakos 82480e6079 fix warnings,closing Latte with custom indicators 6 years ago
Michail Vourlakos 834bb56194 provide panel transparency info to indicators 6 years ago
Michail Vourlakos 612c53b78a respect liveEditMode for plasmoid separators 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 0d568c81d5 update indicators architecture to be independent
--first steps in order to support completely independent
indicators that can be downloaded/installed/used online
6 years ago
Michail Vourlakos 104ee8581f add more information for indicators consumption
--currentIconSize/maxIconSize/windowsCount/
windowsMinimizedCount
6 years ago
Michail Vourlakos c07c1c75ab disable separators size when parabolicEffectEnabled 6 years ago
Michail Vourlakos b00598949d activate/disable independent animations 6 years ago
Michail Vourlakos 25b636465a split animations and make par.effect independent 6 years ago
Michail Vourlakos c64df5a078 fixes for separators 6 years ago
Michail Vourlakos f1eb8becfc improvements for Plasma Style indicator 6 years ago
Michail Vourlakos 0147ed8451 update indicators design in plasmoid 6 years ago
Michail Vourlakos 82a11b9f4a adjust plasmoid to new indicators design 6 years ago
Mathias Tillman ddb941d465 Fix window thumbnails not working since frameworks 5.55
Summary:
This fixes a problem where window thumbnails are no longer visible since KDE Frameworks 5.55. This is caused by https://cgit.kde.org/plasma-framework.git/commit/?id=b257029afc3bfcd6366d2c2b910b8d91403ab8a which no longer automatically updates the visibility of mainItem of PlasmaCore.Dialog.

BUG: 404234

Test Plan: Ensure window thumbnails are working correctly now

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D19002
6 years ago
Michail Vourlakos 2884f73507 enable Plasma Indicator Style
CCBUG: 404122
6 years ago
Michail Vourlakos 8f9140f67a option to enable/disable audio badge actions
BUG: 403611
6 years ago
Michail Vourlakos 7149cf5569 do not make previews show intrusive
BUG: 404099
6 years ago
Michail Vourlakos bd68d5dbcc dont show Preview after activating task with click
BUG: 404099
6 years ago
Michail Vourlakos fef791d8e1 improve names for globalshortcuts qml calls 6 years ago
Michail Vourlakos 94a5118e54 update Latte plasmoid to new Communicator names 6 years ago
Michail Vourlakos 50c5303b54 create separate Badges section for Tasks
--the user can now choose what badges prefers for
Tasks. The current supported are Information/
Progress/Audio

BUG: 400539
6 years ago
Michail Vourlakos 52465865f9 rename Task SubParts in plasmoid accordingly 6 years ago
Michail Vourlakos 9c3726a07b support different actions for left click and hover
--app now supports the user to set different actions
for tasks left-click and for hover event

BUG: 400690 400429
6 years ago
Steffen Coenen f6ce06f6ae Adjust Latte Dock to libtaskmanager API changes for Wayland
Summary:
Changes in libtaskmanager in Plasma 5.15 currently break several Latte Dock features. This patch ensures that Latte Dock will continue to work when Plasma 5.15 is released.

BUG: 403358

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: plasma-devel

Tags: #latte_dock, #plasma

Differential Revision: https://phabricator.kde.org/D18375
6 years ago
Yuri Chornoivan 8d7110f761 Fix minor typos
Summary: Fix minor typos in messages and comments

Test Plan: No major changes to prevent compilation and usage

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D17894
6 years ago
Michail Vourlakos b8dca987f6 latte plasmoid support new v0.9 Communicator 6 years ago
Michail Vourlakos b418923c03 move from luminas to brightness
--the luminas functions didnt work well
for all cases. Latte is now using brightness
functions as described at:

   https://www.w3.org/TR/AERT/#color-contrast

this patch fixes all cases mentioned in the bug
that Latte contrast identification did not work well

BUG: 402115
6 years ago
Michail Vourlakos f84043d28e REFACTOR:change dock in containment to latteView 6 years ago
Michail Vourlakos d8621a9435 refactor:plasmoid rename latteDock to latteView 6 years ago
Michail Vourlakos 67253eda9d REFACTOR:update qml to new Latte.Types 6 years ago
Michail Vourlakos 74f80cd4db sync launchers when needed
--this way all synced docks/panels are all
updated concerning where their launchers are
placed and in which activities are shown
6 years ago
Michail Vourlakos 8294bd892c support plasmoid.screenGeometry properly
BUG: 401333
6 years ago
Michail Vourlakos 6c58115f9b add launchers validator for syncing launchers
--moving a task now is not synced immediately to
other docks. Syncing takes place only in the end.
The dock in which the user changed the launchers
order sends a signal to other docks to update
theirs launchers order.

BUG: 401232
6 years ago
Michail Vourlakos 530dd8d655 simplify more the communicator 6 years ago
Michail Vourlakos 37b89f2830 move qml luminance calculations to js files 6 years ago
Michail Vourlakos 9dae7f7170 add Colorizing properties in Communicator
--add properties in order for the Communicator
to inform applet when to use the LatteColorScheme
6 years ago
Michail Vourlakos 8db41a9ec2 open dropped urls for launchers in Global group
--dropped paths/urls on launchers of Global or
Layout launchers group did not open because the
synced infrastructure was breaking the QJsonArray
in that case.

FIXED-IN: 0.8.2
6 years ago
Yuri Chornoivan 7323068f36 Fix minor EBN issues 7 years ago
Michail Vourlakos b4dd016ed0 delay hiding previews when creating contextmenu
-- there are cases that hiding previews too early
can create crashes under wayland. Such a case is
when the user uses the touchpad to emulate a right-click
event to create a context menu for specific task

BUG: 397635
FIXED-IN: 0.8.1
7 years ago
Michail Vourlakos b4a7b1ac84 restructure windows previews to plasma design
--previews showed some strange behavior by
re-introducing faulty or empty previews under
X11. Best way to approach this is to follow up
plasma design idea in order for the code to be
comparable. The code was updated and the introduced
issue shows to be fixed but this wants users
feedback.

BUG: 397193
FIXED-IN: 0.8.1
7 years ago
Michail Vourlakos 9a69323293 smarter badges identifier for activation shortcuts
--with this commit now Latte is able to identify what are
the global shortcuts used for each activation entry and
also to not show at all any badge for activation entries
that are disabled from the user

BUG: 397128
7 years ago
Michail Vourlakos 3ea01dfafc fix badge text warning and border.color 7 years ago
Lukas Holecek 79df6cbe2c Activate next task in group on shortcut
Clicking a task group shows a tooltip with list of tasks. This tooltip
cannot be controlled by keyboard and it will stay open unless mouse is
used.

This patch changes the behavior so that when a global shortcut activates
a task group (usually Win+1, Win+2 etc.) a next task in the group is
activated without showing a tooltip.
7 years ago
Michail Vourlakos 83be8d9b20 fix #986,option to not group tasks
--give the user option to group or not
tasks of the same application by default
7 years ago
Michail Vourlakos 7c593c7112 fix #977,improve geometries publishing 7 years ago
Michail Vourlakos 6881d8fbbe fix #970,parabolic effect fix
During dock sliding-in because the parabolic
effect isnt trigerred immediately but we wait
first the dock to go to its final normal
place we might miss the activation of the
parabolic effect. By catching that signal
we are trying to solve this.
7 years ago
Michail Vourlakos 5ea2cfa79e [wayland] - fix previews crash
-- disable the use of PlasmaCore.WindowThumbnail
under Wayland in order to fix a crash that was
appearing after a while when the user was using
previews

BUG: 392865
7 years ago
Michail Vourlakos 6d7d53e454 improve removal animation
-- when removing a task and there are surrounding
separators then the hidden spacers are updated
immediately for the neighbour tasks. In such case
in order to not break the removal animation a small
margin must applied.
7 years ago
Michail Vourlakos 39d837da1d increase separators update signals
--add a delayer in order to syncLaunchers to avoid
a crash when multiple docks exist that are synced
together.
7 years ago
Michail Vourlakos e9b3cf2ed7 Use a new architecture for internal separators
--the old architecture that was trying to keep
an internal separators record couldnt catch up
and at the same time could create issues with
internal separators at different activities.
7 years ago
Michail Vourlakos d4685cd492 disable functionality for onlylaunchers
--when only launchers are shown and the user
has chosen to disable any active indicator
then the plasmoid should behave only as
a smart launchers list with no window
capabilities
7 years ago
Michail Vourlakos eec2927f88 updates for hidden tasks and int.separators 7 years ago
Michail Vourlakos b8c07b8523 fixes for disable Windows Functionality 7 years ago
Michail Vourlakos 2742be427b fix #901,show windows only from launchers
--add an option to tasks filters in order to
hide windows that do not have launchers
7 years ago
Michail Vourlakos a0e4c029a9 use plasma desktop version at plasmoid 7 years ago
Michail Vourlakos f5b56e3559 improvements for publishing geometries 7 years ago
Michail Vourlakos 7ce5938312 add internal separator through drag n' drop 7 years ago
Michail Vourlakos 5cb27f0ae4 fix initialization value 7 years ago
Michail Vourlakos 452e93c33e improve update of hoveredIndexes
--when the plasmoid is hovered when the
applets hoveredIndex should be initialized
and when an applet is hovered then the plamoids
hoveredIndex should be initialized to -1.
7 years ago
Michail Vourlakos 0bb70c1595 drop fastEntering for directRenderDelayer
--the directRenderDelayer is used during first
entering in order to delay the activation of
directRendering. The cons of previous fastEntering
implementation added the necessity for this
replacement.
7 years ago
Michail Vourlakos ec3a68b81e disable some debug messages 7 years ago
Michail Vourlakos 4cf4351b80 improve all luminance calculations
--provide more accurate calculations for luminance
based on algorithm at:
https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
7 years ago
Michail Vourlakos 7055b44a6e fix #890,dont show audio for paused mpris player
--improvements from plasma taskmanager mpris code
--check for mprisplayer status, when the player
is paused dont show the audio badge
7 years ago