1
0
mirror of https://github.com/KDE/latte-dock.git synced 2024-12-23 01:33:50 +03:00
Commit Graph

180 Commits

Author SHA1 Message Date
Michail Vourlakos
d21fc43b8c add update slot for layout:lastUsedActivity
--add layout slot to update lastUsedActivity
when runningActivities where changed in order
for layout::applyActivities() to provide valid
activities list even when an activity is
first starting.
2021-01-25 22:16:31 +02:00
Michail Vourlakos
09294b8599 sync configuration to files after save configs 2021-01-10 12:43:19 +02:00
Michail Vourlakos
8448f36ed9 check layout valid activities 2020-08-30 21:28:22 +03:00
Michail Vourlakos
a83d26a35b multiple:make switch funtion work properly
--when the user requests a specific layout in Multiple
Layout mode the new approach is the following. If
the layout has assigned activities this is respected
but if its activities are empty that layout is assigned
only on the current activity and any other layouts assigned
explicitly to that activity are released
2020-08-30 20:32:13 +03:00
Michail Vourlakos
d8f1f7e4b9 refactor:settings layouts controller
--the controller does not need to host its own
CentralLayouts any more. It retrieves original
data for Synchronizer, updates layouts accordingly
and sends back to Synchronizer all the updated
layouts data
2020-08-29 23:37:52 +03:00
Michail Vourlakos
7393ac02eb drop currentLayoutName as signal from synchronizer 2020-08-28 17:58:39 +03:00
Michail Vourlakos
a9774ff13f update Switch button in Layouts table 2020-08-28 17:58:39 +03:00
Michail Vourlakos
0ee31eead6 update kwin disabled borders infrastructure 2020-08-28 17:58:39 +03:00
Michail Vourlakos
c7d163fdb6 plenty of fixes for multiple layouts 2020-08-28 17:58:39 +03:00
Michail Vourlakos
527f865eda fix last config view tracking for multiple layouts 2020-08-28 17:58:39 +03:00
Michail Vourlakos
42dedca86f fixes for multiple layouts new approach 2020-08-28 17:58:39 +03:00
Michail Vourlakos
9026f931fd fixes for corona available areas calcs 2020-08-28 17:58:39 +03:00
Michail Vourlakos
2e120f9446 make Multiple mode work correctly 2020-08-28 17:58:39 +03:00
Michail Vourlakos
caf9bf7b78 REFACTOR:Drop Shared Layouts infrastructure
--Move in a simpler layouts approach.
--Single Layout mode loads ONLY ONE Layout for ALL Activities
--Multiple Layouts mode loads any combination of Layouts based
on the following settings:
  -- OnAllActivities
  -- ForFreeActivities
  -- SpecificActivities
2020-08-28 17:58:39 +03:00
Michail Vourlakos
63bfc444c4 provide allactivities and free activities ids 2020-08-28 17:58:39 +03:00
Michail Vourlakos
8b836da44e genericlayout:improve semantics for id references 2020-08-19 17:36:25 +03:00
Michail Vourlakos
3de29ece9b drop subContaiment functions from genericlayout
--responsibility is now at Layouts::Storage singleton
class
2020-08-19 17:10:00 +03:00
Michail Vourlakos
ac2a4cffc6 support different subcontainments types
--create an abstract implementation for subcontainments
such as systrays and group applet in order to use
the same infrastructure for all storage operations
such as Multiple Layouts loading, copying views,
providing important information etc.

BUG:418642
2020-08-19 16:59:07 +03:00
Michail Vourlakos
d4bed3881b drop layout::storage totally
--use only the all new layouts::storage
singleton class for all layout storage
operations
2020-08-18 03:13:05 +03:00
Michail Vourlakos
d3c1f4d1a8 layouts::storage,move copyView() function 2020-08-18 02:56:33 +03:00
Michail Vourlakos
53a0cb6574 layouts::storage, move syncToLayoutFile() code 2020-08-18 02:23:34 +03:00
Michail Vourlakos
d97be6744d layouts::storage, move isBroken() function 2020-08-18 02:15:28 +03:00
Michail Vourlakos
9a1346d04a layouts::storage support importToCorona() 2020-08-18 01:56:11 +03:00
Michail Vourlakos
2fd9d6cbfd layout::storage move private functionality
--move private functionality to singleto class
2020-08-18 01:44:10 +03:00
Michail Vourlakos
d97fe4c59c provide a new Layouts::Storage singleton
--this class will be the replacement for layout::storage
and will be responsible for any containment actions for
all layouts either loaded or offloaded. Through this
refactor loading and checking CentralLayouts should become
lighter and also memory efficient
2020-08-18 01:23:41 +03:00
Michail Vourlakos
9ff834ccae layouts:define custom text properly
--store the full text color in layout file
2020-08-17 19:00:48 +03:00
Michail Vourlakos
7ef74d2096 sync settings before exporting 2020-08-14 10:52:13 +03:00
Michail Vourlakos
7c238589ba improve name style and layouts path references
--use Importer in order to reference layouts directory
in user space and improve also naming for relevant
Importer functions
2020-08-14 09:33:39 +03:00
Michail Vourlakos
5ed3f111e3 update Layout::MULTIPLELAYOUTSHIDDENNAME
which is used to identify multiple layouts hidden
base layout
2020-08-14 09:08:01 +03:00
Michail Vourlakos
1b4d13959b use new TemplateManager add default templatelayout 2020-08-12 13:42:45 +03:00
Michail Vourlakos
2fdbc134a1 load system layout templates properly 2020-08-12 12:59:55 +03:00
Michail Vourlakos
8c1d0d34e5 rename internal containments to subcontainments
--applets that act as internal containments are now called
subcontainments because they are containments inside
main containments
2020-08-02 01:22:25 +03:00
Michail Vourlakos
28bcc973c0 details:add layout icon property
--expose icon properly at details window
2020-07-30 23:51:50 +03:00
Michail Vourlakos
c3fd137032 details:add clear pattern button 2020-07-30 18:38:12 +03:00
Michail Vourlakos
0286966cab use properly default custom background values 2020-07-30 18:09:49 +03:00
Martijn Vogelaar
2e4f7da4c2 Introduction and implementation of the SidebarAutohide
as discussed in #19.
2020-07-28 15:49:55 +00:00
Michail Vourlakos
383d762f11 Introduce storage TMP directory for layouts
--all storage functions are now taking place into
the same Latte TMP directory that is introduced
for layouts. So no more .bak files are needed from
~/.config folder.
2020-07-26 13:13:40 +03:00
Michail Vourlakos
166ee1899a multiple fixes to PrimaryConfig geom calcs
--provide also instant layout switching when
View changes a layout between central and shared
layout in the same view port
2020-07-12 14:26:44 +03:00
Michail Vourlakos
cb368c504d drop old Tasks identification code paths 2020-05-18 20:02:30 +03:00
Michail Vourlakos
46760a04de cycle properly config views with Meta+A 2020-05-16 17:06:19 +03:00
Michail Vourlakos
381675ac57 reduce kconfig.sync() calls
--improves startup times in some cases because
it does not write to disk that often.
2020-05-12 02:16:08 +03:00
Michail Vourlakos
9be7822b98 upgrade to LatteApp.Interfaces containment access 2020-05-02 13:23:37 +03:00
Michail Vourlakos
97e7c428b7 rename Ability.Container to Metrics
--major change but improves readability a lot
2020-04-27 21:21:44 +03:00
Michail Vourlakos
63187ce5b4 remove Latte library as requirement
--implement things simpler by using the same
CoreTypes header file both for LatteCore.Types
import statement and App c++ implementation.
Let's leave in the future to decide if
a LibLatte is really necessary.
2020-04-24 14:52:16 +03:00
Michail Vourlakos
2526ab7e17 rename to MemoryUsage::LayoutsMemory
--easier to read in the code as that type
provides:
MemoryUsage::SingleLayout
MemoryUsage::MultipleLayouts
2020-04-24 12:31:03 +03:00
Michail Vourlakos
552216d4d3 support Layout::BackgroundStyle 2020-04-23 19:35:26 +03:00
Michail Vourlakos
6e4779e6ab require new official Latte library 2020-04-22 21:10:17 +03:00
Michail Vourlakos
ac3ccb5b98 try to support a public liblatte library 2020-04-22 14:09:42 +03:00
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
2020-04-18 13:39:45 +03:00
Michail Vourlakos
14e739b395 details:provided layout backgrounds 2020-04-14 16:33:55 +03:00
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