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

121 Commits

Author SHA1 Message Date
Michail Vourlakos
90e4ea28c4 introduce ContextMenuLayerQuickItem
--use plasma approach in order to show context menus
for applets by introducing a new QuickItem that will
be responsible for this at the bottom of applets and
containment layers
2022-05-22 17:12:42 +03:00
Michail Vourlakos
b1d57051c2 wayland:support Plasma primaryscreen protocol
--use ScreenPool as reference for primary screen.
The new code uses PrimaryOutputWatcher class from
Plasma Shell in order to keep track of primary
screen at all cases.

BUG:448418
FIXED-IN:0.11.0
2022-05-09 20:35:45 +03:00
Ömer Fadıl Usta
8476a796d2 Spring cleaning with Qt5.15.x
Because of we increased min qt version to 5.15.x, we dont need these checks anymore
2022-03-01 04:47:12 +00:00
Michail Vourlakos
c7bb46b217 introduce new MultipleLayouts mechanism
--the new approach does not load/unload layouts
during startup/exit. When the user loads layouts
in multiple layouts mode the layouts are inserted
and when exit they still remain in the hidden
multiple layouts file. These layouts present in the
multiple layouts file from now are called preloaded
layouts.
--the new approach fixes also the wayland exit
issue and in general the message for Latte not
closed properly has been totally dropped.

BUG:448702
BUG:446205
2022-01-25 09:58:44 +02:00
Michail Vourlakos
60095bba3b fix #96,FEATURE:AllScreens and AllSecondaryScreens
--This is a HUGE FEATURE and so important for multi-screens
users. It is introduced as one single commit because it
reimplements plenty of infrastructure changes and it will
be easier to identify newly introduced bugs.
--Users can now choose for their docks and panels to belong
at various screen groups. The first two screen groups introduced
are AllScreens and AllSecondayScreens. In the future it might
be possible to provide CustomScreensGroup that the user will
be able to define specific screens in which a dock or panel
should be always present.
--Current solution specifies an Original dock or panel and clones/copies
itself automatically to other screens. So docks and panels in other screens
are just real docks and panels that reference themselves to original
docks and panels.
--Clones are destroyed during layout startup and are automaticaly
recreated. It is suggested to export your layouts through the
official Layouts Editor in order to share them because in that case
clones are not included in the new generated layout file. If in any
case you do not this and you share your layout with any previous
versions then your clones will just appear as separate docks and
panels that belong to specific screens.
--Automatic syncing was introduced in order to keep up-to-date
the configuration of Original docks and panels with their referenced
Clones.
--Automatic syncing currently works for all docks and panels settings,
for all normal applets configurations and for all subcontaiments
configuration such as systrays.
--Automatic syncing does not work for applets inside subcontainments
such as Group Plasmoid. In such case it is suggested to configure
your applets inside your Group Plasmoid in the original dock or panel
and afterwards to trigger a recreation for the relevant clones
--Manual recreation of clones is easily possible by just choosing
the dock or panel to be OnPrimary or OnSpecificScreen and rechoosing
afterwards the AllScreensGroup or AllSecondaryScreensGroup
2022-01-16 13:38:13 +02:00
Michail Vourlakos
6fa1d1cc87 fix vertical docks/panels positioning
--identify correctly for vertical panels in right edge
when they need to draw or not their top and bottom borders.
This is enough in order to position properly these docks.

BUG:448519
FIXED-IN:0.10.8
2022-01-16 02:32:24 +02:00
Ömer Fadıl Usta
3c5b474a97 Make spring cleaning to match our KF5_MIN_VERSION
Since we already require 5.71.0 as min version of KF , it is meaning less to keep old checks for lower versions in code, this will make code more and more cleaner

Since all plasma using cpp17 and we recently switch to cpp14 think that it may be better to keep it more up-to-date and match with plasma
2022-01-09 12:21:55 +00:00
Michail Vourlakos
c98f6679b8 fix plasma available geometry broadcasting
--ignore docks and panels for availableScreenRect(s) etc.
when they are in startup and they are painted offscreen
--plasma is not ready to accept availableScreenRegion(s) because
after startup moves desktop widgets to the left even though
it should not
--fix availableScreenRegion calculations for Centered and Justified
docks and panels
2021-12-27 23:30:11 +02:00
Michail Vourlakos
e88aaf27a9 cmd:support "add-dock" through command line
-- "add-dock" option now works even when application
is not running and the user is executing it through
command line.

BUG: 446526
FIXED-IN: 0.10.5
2021-12-07 20:11:29 +02:00
Michail Vourlakos
e0bfff4c48 get ready for Plasma LookNFeel packages
--introduce enable/disableAutostart from command line
--accept import-layout from command line when latte is already running
--introduce --suggested-layout-name to be used with
  import-layout in order to provide a preferred layout name
  e.g. latte-dock --import-layout /blah/blah/mywhat.layout.latte
       --suggested-layout-name MyAwesomeLayout
--dbus:introduce "setAutostart" function
--dbus:introduce "importLayoutFile" function

BUG:446249
FIXED-IN:0.10.5
2021-11-30 21:29:06 +02:00
Michail Vourlakos
f7032f7f19 crash:dont show settings dialog in early startup
--showing settings dialog too early before layout(s)
are loaded can possible create crashes. Settings dialog
is considering that everything is in place and ready
to be used.

BUG:440731
2021-08-08 14:28:48 +03:00
Michail Vourlakos
750785b5e5 fix notifications placement for sidebars
--Corona::availableScreenRe.. functions now ignore
visibility modes from views that are almost always hidden
such as SideBars and AutoHide panels/docks
2021-07-09 10:23:22 +03:00
Michail Vourlakos
30de674870 cmdline:add dock/panel through --add-dock 2021-06-28 17:14:54 +03:00
Michail Vourlakos
cb91c1b788 contextactions:provide QHash to organize them 2021-06-08 20:02:15 +03:00
Alexander Lohnau
505379ed04 Use spdx syntax for all files 2021-05-27 15:01:00 +00:00
Michail Vourlakos
8e9de84e01 contextmenu:expose layouts icon data 2021-05-15 15:59:52 +03:00
Michail Vourlakos
d84c5152b3 support multiple sidebars triggering
--and also at the same time support specific
sidebars based on their names
2021-05-03 23:49:39 +03:00
Michail Vourlakos
a718d8d58a support aboutToQuit application signal on exit
--add also shadows to tasks window thumbnails
2021-04-24 12:33:40 +03:00
Michail Vourlakos
447f0e549c do not delay exit at all cases
--in the past a delay was needed in order for
docks panels to slide out nicely, this is not
needed any more because kwin takes responsibility
for this.
2021-04-22 13:44:22 +03:00
Michail Vourlakos
1fac17d6ba Storage:update newView for views editor
--trying to support newView that works in all the
cases between inactive/active layouts
2021-04-17 14:37:09 +03:00
Michail Vourlakos
050b454b5a support screen changes for offline containments 2021-04-13 10:56:15 +03:00
Michail Vourlakos
92f12b6f63 view:update move to layout
--update to new infrastructure that is able to
switch view location by combining multiple
changes at the same time
2021-04-12 09:10:48 +03:00
Michail Vourlakos
fe5d2d7a63 context menu:provide Add view through templates 2021-03-01 19:04:21 +02:00
Michail Vourlakos
631f4a9d6e provide moveView through context menu
--the user can now user the ContextMenu in order
to move a view between different active layouts
2021-03-01 17:15:12 +02:00
Michail Vourlakos
7f64126d5f improve and simplify context menu data 2021-03-01 16:18:43 +02:00
Michail Vourlakos
5fa77e05eb contextmenu:add export as template 2021-02-28 17:40:53 +02:00
Michail Vourlakos
965644ce2c add duplicate view in context menu 2021-02-28 17:27:04 +02:00
Michail Vourlakos
b1de2a3905 contextmenu:hide inactive layouts at MultipleMode 2021-02-28 13:47:45 +02:00
Michail Vourlakos
a44c5fa821 provide remove dock action in context menu 2021-02-28 11:56:09 +02:00
Michail Vourlakos
a01c18a551 update geometrics for screenpool records 2021-02-17 14:20:44 +02:00
Michail Vourlakos
41ebee5a71 update screenpool api 2021-02-17 12:24:36 +02:00
Michail Vourlakos
6f58d09d06 reorganize settings dialogs in better structure 2021-02-09 20:22:31 +02:00
Michail Vourlakos
09654e75b3 expose view templates through dock settings
--the user can now add views based on view templates
found in the system through Dock Settings, New Dock
actions
2021-02-06 00:14:11 +02:00
Michail Vourlakos
69df6400f2 rename launchersignals to syncedLaunchers
--that is more appropriate name for synced
launchers latte launchers handler
2021-01-14 20:21:12 +02:00
Michail Vourlakos
d5e83280d2 refactor:simplify layout data access 2020-08-29 20:42:15 +03:00
Michail Vourlakos
13708ddf4a support singleModeLayoutName property in settings
--single mode has now its own unique property to hold
the layout to be used in single mode
2020-08-28 19:03:23 +03:00
Michail Vourlakos
7393ac02eb drop currentLayoutName as signal from synchronizer 2020-08-28 17:58:39 +03:00
Michail Vourlakos
3689cc406d retrieve available screen space through activityid 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
50c419d4e4 upgrade importDefaultLayout codepaths
--use Templates::Manger in order to import
default layout on startup
2020-08-13 21:28:52 +03:00
Michail Vourlakos
6e2d8143e5 improve Default Layout Template name is accessed 2020-08-12 12:59:55 +03:00
Michail Vourlakos
545404ec82 introduce all new templates manager
--this class is going to be responsible for all
templates tasks
2020-08-12 12:59:55 +03:00
Michail Vourlakos
9092e54fc0 enable Multiple Layouts mode in wayland
--enable multiple layouts mode partially and
try to provide at least one central layout
combined with a shared layout
2020-08-03 18:13:37 +03:00
Michail Vourlakos
b799950ddb corona:remove editing windows earlier
--it minimizes warnings during exit
2020-08-03 17:33:52 +03:00
Michail Vourlakos
038b649804 delete PrimConfigView only on app exit 2020-07-04 14:44:27 +03:00
Michail Vourlakos
e1c38213b9 introduce viewsettingsfactory
--is going to be responsible to hold only
one instance of view config windows
2020-07-03 14:24:43 +03:00
Michail Vourlakos
631837e199 Tasks fixes for disableAllWindowsFunctionality 2020-05-23 13:47:51 +03:00
Michail Vourlakos
383e365f82 update availableScreenRegionWithCriteria
--the new implementation is much simpler and takes into
account all alignment types and view dock/panel modes
2020-05-11 11:27:22 +03:00