Commit Graph

414 Commits (fae249560eb5f8bffe261d5d7eddee74d00ec5b3)

Author SHA1 Message Date
Michail Vourlakos 103de33c92 trying to implement real panels sliding in/ou 5 years ago
Michail Vourlakos 07a1065320 animate dynamic screen edge margin behavior
--when the view is NOT behavingAsPlasmaPanel then for
those cases we can animate the screenEdgeMargin
shrinking/expanding
5 years ago
Michail Vourlakos 5d65909adb fix binding loop from hideLengthScreenGap 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 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 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 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 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 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 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 17621e0ffd check no panel shadows from windows states first 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 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 8058778a93 initialy support only one case for busyVerticals 6 years ago
Michail Vourlakos 92a4fb054e 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 e684924d7c improve more the isBusy background case
--the new implementation supports and always darkish
case when the isBusy background is drawn. So now
we have the following possibilities:
a)panel transparency<35 means BEST contrast with
underlying desktop background
b)panel transparency>=35 AND <70 means a DARKISH
background
c)panel transparency>=70 the user chosen plasma
theme
6 years ago
Michail Vourlakos 7fe42921a8 fix reference for ignoreRegularFileDragging 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 804d3d4d73 ignore regular files/links dragging in Normal mode 6 years ago
Michail Vourlakos 9a7788ab58 improve Communicator::version
--provide also a way for applets to identify
versions and make versions through
bridge.actions.version function
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 b7cf5dbb62 avoid glitch from panel shadow 6 years ago
Michail Vourlakos 2396ffbe19 rethink isBusy state panel shadow
--panel shadows in ISBUSY state are applied
when BLUR is enabled and backgroundopacity>0 OR
BLUR is NOT enabled and backgroundopacity>20
6 years ago
Michail Vourlakos 8a281bc3e8 update panel shadows for isBusy state 6 years ago
Michail Vourlakos 0b6c07a1e5 support Active Window Filtering
--Latte can now use the new multi-screen
Last Active Window infrastructur to choose
which Active Window is preferred, only from
current screen OR from all screens
6 years ago
Michail Vourlakos e25da5a668 update Containment Windows Tracking with screens
--new screens implementation for Latte screen
tracking
6 years ago
Michail Vourlakos 3c97bd222e track how many applets need windowsTracking 6 years ago
Michail Vourlakos cda688c2a5 refactor:move AddingVisuals to LatteComponents 6 years ago
Michail Vourlakos be90ca6269 improve TasksArea Visual for containment 6 years ago
Michail Vourlakos d283e61b5d improve DragDrop behavior/responsiveness 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 2aff2da949 identify drag enter in containment differently 6 years ago
Michail Vourlakos 7ffe7d436d introduce plasmoid:TasksExtendedManager
--All the Tasks WORKSAROUNDS for libtaskmanager
limitation in one place
6 years ago
Michail Vourlakos cfc9143632 respect Add launchers only in Tasks area 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 3789f3c178 improve adding applets through dragging responsive
--fix all events identifications from DragMove and
DragExit etc. in containment::qml part and all drags
flags are calculated only at DragEnter! This fixes
the DragMove signaling and all DragMove signals are
sent correctly.
It needs to be fixed also for Tasks plasmoid because
every time the mouse hovers the Tasks Plasmoid then
the DragMove signals are NOT SENT as they should.
6 years ago
Michail Vourlakos be25a3b145 improve debug graphics mode visuals 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 4092a98654 dont show hidden applets in liveEditMode 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 4b92a87c41 update fill(s) applets appropriately
--more specific when maxLength is changed
in editMode and !inconfigureAppletsMode
6 years ago
Michail Vourlakos 6710be3ae5 update plasmoid to support scrolling 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 da3a60357a disable par.effect when animations are disabled 6 years ago
Michail Vourlakos 21825369bb small adjustements
--save applets layout when the user chooses a
different alignment
--dont animate offset if the edit background is
not shown in full thickness
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 d95d861b64 add new options to indicators interface
--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
6 years ago
Michail Vourlakos 86c7e72abf add option to enable/disable active window dragging 6 years ago
Michail Vourlakos 243ece638c update editVisual transparency through emptyAreas 6 years ago
Michail Vourlakos fccbb64808 move LayoutsContainer in its own folder 6 years ago
Michail Vourlakos f497d4ae62 improve updateIndexes at Justify alignment changes
--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.
6 years ago
Michail Vourlakos d5b294b88e improve vastly Justify Live Editing experience
--the entire Justify to Another alignment experience
has been improved a lot and made much smoother than
in the past
6 years ago
Michail Vourlakos de56372bf9 fixes for Splitters and LiveEditing 6 years ago
Michail Vourlakos 71c2036096 improvements for LiveEditing and Justify case 6 years ago
Michail Vourlakos 6d84b6eea2 better way to identify applet plasma behavior
--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
6 years ago
Michail Vourlakos 1503dbe247 take into account indicator minimum paddings 6 years ago
Michail Vourlakos 1210e708c9 support automatic roundness to !compositing 6 years ago
Michail Vourlakos 834bb56194 provide panel transparency info to indicators 6 years ago
Michail Vourlakos 71d3979f0c separate liveEditingMode and inConfigureApplets
--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
6 years ago
Michail Vourlakos 7c59929b28 fixes for shadows calculations 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 e30ee3abba enable Blur for isBusy backgrounds 6 years ago
Michail Vourlakos 9afafcc7c2 disable panel shadows only when active maximized 6 years ago
Michail Vourlakos 067c0df044 draw panel shadows when isBusy after 40% opacity 6 years ago
Michail Vourlakos 33c584cc08 Mouse wheel action for empty areas
--User can now choose for the panel empty areas
a sroll wheel behavior:
-Scroll Desktops
-Scroll Activities
-Scroll Tasks

BUG: 404266
6 years ago
Michail Vourlakos f3f6dccf65 support Outline option for compositing mode
--works much better than I was expecting and at the
same time it simplifies the PanelBox code a lot
6 years ago
Michail Vourlakos f50be9bc9d update Panel/Dock type detection 6 years ago
Michail Vourlakos 9a4a515a68 improve identification of inConfigureApplets mode 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 8b46ecc92a support new Latte separator properly 6 years ago
Michail Vourlakos d1340486bb improve margins options placement in settings 6 years ago
Michail Vourlakos 6276d604dc restore edit shadow size
--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
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 e922b73bca reduce a bit the edit external shadow 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 9c6d5c2fe9 move related qml files to its own directory 6 years ago
Michail Vourlakos 33363c241d Enable communication between Applets
--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.
6 years ago
Michail Vourlakos 8ae8de719e ignore deprecated:autoDecreaseIconSize from config 6 years ago
Michail Vourlakos 4f9d41cec8 improve Latte indicator options accessibility 6 years ago
Michail Vourlakos c805963327 prepare for new latte separators 6 years ago
Michail Vourlakos 17c602347b use touching windows scheme at all cases
BUG: 404745
6 years ago
Michail Vourlakos f1eb8becfc improvements for Plasma Style indicator 6 years ago
Michail Vourlakos 4d9f0192c2 fix panel thickness calculations 6 years ago
Michail Vourlakos cb6e38b4c0 enable new margins in view settings 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 ffac993845 improve Colors and DynBackground combinations
--the user can now have back the plasma theme style
in more cases such as when Theme:Smart, WindowColors:None,
and has enabled from DynBackground for solid panel
background when windows are touching
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 2884f73507 enable Plasma Indicator Style
CCBUG: 404122
6 years ago
Michail Vourlakos 315a217d10 respect disabled background for all cases 6 years ago
Michail Vourlakos 8f9140f67a option to enable/disable audio badge actions
BUG: 403611
6 years ago
Michail Vourlakos 901b5a9455 hide indicators when are user disabled 6 years ago
Michail Vourlakos fd300ec9cf simplify colorize properties & active new options 6 years ago
Michail Vourlakos 730030c5fb remove deprecated old values 6 years ago
Michail Vourlakos cdc610aed0 add option to force plasmabackground for popups 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 53b5904706 dont enforce background shadow for menu plasmoids
--dont enforce background shadow for global menu
plasmoids such as AWC, plasma appmenu, window appmenu

BUG: 403780
6 years ago
Michail Vourlakos 69b49d42dd the user must enable shortcuts based on position
--the option is now present to Behavior page in order
for the user to enable global shortcuts based on position.
6 years ago
Michail Vourlakos b15bd24218 refactor:move shortcutsEngine to its own class
--in that way all environment related shortcuts
management (e.g. plasma related shortcuts) is moved
in its own class
6 years ago
Michail Vourlakos 8e8b8e0c73 fix warnings 6 years ago
Michail Vourlakos 66b2e4bd9c fixes and improvements for globalshortcuts 6 years ago
Michail Vourlakos fef791d8e1 improve names for globalshortcuts qml calls 6 years ago
Michail Vourlakos e5c2b37f79 update Tasks Indexes immediately after shortcuts
--do not delay updating the tasks indexes and counts in
Latte plasmoid in order to avoid inconsistent values
during startup. Now entries activation works immediately
after startup
6 years ago
Michail Vourlakos ad5286279f rename properties appropriately in containment 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 ad3b5abeaf enhance background solidness when touching window
--When the user has chosen a solid background when
there are windows touching the Latte panel then in
such case windows that are touching the panel not
just at the edge but at the at any point of the latte
panel are also considered as touching windows
--The "snapped" term that was used before in the
visibilitymanager was changed to "touching"
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
Michail Vourlakos 582b59dae2 enable/disable colorizing from user
--when the user has enabled the monochrome colorizing
in that case in applet options there is now a new option
in order for the user to choose if wants or not that
applet to be colorized. Such an example are colorful
applets that lose their proper appearance through
monochrome option.
6 years ago
Michail Vourlakos 33034d7969 dont block shadow setting in editMode 6 years ago
Michail Vourlakos e869ae9a91 dont force dyn.background in editMode 6 years ago
Michail Vourlakos 4add34ac7f dont blur if the user has not enable it 6 years ago
Michail Vourlakos 387939bd0a update solid option to solid style
--Solid Style option is just a way to use the
Solid svg from the plasma theme
6 years ago
Michail Vourlakos 50eb9ec277 change distorted to busy background
--simplify semantics by updating distorted
term to busy background
6 years ago
Michail Vourlakos 4702367296 respect Shadow for forcePanelForDistortedBackground 6 years ago
Michail Vourlakos eab2851e4e respect Blur for forcePanelForDistortedBackground 6 years ago
Michail Vourlakos 6acd6d8476 identify distorted areas for dynamic background 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 e9b3895936 improve options for applets shadow color 6 years ago
Michail Vourlakos 302d29bae7 improve ActiveIndicator/Glow options 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 5e47a2f483 fix crash from wrong FrameSvgItem initialization
--enable shadows by default on startup otherwise
the FrameSvgItem sets is imagepath to "" and that
can create a crash during loading/unloading a
layout
6 years ago
Michail Vourlakos 0794c0e84f refactor:blockAnimations moved to View::Effects
--rename blockAnimations to animationsBlocked
6 years ago
Michail Vourlakos 71d648437f move dock positioning code into its own class 6 years ago
Michail Vourlakos 97d476a3f0 fix many typo(s) 6 years ago
Michail Vourlakos 9c3107d363 fix maximum length calculation in qml side
--the maximum length calculation in qml side
was not calculated correctly for behabeAsPlasmaPanel
flag
6 years ago
Michail Vourlakos 954dac650f dont enable shadows when are not needed
--this reduces also the syncGeometry calls
and as such improves cpu usage
6 years ago
Michail Vourlakos 9b0feaea6a drag active window from panel
the user can use the empty panel areas
in order to drag the active window
and by double clicking to maximize/restore
the active window

BUG: 400391
6 years ago
Michail Vourlakos e63a43afe5 enable requestMove through the visibilitymanager 6 years ago
Michail Vourlakos 1397ebe5ed fixes and add double click to restore/maximize 6 years ago
Michail Vourlakos b8ad6fceeb drag a maximized window from panel 6 years ago
Michail Vourlakos 92ce3f15c1 introduce plasma theme extended
--this is going to be a class that will
provide all the extended info of a plasma
theme such as roundness, dark/light color
schemes
6 years ago
Michail Vourlakos 9374ff3cc4 move colorizeManager to its own Item class 6 years ago
Michail Vourlakos 4a13d12703 send colorizerManager colors to applets 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