Commit Graph

1070 Commits (9f7f846318eaaba89f7a8eac405a012aae1a7105)

Author SHA1 Message Date
Michail Vourlakos df9eda426f improve Justify splitters behavior inConfigure
--justify splitters now the offset themselves when
startLayout or endLayout are too big
5 years ago
Michail Vourlakos 3d6c7b3b23 reduce justify splitter maximum size 5 years ago
Michail Vourlakos 2ef0cdd944 introduce Layouter ability 5 years ago
Michail Vourlakos 2a91cb55c1 remove subtract extranormthick from headThickGap
--extra thickness that is required from indicators
must be ignored from HeadThicknessGap which is used
for nice snapping
5 years ago
Michail Vourlakos 66f8cce6d9 introduce Layouter Debug mode
--really handy and beautiful in order to confirm the
calculations that are valid. Already a bug was found
for ParabolicEffect. There is 1px difference between
hovering Tasks and Applets
5 years ago
Michail Vourlakos ec949948b6 fix View recraetion and frameExtents freezes
--View recreation path was broken from new implementation
for Latte::Interfaces that pass objects to containment
interface. This is now fixed and Interfaces::View object is updated
and broadcasted correctly when changed
--when GtkFrameExtents are zeroed for behaveAsPlasmaPanels
then it is better to recreate the view to avoid freezes and
hidings of the view because of compositor strange behavior
5 years ago
Michail Vourlakos 677caab132 introduce a background.minThickness
--plasma themes because of their svg nature can
have a minimum padding under which they are not
drawn correctly. In such cases background shadows
overlap and background internal drawing overlaps
in the center. That property protects from
such case by introducing a minimum background
thickness at all cases. Good example of the issue
is observed in behaveAsPlasmaPanel(s) that are
floating and have very good round corners.
5 years ago
Michail Vourlakos da571bdc32 improve background computations for 100% 5 years ago
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 5b13bc421f improve background calculations a bit 5 years ago
Michail Vourlakos e83f7e551e redraw panel shadows after !visible workarounds
--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.
5 years ago
Michail Vourlakos 9d7aabf998 fix Outline for Justified Floating Views 5 years ago
Michail Vourlakos c8164597bb fix LayeredBackground calculations 5 years ago
Michail Vourlakos 93c6bbe9bd fix published screenEdgeMargin for panels
--in older version screenEdgeMargin == -1 was meant
that the screenEdgeMargin was disabled but this does not
need to be passed to View any more because variable
screenEdgeMarginDisabled is now passed directly
5 years ago
Michail Vourlakos 35bc8f3560 fix ConfigOverlay behavior/appearance 5 years ago
Michail Vourlakos 114828ad88 reduce GtkFrameExtents calls/triggers 5 years ago
Michail Vourlakos 3e17f718ee dont block hiding for #debugwindow#(s) 5 years ago
Michail Vourlakos 8b32be15b9 support GtkFrameExtents under X11
--this way to dock windows can now snap beautifully
with windows around them, very beautiful behavior!
That was pretty annoying in the past.
5 years ago
Michail Vourlakos cb56a34800 fix debug message in Colorizer.Manager 5 years ago
Michail Vourlakos 39cc767eed drop panelUserSetAlignment not used anymore 5 years ago
Michail Vourlakos 57fd073e3f improve Blur responsiveness
--Blur area is not updated instantly any more
and does not make too many unnecesary calls.
A timer was added to orchestrate this in order
for the Effects area to be updated at maximum
20times/sec.
--Dont animate the view container at all cases, that
creates a much smoother experience for the user in
editing mode
5 years ago
Michail Vourlakos 95462fe5e6 fix maxlength applied inConfigureApplets mode 5 years ago
Michail Vourlakos 75c14b504e main layout on top of start and end layouts 5 years ago
Michail Vourlakos 344a7b7f53 smoothen up glitches inConfigureApplets mode 5 years ago
Michail Vourlakos 2ebe0d0b63 fix glitch from hide screen edge gap in dock mode
--do not update view window geometry when there is
an automatic hide screen edge gap situation because
of maximized windows events
5 years ago
Michail Vourlakos 0d023dff37 expose backgroundThickness through Metrics
--this way Tasks scrolling shadows work ok again
and also they are decoupled from containment
5 years ago
Michail Vourlakos f715c5bbd5 various fixes for backgroud/items offsets 5 years ago
Michail Vourlakos dd4e4fb79d rename all Background.MultiLayer values
--much better and understandable names are now used
5 years ago
Michail Vourlakos 0539db1a09 rename more values of Background.MultiLayered 5 years ago
Michail Vourlakos 545249404e rename values in Background.MultiLayered 5 years ago
Michail Vourlakos bc441af941 rename PanelBox to Background.MultiLayered
--much better name and also describes how Background
really works and draws its content
5 years ago
Michail Vourlakos fe370bf885 improve all binding for containment
--use the Binding.when property in order to identify
when a binding is triggered or not
5 years ago
Michail Vourlakos f5db9ce63d fix Justify alignment applets placement inConfigure
--applets are now always take into account the splitters
placement and the splitters try to be always in the
center. This is much more predictable and understanble
from the user
5 years ago
Michail Vourlakos 6ae3c499f0 block calculations for applets changing parents 5 years ago
Michail Vourlakos 97a1c3fdb8 NEW Intuitive InConfigureApplets Mode
--I have managed to solve most of the issues that were
preventing a live demonstration of applets layout
during InConfigureApplets mode... Things are more
intuitive now are updated correctly between different
layout areas... enjoy...
5 years ago
Michail Vourlakos 7a451facb2 use inConfigureAppletsMode like a regular mode 5 years ago
Michail Vourlakos e64921d2bf rename Indexer ability clients properties
--include also a fix for Tasks addingarea
5 years ago
Michail Vourlakos 28ec313bd2 track container fill calculations better
--container fill calculations are now tracked much
better when they are applied.
--as an improvement fill calculations are now taking place
at all edit mode states. So inConfigureApplets mode
the fill(s) applets do not throw out of screen
applets that are the layout edges
5 years ago
Michail Vourlakos 30aa8963cb fixes for Fitts Law applet margins 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 a9425409d0 improve Indexer Container/Bridge implementation 5 years ago
Michail Vourlakos df4df914ca introduce Indexer ContainerAbility 5 years ago
Michail Vourlakos a622485a47 fix warnings 5 years ago
Michail Vourlakos a9c29916b0 improve catching signals for Container abilities 5 years ago
Michail Vourlakos e8290aeb92 add debug row for applets maxInnerZoomFactor 5 years ago
Michail Vourlakos 87ffc22f6a remove AppletsRecords container ability
--use the all new much better infrastructure
to track applet abilities requirements
5 years ago
Michail Vourlakos e3e4ee4c5a fantastico! full decoupled parabolic effect
--This is the first commit that demonstrates also
a beautiful and easy way to gain properties from
multiple applets that support specific activities
5 years ago
Michail Vourlakos d26b189bfa split ContainerParabolicEffect, Private/Properties 5 years ago
Michail Vourlakos 62879df90e rename appletitem aliases properly 5 years ago
Michail Vourlakos b1ce98e8a4 introduce PrabolicEffect Ability for applets 5 years ago
Michail Vourlakos cfd79ae713 fixes for ParabolicEffect Ability 5 years ago
Michail Vourlakos 44c7faba65 move zoomFactor,maxZoomFactor to ContainerAbility
--use nicer names such as parabolic.factor.zoom
and parabolic.factor.maxZoom
5 years ago
Michail Vourlakos f707cdab4f create ParabolicEffect Abitility
--such ability provides four different parts:
Defintion/Applet/Container/Bridge
5 years ago
Michail Vourlakos 0bb838d90e fix triggering for contextMenuIsShown
--it should not be triggered in every view press
event but only when there is or not a context
menu any more
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 63500ed524 HoveredIndex:Drop for containment
--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.
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 9145634434 PARABOLIC:new parabolic effect implementation
--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.
5 years ago
Michail Vourlakos 22f9bdd6a7 use Metrics Ability for screenEdgeMargin 5 years ago
Michail Vourlakos 4d1f5b2df0 deprecate root.screenEdgeMargin from containment 5 years ago
Michail Vourlakos 9be7822b98 upgrade to LatteApp.Interfaces containment access 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 583af39fba add metrics.margin.maxThickness 5 years ago
Michail Vourlakos e0d2991790 move fractions to MetricsPrivate 5 years ago
Michail Vourlakos ed3472b11f make Metrics.Fractions as private property 5 years ago
Michail Vourlakos 2727aa1616 add more metrics options for applets 5 years ago
Michail Vourlakos 3143bef896 rename metrics option to portionIconSize 5 years ago
Michail Vourlakos 90d9aefd0b add more metrics options for Ability 5 years ago
Michail Vourlakos f227191f3f position properly background for all allignments
--do not take into account the background shadows for its
positioning for Left/Right/Top/Bottom alignments
5 years ago
Michail Vourlakos e8c15905d6 position properly alignments for real panels
--provide calculations to position properly real
panels that use Left/Right/Top/Bottom alignments
5 years ago
Michail Vourlakos 441fbdf635 plenty of improvements to position Latte panels
--used a video demonstrating multiple panels at the
bottom edge with padding between them
--max/minLength and offset are changed to float values
--max/minLength and offset can now be adjusted with
Ctrl+Wheel over their label in Appearance tab page. Clicking
the previous mentioned label will round the values
--introduce an autoSizeEnabled value in order to block
auto size mechanism when it becomes annoying. Such issue
appears more often to Latte panels
--block MenuZ from Latte icon heuristics
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 97e7c428b7 rename Ability.Container to Metrics
--major change but improves readability a lot
5 years ago
Michail Vourlakos dbd830aa48 remove applets spacers unneeded code 5 years ago
Michail Vourlakos 92a6319dac update applets windows tracking for AppletsRecords 5 years ago
Michail Vourlakos e4a609f250 release Applets.latteBridge on destruction 5 years ago
Michail Vourlakos 3a7a8368fa provide a multiapplets innerZoomFactor structure
--introduce AppletsRecords in order to keep track
of their requirements that influence the containment
qml behavior
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 7709e1514b simplify autosize container ability 5 years ago
Michail Vourlakos 04daf81ac5 provide apis through abilities import 5 years ago
Michail Vourlakos 368b4b8441 references improvements in container qml 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 732c7821f1 support property AbilityDefinition.Animations
--use qml for this and it is much better than c++
5 years ago
Michail Vourlakos 529efe548a abilities animations definition working better 5 years ago
Michail Vourlakos 82f007e4bf provide an AbilityDefinition for Animations
--this way both containers and applets can use
the same infrastructure and properties
5 years ago
Michail Vourlakos b1f5e169ee provide new abilities imports structure 5 years ago
Michail Vourlakos 33aaa85796 improve AutoSizer animations signaling 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 deb9c244ff improve/support BackgroundTracker in app
--the new implementation is much improved and easy
to support. No workaround and direct use of the
libraries
5 years ago
Michail Vourlakos 790e0af406 add Containment.ThemeColorsGroup enum 5 years ago
Michail Vourlakos 1bc14b5d7a add Containment.ThemeColorsGroup 5 years ago
Michail Vourlakos 35d09789c9 add Containment.ShadowColorGroup qml enum 5 years ago
Michail Vourlakos 7ac648983f upgrade applet shadows variable for cotainment
--replace deprecated configuration.shadows with
configuration.appletShadowsEnabled
5 years ago
Michail Vourlakos 39fbf728d5 rename actions for LatteContainment.scrollActions 5 years ago
Michail Vourlakos 9c57f9db4b introduce AppTypes.MouseSensitivity 5 years ago
Michail Vourlakos 9919952239 bring back Settings::inAdvancedMode
--ViewSettings::complexityLevel is not needed
any more... View::Settings will keep only two
states, Basic and Advanced mode
5 years ago
Michail Vourlakos a4e9b51b2b support LatteContaiment.ActiveWindowFilterGroup 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 810dd5a1b4 publish Abilities qml library
--add AppletRequirements in Abilities
qml library
5 years ago
Michail Vourlakos 6833a9b5cb expose an object for AppletRequirements 5 years ago
Michail Vourlakos 214447b12f make AutoItemSizer an Ability called AutoSize 5 years ago
Michail Vourlakos 505f63b3ad update plasmoid Containment to Container 5 years ago
Michail Vourlakos a72c30f763 replace containmentAb name with container 5 years ago
Michail Vourlakos 42c44c20da Abilities:Move Tasks iconSizes to ContainmentAb 5 years ago
Michail Vourlakos 0db7b29a2d Abilities:move iconSize to containmentAbility 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 0da74fb3ce Tasks:track multiple Tasks applets
--create an infrastructure in order to be able
to adjust and configure multiple Tasks plasmoids
5 years ago
Michail Vourlakos 7f4ff70950 upgrader:Alignment instead of PanelPosition
--ContainmentQuickItem is now using alignment
in its configuration
5 years ago
Michail Vourlakos 36aae05bc8 position correctly applets thin title tooltips
--consider also the screenEdgeMargin
5 years ago
Michail Vourlakos aebbff4dfd improve applets badges location 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 8b41314b2f enable scrolling activation only for expandable
--systrays/internal containments are blocked from
this
5 years ago
Michail Vourlakos 0046c904d1 View:Move expanded applets code to View::Interface 5 years ago
Michail Vourlakos fa65462dea move View::deactivateApplets to extendedInterface 5 years ago
Michail Vourlakos c333e11cdb update applets expanded tracking on every startup
--even when the views is recreated
5 years ago
Michail Vourlakos 0625ad1423 fix edit visual style in !compositing 5 years ago
Michail Vourlakos ef41f17ef3 fix minimumLength for !compositing 5 years ago
Michail Vourlakos 6034073dd0 fix floating editMode for !compositing case 5 years ago
Michail Vourlakos f63a467b1e improvements for applet isExpanded tracking 5 years ago
Michail Vourlakos 1adcbdb863 improve identify applets expanded state 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 ded6ef04e5 fix fake background blur for shared layouts 5 years ago
Michail Vourlakos 72fdf4563b improve AbstractLayout background infrastructure
--the new infrastructure can remember settings between
CustomBackgroundStyle and ColorStyle in order to
help the user to not have to reassign values
when changing backgrounds, between predefined
colors style and custom one.
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 4ad3880579 update PLASMAPANEL geometry immediate after hiding
--behaveAsPlasmaPanel can now slide in/out as real windows
but after they hide there is a chance that their geometry
should be updated. This patch makes sure that this will
happen exactly before the BEHAVEASPLASMAPANEL starts
sliding-in.
5 years ago
Michail Vourlakos 25677a01b5 block screen gap animations on startup 5 years ago
Michail Vourlakos 87f6330816 slide in/out nicely when hideThickScreenGap
--when the user has chosen to hide the screen gap
when there is a maximized window in the screen and
at the same time the View behaves as plasma panel,
it now slides in/out nicely
5 years ago
Michail Vourlakos e0c04a9c6f import:dont update view:local_geometry when hidden
--if this does not apply then local geometry are not valid
when views become hidden
5 years ago
Michail Vourlakos 86ddc74cbb fix EnvironmentActions anchors
--EnvironmentActions follow mainLayout alignment
and anchor style at all cases
5 years ago
Michail Vourlakos b3c3dab514 improve plasma folder behavior in SideBars 5 years ago
Michail Vourlakos ecd39b4098 introduce minimum length option
--found also some fixes for mask calculations
in right or bottom alignment
5 years ago
Michail Vourlakos 1d8fe4541c Important:fix localGeometry calculations
--and add also new visual debug mode for
localGeometry calculations
5 years ago
Michail Vourlakos ef3a59e836 behaveAsPlasmaPanel for NOCOMPOSITING environment
--all views in NOCOMPOSITING environment should behave
as Plasma Panels in order to interact much better with
windows
5 years ago
Michail Vourlakos ab83bc5b2e fixes for BLUR in live editMode
--add also missing signal in Effects to updateEffects
when enabledBorders are changed
5 years ago
Michail Vourlakos 5cc6ce5484 fix NOCOMPOSITING mode mask calculations
FIXED-IN:0.9.10
BUG:418456
5 years ago