Commit Graph

276 Commits (5363433b006f7faaa58e8a0330fbeccf395b314f)

Author SHA1 Message Date
Michail Vourlakos b35fa94307 reduce availableScreenGeometry calls 6 years ago
Michail Vourlakos db6a4e9d0d make struts and Always Visible lighter
--support them also in Live Editing
6 years ago
Michail Vourlakos 7e9064eb5e track last active window properly at per view 6 years ago
Michail Vourlakos f33cd25ff5 update mask when secconfigwindow is destroyed 6 years ago
Michail Vourlakos 7ec1f6b928 support kde_frameworks<=47 for settings windows
BUG: 406436
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 0b07b58abc support kdeclarative both <5.45 and >=5.45 6 years ago
Michail Vourlakos 86a7eddba5 restore translations for settings window
BUG: 406114
6 years ago
Michail Vourlakos 7240134ec2 add comments 6 years ago
Michail Vourlakos 6620cf54bd plenty fixes updates for MultipleTopLayouts 6 years ago
Michail Vourlakos 71435d4938 identify Touching windows for Multiple mode
--improve how the available screen geometry is
calculated because in MultipleLayouts mode we can
have different layouts that provide different
available screen geometries
6 years ago
Michail Vourlakos 385b0e0b20 update struts properly for TopLayouts 6 years ago
Michail Vourlakos dc9553b3ca fix crashes from loading/unloading layouts 6 years ago
Michail Vourlakos fb4508c6a7 simplify CMakeLists 6 years ago
Michail Vourlakos 2c8a0a83c1 update secondary config window position properly 6 years ago
Michail Vourlakos bbddfd3d48 REFACTOR:move code from Active to GeneralLayout
--huge refactor in order to split the logic of the
Layout file. One of small steps in order to end at
the following logic:
AbstractLayout->GeneralLayout->InterfacedLayout

InterfacedLayout->NormalLayout
InterfacedLayout->OnTopLayout

PresentedLayout, that will contain references for
one ActiveLayout and one OnTopLayout and will
act as a class to provide useful information to
layoutManager and all other classes that want
to work with Views.

GeneralLayout will gain a storage object
for all STORAGE properties that require
a CORONA to work
6 years ago
Michail Vourlakos 7d0905e379 refactor: rename Layout to ActiveLayout
--first steps to abstract the Layout code in
different classes
6 years ago
Michail Vourlakos ae69884e04 ignore PlasmaDesktop for windows tracking flags
BUG: 406235
6 years ago
Michail Vourlakos ae3c4d3cf0 update SecondConfigView when availableGeometryChanged 6 years ago
Michail Vourlakos bb3ef16dea fix RTL positioning for View::Settings windows 6 years ago
Michail Vourlakos 8b3920ef64 fix indicators warnings when removing a view 6 years ago
Michail Vourlakos 6e1dfe9670 comment deprecated code in view settings windows 6 years ago
Michail Vourlakos c735792c30 REFACTOR:replace all "foreach" statements 6 years ago
Michail Vourlakos d48d2da2cd add comment 6 years ago
Michail Vourlakos 3e19e553f1 add IndicatorInfo to have a global reference 6 years ago
Michail Vourlakos 915bb1bd39 provide visual limits for margins/padding
--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.
6 years ago
Michail Vourlakos e7eb06a63e optimize subtracked masking for wayland case
--under wayland masking does not break the visual
result of a window. For that reason under wayland
the editShadow can be masked out totally and not
only for its windows underlying parts.
6 years ago
Michail Vourlakos 92584e638c consider vertical views to position viewconfigs 6 years ago
Michail Vourlakos 8b6f250733 dont subtract sec.config win for vertical views 6 years ago
Michail Vourlakos 555fc966b0 activate config windows under wayland environment
--add heuristic method in wayland interface in order to
return the internal id of a window by using its appId
and its geometry
6 years ago
Michail Vourlakos 9f1b284f64 init earlier translation domain, indicatorconfigui 6 years ago
Michail Vourlakos d280b6e4aa button to remove locally installed indicators 6 years ago
Michail Vourlakos 9b1841e9e3 watch app paths for indicators changes 6 years ago
Michail Vourlakos ba08038bc0 add Latte/Indicator type and improve metadata 6 years ago
Michail Vourlakos 3d2d399072 add functionality to custom indicators 6 years ago
Michail Vourlakos 81204e3519 support importing indicators from compressed files 6 years ago
Michail Vourlakos fd74397bae support file dialog for indicators 6 years ago
Michail Vourlakos 4c613a1d47 support last used custom type 6 years ago
Michail Vourlakos 06c965248c support customIndicators interface under settings
--a new element is introduced for CustomIndicators
which is going to be responsible to choose between
them and download also online for new indicators
6 years ago
Michail Vourlakos 28ef36a774 simplify indicators names 6 years ago
Michail Vourlakos 9a464226bd improve loading for indigator config ui
--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
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 b93588756a fix crash from Close button in config window
BUG: 405772
6 years ago
Michail Vourlakos 0c95180fde identify better active maximized windows
--more specific do not mess maximized windows all
together. Active maximized windows have higher
priority than all the rest normal maximized
windows.
6 years ago
Michail Vourlakos 9afafcc7c2 disable panel shadows only when active maximized 6 years ago
Michail Vourlakos 15d5ac59ec improve calculations for vertical settings windows 6 years ago
Michail Vourlakos 48a5a4690e decrease edge ghost window sensitivity for mouse
--this patch fixes the show timer delayer in combination
with KWin edges activation even more. The experience
now looks almost identical to NONE-KWin edge activation
6 years ago
Michail Vourlakos cab2055279 adjust secondary config win to new design
--secondary config window now follows the primary
config window design. Config windows now are just
simple windows !AboveAll and are activated from
Latte::View on demand. This way we can now have
demonstration of the parabolic effect during
editMode at all times
6 years ago
Michail Vourlakos 1dba8d1841 block requestActivate() for wayland
--requestActivate is not supported under wayland
6 years ago
Michail Vourlakos e9e0c04198 fix wayland crash when hiding config window 6 years ago
Michail Vourlakos c35849c9d8 take care config windows for X11 environment
--make the config windows to not show in pager,
switcher or taskbar under X11 environment
6 years ago
Michail Vourlakos 0816e2b8aa fix top masking during editMode
--improve also identifying when subtracting
edit mode mask is needed
6 years ago
Michail Vourlakos 11226428c6 update config window availScreenGeometry properly 6 years ago
Michail Vourlakos fabf6f44d2 show configuration windows only for one view
-- for each layout only one dock should show its configuration windows
otherwise we could reach a point that because a settings window
is below another Latte View its options are not reachable
6 years ago
Michail Vourlakos 94415e24b4 improve config windows calculated geometries 6 years ago
Michail Vourlakos 89fd411dab improve how config window size is calculated 6 years ago
Michail Vourlakos 83b5b2323a fix calculations for left subtracked mask 6 years ago
Michail Vourlakos 002d683dd9 fix calculations for left subtracked mask 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 37ca5f1663 restore config windows behavior to previous state
--approach the problem of showing parabolic effect properly
during edit mode in a different way. The Latte View now
on Enter event raises itself
6 years ago
Michail Vourlakos 3ac5ebffeb fix focusOut behavior for config windows 6 years ago
Michail Vourlakos 366f2783f2 improve config windows activation
--when the mouse enters the main latte view,
the primary and secondary config windows should
be activated. This patch improves how this is
handled in order to not mess up the focusOut
even handling from config windows. The config
windows do not race now in order to identify
if all the config windows has lost focus.
6 years ago
Michail Vourlakos e4254ed8c7 activate config windows whenever mouse enters view 6 years ago
Michail Vourlakos b2184579ad remove StaysOnTop hint for settings windows 6 years ago
Michail Vourlakos 542174f296 make edit visual totally dynamic
--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
6 years ago
Michail Vourlakos 71bb4ca921 introduce new editAppletsMode
--in this mode all aplets can be adjusted and
repositioned properly
6 years ago
Michail Vourlakos b15df34cc4 livemode:enable parabolic effect for editMode
--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
6 years ago
Michail Vourlakos cec96aaf19 fix !compositing masking for views 6 years ago
Michail Vourlakos 9bdd58ee3f restore Show Timer behavior for KWin Edges 6 years ago
Michail Vourlakos 35c9550963 make sure maximized window is touching the view
--Disable the hack for kwin effects because it has many
false results. e.g. when a window is maximized and
Latte or Plasma are showing their View settings
6 years ago
Michail Vourlakos 903988ff71 identify correctly touching flags with kwin effects
-- KWin Effects such as ShowDesktop have no way to be identified and as such
create issues with identifying properly touching and maximized windows. BUT when
they are enabled then NO ACTIVE window is found. This is a way to identify these
effects trigerring and disable the touch flags.

BUG: 404483
6 years ago
Michail Vourlakos f040cc8828 plenty improvements for touching/active state flags
--fixes and improvements to identify windows that are
touching or are active and how all of them are used
in order to color properly the view
6 years ago
Michail Vourlakos 17c602347b use touching windows scheme at all cases
BUG: 404745
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 031e19a8ab expose activeWindowScheme through windowTracker 6 years ago
Michail Vourlakos 9263b3e890 improvements for window tracker 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 78096b4181 refactor:move window functions to its own class
--all windows related functions present at visibility
manager are moved at their own class WindowsTracker
6 years ago
Michail Vourlakos 5db22022c1 refactor:cleanup globalshortcuts
--move out from globalshortcuts functions that were
related to latte views functions such as sorting,
highest priority etc. All these were moved to their
appropriate places in layout manager or layout classes
6 years ago
Tranter Madi fede9feb2d improvements for global shortcuts
Summary: BUG: 403880

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D18717
6 years ago
Michail Vourlakos cf93b7516d improve global shortcuts options
--the user can disable "global shortcuts based
on position" by disabling the global shortcuts
for the first two latte items
--improve texts readability

BUG: 403880
6 years ago
Michail Vourlakos 50dc45c61f fix headers references for classes 6 years ago
Michail Vourlakos d53c2cbea3 fix indents / text appearance 6 years ago
Michail Vourlakos 668c2ff139 dont close view settings when Alternatives shown
--this way the user can also choose different Alternatives
without having false applets replacements or Latte failing

BUG: 403658
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 5416b1c0ef REFACTOR:move layout to its own folder 6 years ago
Michail Vourlakos 130bb32c8e move view config window for advanced mode
--there were cases for small screen resolutions
that because the view settings windows did not
change its height, it was not changing its placement
to the side of the screen
6 years ago
Michail Vourlakos 990b8868cd guard m_parent caller at secconfigview
BUG: 403406
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 42f6bef738 dont close settings windows with no reason
--there were cases that the focusOutEvent from
secondary config window was sent before the
primary config window has become active. In that
case all config windows were closing with no
reason

BUG: 402776
6 years ago
Steffen Coenen 56cfb42734 Fix autohide behaviour after dragging a panel
Summary:
Currently, when dragging a window from the panel to move it, it breaks the autohide behaviour of active docks/panels. This change imitates a release event on X11 to circumvent these problems.

BUG: 403104

Reviewers: mvourlakos

Reviewed By: mvourlakos

Subscribers: plasma-devel

Tags: #latte_dock, #plasma

Differential Revision: https://phabricator.kde.org/D18194
6 years ago
Michail Vourlakos cf6641a089 dont unblock for !editMode
--when containment changes status it was
unblocking the visibility manager. This patch
fixes that situation and the blocker remains
under editMode. This way the dock can not be
hidden when it is in editMode.
6 years ago
Michail Vourlakos daa4d0f003 recreate view only when is really needed
--recreate view only when the window
ByPass flag must be really changed
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 63e9fbc99f dont block mouse events with no reason
BUG: 402572
6 years ago
Michail Vourlakos e19cbd46f6 delete secondary window when no needed
BUG: 402627
6 years ago
Michail Vourlakos ca5ea55816 disable debug message 6 years ago
Michail Vourlakos 5c8a2bb380 reorganize settings in view settings window 6 years ago
Michail Vourlakos aeb7877546 improve ExpertSettings location 6 years ago
Michail Vourlakos 5d6d1730f2 improve syncGeometry at settings windows 6 years ago
Michail Vourlakos 79ccc37e31 delay latte view showing for Meta global shortcut 6 years ago
Michail Vourlakos 32a34d7c47 show latte view for all cases of Meta+A 6 years ago
Michail Vourlakos 40bd5a83e2 update settings to new complexity level 6 years ago
Michail Vourlakos 7d66434244 introduce complexity for view settings 6 years ago
Michail Vourlakos 5e09a41e99 refactor:remove no needed colorizer signals
--the new infrastructure to track background
brightness does not need communication between
universalsettings and view colorizer enabler
6 years ago
Michail Vourlakos 418799ed30 fix crashes from latteView recreation code
--in order to update window manager flags properly
in some cases a dock recreation is needed. But that
dock recreation when takes place when the user choses
to move its panel between different screens (that recreation
shouldnt be needed) in such case it creates crashes
6 years ago
Michail Vourlakos e81ef199b3 refactor:drop visibilitymanager private class 6 years ago
Michail Vourlakos 2244cae8bc refactor:move PlasmaThemeExtended to better path 6 years ago
Michail Vourlakos efb9414ef9 refactor:move plasmaquick headers to better place 6 years ago
Michail Vourlakos a3107b7f1c dont call syncGeometry if not needed in some case 6 years ago
Michail Vourlakos fbe07f5ec1 add debug message for syncGeometry() 6 years ago
Michail Vourlakos b05c7d94ae refactor:add visibilitymanager to ViewPart:: 6 years ago
Michail Vourlakos 57ab5f3b3f refactor:move screenedgewindow to ViewPart:: 6 years ago
Michail Vourlakos 0510293c21 REFACTOR:Move confiView(s) to ViewPart:: namespace 6 years ago
Michail Vourlakos b2fbb2a7ae REFACTOR:change dock->latteView in settings windows 6 years ago
Michail Vourlakos f84043d28e REFACTOR:change dock in containment to latteView 6 years ago
Michail Vourlakos 1ab99761a1 REFACTOR:Update Dock types to new Latte2::Types 6 years ago
Michail Vourlakos 462a849ac4 refactor:rename dock terms to view 6 years ago
Michail Vourlakos f2a90aafe6 refactor:rename dock term to view term 6 years ago
Michail Vourlakos 185dd39e5c refactor:rename dock terms to view terms 6 years ago
Michail Vourlakos fd23fd83c1 refactor:rename dockWinBehavior to byPassWM flag 6 years ago
Michail Vourlakos 25d9d4ed17 refactor:rename DockCorona to Latte::Corona 6 years ago
Michail Vourlakos f74b3a4da0 REFACTOR:drop DockView term,in favour of LatteView 6 years ago
Michail Vourlakos 39368a41de REFACTOR:rename DockView to Latte::View
--move all classes related to Latte::View
from dock/ folder to view/ folder
6 years ago