1
0
mirror of https://github.com/KDE/latte-dock.git synced 2025-03-21 22:50:14 +03:00

73 Commits

Author SHA1 Message Date
Michail Vourlakos
7bc31fc9ea support wayland activities since kf5>=5.81 2021-06-12 14:18:03 +03:00
Alexander Lohnau
505379ed04 Use spdx syntax for all files 2021-05-27 15:01:00 +00:00
Andreas Sturmlechner
53aad2f979 Port away from deprecated API (NET::StaysOnTop -> NET::KeepAbove)
Deprecated since 5.0.

Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
2021-05-14 23:13:51 +00:00
Michail Vourlakos
939c0573f9 x11:accept signals from Desktop windows
--this way we make sure that if Desktop windows
were not filtered out in the past they will be
in the future
2020-10-28 10:27:35 +02:00
Michail Vourlakos
24696fcf06 check plasmashell windows always to track desktops 2020-07-19 18:05:44 +03:00
Michail Vourlakos
6de05c92e8 support XCP::SHAPE for Views
--views can now specify their input area under X11 and
give valuable space to underlying windows
2020-07-19 15:04:46 +03:00
Michail Vourlakos
ec949948b6 fix View recraetion and frameExtents freezes
--View recreation path was broken from new implementation
for Latte::Interfaces that pass objects to containment
interface. This is now fixed and Interfaces::View object is updated
and broadcasted correctly when changed
--when GtkFrameExtents are zeroed for behaveAsPlasmaPanels
then it is better to recreate the view to avoid freezes and
hidings of the view because of compositor strange behavior
2020-05-12 14:45:31 +03:00
Michail Vourlakos
8b32be15b9 support GtkFrameExtents under X11
--this way to dock windows can now snap beautifully
with windows around them, very beautiful behavior!
That was pretty annoying in the past.
2020-05-11 17:31:51 +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
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
ce245ab253 ignore some windows in LastActiveWindow
--LastActiveWindow is providing information to
applets thus special windows that contain
the following flags:
skipTaskBar AND (skipPager OR skipSwitcher)
these windows can be totally ignored.
In such window case the LastActiveWindow used
are provided.

BUG:419384
2020-04-07 13:00:45 +03:00
Michail Vourlakos
0d29114664 whitelist krunner and yakuake windows 2020-03-26 14:16:04 +02:00
Michail Vourlakos
4d3b5e86e8 major refrest for wm(s), remove consts
--introduce also windows whitelist that can
be used in order to force tracking in some
windows
2020-03-25 18:40:48 +02:00
Michail Vourlakos
efaaf70297 x11: do not track popups at all cases 2020-03-25 14:50:01 +02:00
Michail Vourlakos
2db252b769 fix warnings 2020-03-14 14:41:07 +02:00
Michail Vourlakos
d3b5e2c4eb remove gtk_frame_extents from window geometries
--under x11 environment remove the gtk_frame_extents that
are used for shadows under plasma environment

BUG:417856
2020-03-06 21:45:54 +02:00
Michail Vourlakos
b82d9dfdbe x11:validate windows added before accepting them
--this way when Plasma Desktop is reloaded or during
startup after Latte is loaded then Plasma desktop
window is still totally ignored.
2020-03-05 21:20:25 +02:00
Michail Vourlakos
4df139f34f ignore ksmserver fullscreen windows
--this way fullscreen windows from ksmserver
such as LogOut are totally ignored from Latte
for coloring,placement etc.
2020-03-02 10:05:43 +02:00
Michail Vourlakos
d5033d1bed improve latte wayland ids discovery
--introduce new waylad ids discovery implementation
for View::Positioner
2020-03-02 09:39:57 +02:00
Michail Vourlakos
5363433b00 ignore fullscreen windows from Plasma and Latte
--drop isPlasmaDesktop flag for windows and use the
new wm approach for plasmaIgnoredWindows
2020-02-29 17:57:59 +02:00
Michail Vourlakos
4b1580c0bd move View::HelperWindows in their own directory
--at the same time create a base SubWindow class for
all window helpers used by Views. Now ScreenEdgeGhostWindow
and FloatingGapWindow use the same window implementation
2020-01-22 19:45:13 +02:00
Michail Vourlakos
b681836232 expose WindowAbilities from LastActiveWindow API
--expose isClosable,isMinimizable, isMaximizable etc..
through the LastActiveWindow API for applets or containments
to use
2020-01-22 13:02:00 +02:00
Michail Vourlakos
e0e6f5f6b3 improve semantics for WM::setActiveEdge 2020-01-03 21:18:01 +02:00
Michail Vourlakos
c88329d278 x11:improve experience for Windows Always Cover
--simplify also some parts from windows calling window
manager values
2019-12-26 21:58:21 +02:00
Michail Vourlakos
d9e18794c8 simplify keepabove/below calling
--start a bit to work with "Windows Always Cover"
visibility mode
2019-12-26 21:10:11 +02:00
Michail Vourlakos
3554c4a006 improve some functionality used 2019-12-26 17:25:56 +02:00
Michail Vourlakos
72777d18c1 add functionality to latte window manager
--the Latte window manager has gained now
functions in order to set the window flags
properly and to update KeepAbove/KeepBelow
flags for windows
2019-12-26 16:53:37 +02:00
Michail Vourlakos
6b5f4a952a dont drag/maximize windows from different desktops
--the last active window codepath provides a way to
drag and maximize/restore the last active window. This
should not occur when the last active window is not
in the current desktop and activity.

BUG:414089
FIXED-IN:0.9.5
2019-11-13 14:25:43 +02:00
Michail Vourlakos
f63200988e ignore Plasma panels in Latte heuristics 2019-11-02 16:53:27 +02:00
Michail Vourlakos
a946e485e0 indent fixes 2019-11-02 16:53:18 +02:00
Michail Vourlakos
153f5dab27 remove obsolete draggingStarted signals/slots
--draggingStarted signals/slots were used in order
to handle the active window dragging from empty areas.
The new approach ungrabs the mouse properly through
View relevant function and at the same time sends a
QEvent::Leave event to inform applets that the mouse
has left the view. This is enough in order to remove
any older draggingStarted workarounds and hacks.
2019-08-26 16:30:48 +03:00
Michail Vourlakos
42d94df47f introduce windowCanBeMaximized
--trying to avoid interacting with windows
that DO NOT allow it
2019-07-31 16:44:43 +03:00
Michail Vourlakos
59f1d72fa3 improve canBeDragged implementation
--follow libtaskmanager case to support this
2019-07-31 16:34:05 +03:00
Michail Vourlakos
fcee8d98cc x11 fixes for invalid windows
--when a window is stacked back to its parent window
for example the firefox case (dragging a tab to create
a new firefox window and redrag it afterwards to the
main window) the wm::windows array had inconsistent
window records.
--This is fixed and also any X11 transient changed signals
are not blocked for windowChanged signals
2019-07-23 12:08:58 +03:00
Michail Vourlakos
964f2282f2 consider main window also for dodge active
--if the main window is not active but is
touching the dock then the dock is not shown
for dodge active state
--fix the cleanup code in order to cleanup
windows that have a ghost wid ( 0 )
2019-07-23 00:17:46 +03:00
Michail Vourlakos
79f392723e wm:support ignored windows
--x11 implementation is in place and wayland
case must be updated accordingly
2019-07-13 14:51:26 +03:00
Michail Vourlakos
91a9e7c0c5 improvements for effects area and painting 2019-06-15 16:12:15 +03:00
Michail Vourlakos
df3118fc98 Revert "remove workaround for X11 struts !compositing gap"
This reverts commit 37b708ef52b70777196f81dcda5f893ad859bd9c.
2019-06-15 15:43:23 +03:00
Michail Vourlakos
37b708ef52 remove workaround for X11 struts !compositing gap 2019-06-15 10:02:23 +03:00
Michail Vourlakos
1051372e04 expose to qml builtin activity/vds switching
--tested that this fixes also the Latte crash
on exit as PagerModel is not used any more in
Latte internal code
2019-06-10 17:49:21 +03:00
Michail Vourlakos
d312598f60 provide builtin Activity,VDs switching
--this way we will avoid also the crash
on wayland produced by the deprecated
PagerModel
2019-06-10 17:30:25 +03:00
Michail Vourlakos
59a4d63ca6 improve activities and desktops WM filtering 2019-06-08 00:31:30 +03:00
Michail Vourlakos
51c11071dd support toggle onAllDesktops for LastActiveWindow 2019-06-02 01:57:03 +03:00
Michail Vourlakos
af609ca53f X11:track more LastActiveWindow properties
--track windowChanged properties for KeepAbove
and isOnAllDesktops flags under X11
2019-06-02 01:33:34 +03:00
Michail Vourlakos
f3eacf169e add actions for LastActiveWindow 2019-06-02 01:16:44 +03:00
Michail Vourlakos
6898623bd6 identify PlasmaDesktop on startup under X11
--this was only an issue during startup but
add the same time is a good place to add a check
for plasma desktop
2019-06-01 11:04:23 +03:00
Michail Vourlakos
a03655f176 new heuristic to identify plasma desktop window 2019-06-01 03:49:57 +03:00
Michail Vourlakos
54f1e3576e ignore Desktops under X11 2019-06-01 02:57:47 +03:00