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

38 Commits

Author SHA1 Message Date
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
c9515a0353 activate through mouse wheel more applets
--when an applet is not identified as expandable
but on the other hand has activated the flag
activationTogglesExpanded then for those
applets the mouse wheel option should also
trigger an activation event
2021-10-15 01:41:13 +03:00
Michail Vourlakos
59360176ee dont block visibility function after Meta trigger
--Menu11 and SimpleMenu applets are using a custom
plasmoid approach in order to be able to position their
popups differently on the screen. This patch considers
this in a more generic way and does not use the default
codepath to show popups from these applets. More
importantly the Needs/RequiresAttention status is used
in order to determine the panel/dock visibility for
these applets.

BUG:441053
2021-10-15 01:16:05 +03:00
Alexander Lohnau
505379ed04 Use spdx syntax for all files 2021-05-27 15:01:00 +00:00
Ömer Fadıl Usta
03e9c6c954 Reorder inits to Fix wrong initialize problem and fixes for string compares 2021-05-22 13:45:10 +00:00
Michail Vourlakos
76549a9f99 shortcuts:wait for view to fully shown properly
--the new approach is not using timers but actual
events from View in order to identify when the
view is fully shown and when their popup is actual
visible. This way popup showing and view slide-in
is always synchronized properly

BUG:425078
2021-05-13 20:09:05 +03:00
Michail Vourlakos
c74b60c7da subcontainments considered Expandable 2021-05-08 19:23:06 +03:00
Michail Vourlakos
597ee4af5f respect always appletIsExpandable flag
--this way applets that during start were
expandable and now they are not, they do
not trigger expanded codepaths
2021-05-08 14:48:10 +03:00
Michail Vourlakos
f6df7a7df1 introduc fast layout manager for containment 2021-03-02 19:33:24 +02:00
Michail Vourlakos
6cd47840fb improve how identification of expanded applets
--take into account AppletQuickItem.switchWidth/Height
values in order to identify or not if an applet
is expanded in a popup window
2021-02-06 12:32:54 +02:00
Michail Vourlakos
f37fde5824 simplify dragging architecture
--simpler implementation both for plasmoid
mousehandler and containment droparea
2021-01-22 19:09:12 +02:00
Michail Vourlakos
6a6e47c657 plenty of fixes for moving/dragging applets 2020-12-31 16:58:53 +02:00
Michail Vourlakos
2fd5f51e8d fixes for justify alignment arrangement 2020-12-31 16:58:53 +02:00
Michail Vourlakos
2e7dcb5428 refactor rely on c++ to provide justify alignment
--c++ takes the burden to validate the Justify alignment
2020-12-31 16:58:53 +02:00
Michail Vourlakos
343c1e632a provide consistent slots naming
--onSomethingChanged syntax is preferred for all
slots that are triggered from somethingChanged signals
--doThis syntax is preferred for generic slots that
are triggered from various different codepaths
2020-08-20 19:58:45 +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
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
c3e430e356 fix crash when unloading layouts
--when unloading layouts applets are deleted
and subsequently all the heuristics for identifying
expanded applets are removed. In such case
there were rare cases that applet()->id() was
trying to be accessed and that was subsequently
creating crashes because applet did not exist
anymore. AppletQuickItems probably are deleted
after applet has already been destroyed.
2020-08-01 20:40:23 +03:00
Michail Vourlakos
fa4ffbf521 use PositionShortuts Ability for activate/new 2020-05-22 19:11:10 +03:00
Michail Vourlakos
dc78257962 improvement for Container::OnPositionShortcuts
--bind On Position Shortcuts Container ability
with View::ExtendedContainmentInterface implementation
2020-05-22 14:09:29 +03:00
Michail Vourlakos
f32937ca6d first commit for multi on position shortcuts 2020-05-20 19:07:40 +03:00
Michail Vourlakos
3cadc32fc4 improvements for Tasks applets usage 2020-05-18 19:17:11 +03:00
Michail Vourlakos
2fae4a87ba ContainmentInt is now resposible for all Tasks 2020-05-18 19:14:35 +03:00
Michail Vourlakos
99db4d54f2 support plasma tasks model for tracking 2020-05-18 19:04:02 +03:00
Michail Vourlakos
76781094af rename ExtInterface::model to LatteTasksModel 2020-05-18 18:45:12 +03:00
Michail Vourlakos
1e48d053f7 fix crash when switching layouts
-- the faulter was containmentinterface that was
calling containment()->applets() during view
destroying phase
2020-05-08 10:16:26 +03:00
Michail Vourlakos
1ad1dd2982 fixes for globalshortcuts highest view identify
--always find the highest view that is going to be
used for global shortcuts based on position activation
--adjust the code a bit for SideBars in order to show
when a SideBar is called for global shortcuts based
on position activation and hide correctly when the
global shortcut is not triggered any more.

BUG:420356
2020-04-21 01:45:07 +03:00
Michail Vourlakos
0d0b0413bb activate appletquickitem if it is not expandable
--when the user requests to activate an applet that
it is not expandable such as DashBoard then only
thing that it is possible, it is to forcefully
activate it

BUG:420275
2020-04-19 02:24:56 +03:00
Michail Vourlakos
5fdcef81af TASKS:Migrate to multiple Tasks architecture
--First steps in order to support mulitple Tasks
applets in the same dock and panel.
--Step1: migrate values from Containment to Task
applet.
--Step2: deprecate Task applet options that are
found in containment
--Step3: provide multiple dynamic Tasks tabs in
settings
2020-04-18 13:39:41 +03:00
Michail Vourlakos
0da74fb3ce Tasks:track multiple Tasks applets
--create an infrastructure in order to be able
to adjust and configure multiple Tasks plasmoids
2020-04-18 13:39:41 +03:00
Michail Vourlakos
bde33f98a9 remove blockHidingEvent on SideBar startup 2020-04-15 16:47:15 +03:00
Michail Vourlakos
8b41314b2f enable scrolling activation only for expandable
--systrays/internal containments are blocked from
this
2020-04-10 12:31:31 +03:00
Michail Vourlakos
0046c904d1 View:Move expanded applets code to View::Interface 2020-04-08 15:22:38 +03:00
Michail Vourlakos
fa65462dea move View::deactivateApplets to extendedInterface 2020-04-08 14:39:12 +03:00
Michail Vourlakos
2db252b769 fix warnings 2020-03-14 14:41:07 +02:00
Michail Vourlakos
34d6c2cd78 identify highest priority application launcher
--provide a new way to identify which application
launcher has the highest priority in order to be
triggered. When an application launcher applet
has a global shortcut assigned to it then that
application launcher applet has the highest
priority in order to be triggered through
"Super" global key.
2020-01-10 17:58:34 +02:00
Michail Vourlakos
d31d7afb9d dont wait for dock to show for activate shortcuts
--when the application launcher is not a popup then
we do not have to wait for the dock show we can execute
the activation code immediately
--when Latte activates an entry can now understand
if a popup is going to be shown in order to delay
the execution. If a popup is NOT going to show either
for a latte task or an applet then the code is executed
immediately

BUG:415417
FIXED-IN:0.9.6
2019-12-21 23:37:52 +02:00
Michail Vourlakos
111254e509 refactor:move qml handling from globalshortcuts
--all the qml handling code from globalshortcuts is
now moved to Latte::View::ContaimentInterface. This
way the code is cleaner and can be expanded easier.
2019-12-21 23:37:41 +02:00