Commit Graph

121 Commits (1398747bb838882b0bf3e18aee7f8c2d09dbaa31)

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
3 years ago
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
3 years ago
Ö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
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
Ö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
3 years ago
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
3 years ago
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
3 years ago
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
3 years ago
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
4 years ago
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
4 years ago
Michail Vourlakos 30de674870 cmdline:add dock/panel through --add-dock 4 years ago
Michail Vourlakos cb91c1b788 contextactions:provide QHash to organize them 4 years ago
Alexander Lohnau 505379ed04 Use spdx syntax for all files 4 years ago
Michail Vourlakos 8e9de84e01 contextmenu:expose layouts icon data 4 years ago
Michail Vourlakos d84c5152b3 support multiple sidebars triggering
--and also at the same time support specific
sidebars based on their names
4 years ago
Michail Vourlakos a718d8d58a support aboutToQuit application signal on exit
--add also shadows to tasks window thumbnails
4 years ago
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.
4 years ago
Michail Vourlakos 1fac17d6ba Storage:update newView for views editor
--trying to support newView that works in all the
cases between inactive/active layouts
4 years ago
Michail Vourlakos 050b454b5a support screen changes for offline containments 4 years ago
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
4 years ago
Michail Vourlakos fe5d2d7a63 context menu:provide Add view through templates 4 years ago
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
4 years ago
Michail Vourlakos 7f64126d5f improve and simplify context menu data 4 years ago
Michail Vourlakos 5fa77e05eb contextmenu:add export as template 4 years ago
Michail Vourlakos 965644ce2c add duplicate view in context menu 4 years ago
Michail Vourlakos b1de2a3905 contextmenu:hide inactive layouts at MultipleMode 4 years ago
Michail Vourlakos a44c5fa821 provide remove dock action in context menu 4 years ago
Michail Vourlakos a01c18a551 update geometrics for screenpool records 4 years ago
Michail Vourlakos 41ebee5a71 update screenpool api 4 years ago
Michail Vourlakos 6f58d09d06 reorganize settings dialogs in better structure 4 years ago
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
4 years ago
Michail Vourlakos 69df6400f2 rename launchersignals to syncedLaunchers
--that is more appropriate name for synced
launchers latte launchers handler
4 years ago
Michail Vourlakos d5e83280d2 refactor:simplify layout data access 4 years ago
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
4 years ago
Michail Vourlakos 7393ac02eb drop currentLayoutName as signal from synchronizer 4 years ago
Michail Vourlakos 3689cc406d retrieve available screen space through activityid 4 years ago
Michail Vourlakos 9026f931fd fixes for corona available areas calcs 4 years ago
Michail Vourlakos 2e120f9446 make Multiple mode work correctly 4 years ago
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
4 years ago
Michail Vourlakos 50c419d4e4 upgrade importDefaultLayout codepaths
--use Templates::Manger in order to import
default layout on startup
5 years ago
Michail Vourlakos 6e2d8143e5 improve Default Layout Template name is accessed 5 years ago
Michail Vourlakos 545404ec82 introduce all new templates manager
--this class is going to be responsible for all
templates tasks
5 years ago
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
5 years ago
Michail Vourlakos b799950ddb corona:remove editing windows earlier
--it minimizes warnings during exit
5 years ago
Michail Vourlakos 038b649804 delete PrimConfigView only on app exit 5 years ago
Michail Vourlakos e1c38213b9 introduce viewsettingsfactory
--is going to be responsible to hold only
one instance of view config windows
5 years ago
Michail Vourlakos 631837e199 Tasks fixes for disableAllWindowsFunctionality 5 years ago
Michail Vourlakos 383e365f82 update availableScreenRegionWithCriteria
--the new implementation is much simpler and takes into
account all alignment types and view dock/panel modes
5 years ago