1
0
mirror of https://github.com/KDE/latte-dock.git synced 2025-01-08 13:18:09 +03:00
Commit Graph

180 Commits

Author SHA1 Message Date
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.
2020-03-25 01:30:30 +02:00
Michail Vourlakos
a613bb49ba small improvements 2020-03-24 20:29:10 +02:00
Michail Vourlakos
90d1cedc1e fix context menu for applet if group plasmoid
--the new code can understand ALL applets that are
inside an internal containment style applets such
as plasma, nomad systrays and group plasmoid

FIXED-IN:0.9.10
2020-03-24 20:08:27 +02:00
Johnny Jazeix
ebaf3aebee fix build for Qt < 5.14 2020-03-20 09:17:36 +01:00
Michail Vourlakos
df844ed171 drop double reference in corona 2020-03-18 17:39:19 +02:00
Michail Vourlakos
ba94546cb4 multiple fixes for single layout case 2020-03-16 19:41:18 +02:00
Michail Vourlakos
00e6fbba5b update synchronizer semantics to freeactivities 2020-03-16 11:02:17 +02:00
Michail Vourlakos
6ff1102e1f update qt5 deprecated code 2020-03-14 14:50:37 +02:00
Michail Vourlakos
2db252b769 fix warnings 2020-03-14 14:41:07 +02:00
Michail Vourlakos
d3a07b5371 improvements for multips views and sidebars 2020-03-07 21:24:06 +02:00
Michail Vourlakos
0b2be421eb IMPORTANT:Multiple docks/panels in same edge
--Latte can now support multiple Views in the same screen
edge. Views as separated in THREE Layers of priorities.
1. Views from Shared Layouts have highest priority and they
are first to occupy a screen edge
2. Views that are set OnPrimary screen occupy a screen edge only
if there is NO other View from a Shared Layout applied already
3. Views that are Explicit to specific screens occupy a screen
edge only if there is NO PRIMARY view already loaded
2020-03-07 18:30:22 +02:00
Michail Vourlakos
90df4f4f61 support new visibility mode for SideBars
--SideBar views are shown/hide ONLY WHEN the
user has requested to DO SHOW from external
applets, shortcuts and scripts
2020-03-01 18:20:23 +02:00
Michail Vourlakos
ccbf2c88fd crash fix:from unloading views
--when as Always Visible view was unloaded from
a CentralLayout because its Activity was closing
it was creating a crash. This patch fixes the
situation by releasing sensitive view signals
earlier.
2019-12-27 19:14:31 +02:00
Michail Vourlakos
f93bec8893 fixes for WindowsCanCover
--show immediately when view contains mouse
--hide only if view does not contain mouse
--never apply ByPassWM hint for WindowsCanCover
2019-12-27 14:20:31 +02:00
Michail Vourlakos
61016444fb dont crash when changing layouts
--occasionaly when the user was switching
layouts it could get some crashes. It looks
safer to unload first the Latte::Views objects
and their corresponding containments afterwards.
I tried in my system to switch multiple layouts
in plenty different configurations and I could
not get a crash. This patch should fix the
mentioned crash report if that was the root
of the issue.

BUG:412864
FIXED-IN:0.9.5
2019-11-13 16:24:05 +02:00
Michail Vourlakos
1a49238d57 track kwinrc file only on changes
--instead of reading the kwin values all the time
when needed from user actions we now read them
only on startup and when the kwinrc file was
updated/changed

BUG:411657
FIXED-IN:0.9.3
2019-09-08 00:09:42 +03:00
Michail Vourlakos
8fe5f8f843 add report error message for unknown screens 2019-07-23 11:19:48 +03:00
Yuri Chornoivan
9fd6bcd87f Fix minor typo 2019-07-16 08:59:13 +03:00
Michail Vourlakos
10939d410c Views Report Information for inactive layouts 2019-07-15 00:05:10 +03:00
Michail Vourlakos
8f50131088 copyView considers multiple systrays
--when copying a view and the view contains
muliple systrays in it this is NOW taken
into account and accomplished accordingly
2019-07-15 00:05:10 +03:00
Michail Vourlakos
3412b13148 present Views data for Active layout 2019-07-15 00:05:10 +03:00
Michail Vourlakos
7954a3ac39 improve Screens Report
--the new report identifies for all your layouts
when a screen has not been assigned any docks/panels.
That can help user to clean up the ScreensConnectors
if wants to
2019-07-14 13:59:02 +03:00
Michail Vourlakos
eb0c52c52b improve settings windows shown trigerring behavior
--when the user uses Meta+A to cycle between the Views
configuration windows then in such case when NO Config
window is shown the LAST ONE USED should be shown again.
IF a Config View is already shown then the NEXT should
be shown afterwards
2019-07-10 17:10:31 +03:00
Michail Vourlakos
ba6460e919 update indicators runtime
--fixes to signals in ViewParts in order to avoid
crashes. Currently the recreateView approach is used
in order to reload indicators runtime dynamically.
The "View::setSource" approach does not reload the
indicators properly
2019-06-20 17:42:49 +03:00
Michail Vourlakos
85e49d41bf improve view recreation code 2019-06-20 11:21:12 +03:00
Michail Vourlakos
b71baccc14 fix screenForContainment in MulitpleShared mode 2019-06-15 21:38:07 +03:00
Michail Vourlakos
61e9e629c5 rename some global shortcuts texts
--protect also the Layout::lastConfigViewFor,
dont sent a view that is no longer available
2019-05-25 18:05:24 +03:00
Michail Vourlakos
96b86f4c49 remember lastConfigViewFor for shared layouts 2019-05-25 17:49:02 +03:00
Michail Vourlakos
7cd3b6201d remember the last created ConfigView per layout 2019-05-25 17:40:29 +03:00
Michail Vourlakos
f822ece27a keep onPrimary flag when copying views 2019-05-25 09:32:50 +03:00
Michail Vourlakos
2d89e60030 fix layoutViewType for Shared Layouts 2019-05-12 13:24:00 +03:00
Michail Vourlakos
4e80801523 syncLatteViews when Central is assigned to Shared 2019-05-12 01:41:09 +03:00
Michail Vourlakos
e13793df38 identify screen id at startup for primary screens 2019-05-12 01:36:00 +03:00
Michail Vourlakos
c653bbe14b send view edge changed signal when copying views 2019-05-12 01:18:18 +03:00
Michail Vourlakos
a661fbb032 refactor:drop LAYOUTSMANAGER apis moved to SYNCHER 2019-05-11 09:51:47 +03:00
Michail Vourlakos
24e25944db Shared Views have highest priority
--Shared views can be positioned to all free edges
including those occupied by Central layouts and the
Central layouts update their views accordingly
2019-05-10 00:00:47 +03:00
Michail Vourlakos
c6cd3f4685 move layout connections in the view
--any view and view::containment() signals that
are related to layout are now moved in the
View::setLayout() in order to be reinitialized
properly when the view changes to another
layout
2019-05-09 23:45:52 +03:00
Michail Vourlakos
8c3d658a0d refactor:move Importer to "layouts" folder 2019-05-09 17:57:12 +03:00
Michail Vourlakos
a27ff3ec48 REFACTOR:Update LayoutManager to Layouts::Manager
--create "layouts" own directory in order to host
all LAYOUTS management/control code and classes
2019-05-09 17:12:57 +03:00
Michail Vourlakos
29157f4636 refactor:rename managedLayout to layout/viewLayout 2019-05-09 00:13:17 +03:00
Michail Vourlakos
b33f29bc42 Activate Shared Layout if it is not loaded yet 2019-05-08 21:48:35 +03:00
Michail Vourlakos
e7568c8478 NO/ASSIGN active Shares to active Centrals 2019-05-08 21:48:35 +03:00
Michail Vourlakos
78d212ce8e SharedLayouts saving their settings from Layouts 2019-05-08 21:48:35 +03:00
Michail Vourlakos
f2eb0b6b3a REFACTOR:DONT load MultipleLayouts in Central(s)
--no reason to load Mutiple layouts linked file
as a Pseudo Central layout. This way no needed
checks can be removed and things are still working
as before.
2019-05-08 21:48:34 +03:00
Michail Vourlakos
1f14405e63 REFACTOR: rename Active TO -> CENTRALLAYOUT 2019-05-08 21:48:34 +03:00
Michail Vourlakos
be36b7cfaf unload SharedLayout when does not activeLayouts
--this code path is also used on Latte exit
2019-05-03 02:28:28 +03:00
Michail Vourlakos
9f338f38a4 dont set sharedLayout var if the layout not exist 2019-05-03 00:56:51 +03:00
Michail Vourlakos
e417a8d4ba add type() to layouts 2019-05-02 12:58:56 +03:00
Michail Vourlakos
cf0f22b44d fix crash,protect connector() calls
--connector calls must be done only when we
are sure that a screen id has already been
assigned

BUG: 407128
2019-05-01 18:52:03 +03:00
Michail Vourlakos
e2ccad62d9 RENAME TopLayout to SharedLayout
--Shared is a better term to describe these
layouts that can be Shared and be OnTop of
other layouts in Multiple Mode
2019-04-09 21:01:50 +03:00
Michail Vourlakos
1c6ddcad10 Improve addView for ActiveLayouts
--take into account the TopLayout views before
adding a new View either on startup loading
or when the user adds it
2019-04-09 21:01:50 +03:00
Michail Vourlakos
0cb2bb38af plenty of fixes for TopLayouts and multi-screen(s) 2019-04-09 21:01:50 +03:00
Michail Vourlakos
6620cf54bd plenty fixes updates for MultipleTopLayouts 2019-04-09 21:01:50 +03:00
Michail Vourlakos
70640ae2e5 override functions for Active and TopLayouts 2019-04-09 21:01:50 +03:00
Michail Vourlakos
385b0e0b20 update struts properly for TopLayouts 2019-04-09 21:01:50 +03:00
Michail Vourlakos
caedf9842e ActiveLayout override GeneralLayout::latteViews() 2019-04-09 21:01:50 +03:00
Michail Vourlakos
bdca8f58e8 simplify GenericLayout::latteViews call 2019-04-09 21:01:50 +03:00
Michail Vourlakos
69af8d0e0c fix updating lastUsedActivity properly 2019-04-09 21:01:50 +03:00
Michail Vourlakos
dc9553b3ca fix crashes from loading/unloading layouts 2019-04-09 21:01:50 +03:00
Michail Vourlakos
9236f18c4e add TopLayout and use combined with ActiveLayout 2019-04-09 21:01:49 +03:00
Michail Vourlakos
1ec19d6627 update syncLatteViewsToScreens
--update function to use new validViewsMap() function
in order to identify which views must be presented
and where. The validViewsMap function can be used also
from subclasses in order to indetify the Layout occupied
edges without applying the final map state to actual
views.
2019-04-09 21:01:49 +03:00
Michail Vourlakos
d07956cbb4 multiple layouts import properly 2019-04-07 15:54:28 +03:00
Michail Vourlakos
fb4508c6a7 simplify CMakeLists 2019-04-06 22:04:21 +03:00
Michail Vourlakos
861fced797 REFACTOR:move storaging to own class
--GenericLayout moves out all the storaging
mechanism to its dedicated Layout::Storage
class
2019-04-06 19:08:35 +03:00
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
2019-04-06 13:55:17 +03:00
Michail Vourlakos
89b86a3c12 REFACTOR:move code from ActiveLayout to Abstract 2019-04-06 13:55:17 +03:00
Michail Vourlakos
7d0905e379 refactor: rename Layout to ActiveLayout
--first steps to abstract the Layout code in
different classes
2019-04-06 13:55:17 +03:00
Michail Vourlakos
2767c0f4a0 remove deprecated class from layout 2019-04-06 13:55:16 +03:00
Michail Vourlakos
c735792c30 REFACTOR:replace all "foreach" statements 2019-04-05 17:17:10 +03:00
Michail Vourlakos
d8c04e805c multi-screen: find view::screen id in better way
--when monitor from an explicit screen was closed there
were cases that docks were moved at another monitor from
the window manager and that was preventing them to be
delete properly. This patch fixes this by considering
as valid explicit screen only the one provided by the
view

BUG: 405687
2019-03-21 15:48:05 +02:00
Michail Vourlakos
f22bb738c2 multi-screen:improve syncLatteViews() function
--onPrimary flag is considered from layout file directly
only for containments that are not already loaded to
latte views
--location flag is accessed directly from containment object
2019-03-21 08:20:08 +02:00
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
2019-03-09 14:24:52 +02:00
Michail Vourlakos
a375902442 support to send the viewType through dbus 2019-02-12 20:53:14 +02:00
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
2019-02-07 09:38:01 +02:00
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
2019-02-06 18:17:32 +02:00
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
2019-02-03 00:10:07 +02:00
Michail Vourlakos
7740649c85 show all views that contain shortcuts 2019-02-02 19:30:56 +02:00
Michail Vourlakos
e45ab91d65 heal layout file from deprecated applets
--there are deprecated applets that are not
used, I dont know under which circumstances
this ghost applet configurations are created,
they are shown more commonly under plasma
systrays
2019-01-27 20:21:37 +02:00
Michail Vourlakos
62f396e86f add shortcuts for layout 2019-01-27 13:42:19 +02:00
Michail Vourlakos
5416b1c0ef REFACTOR:move layout to its own folder 2019-01-22 18:17:55 +02:00