Commit graph

55 commits

Author SHA1 Message Date
Ivailo Monev
1969c7c22a kdeui: drop bogus multihead support
tottaly a hack, restoring applications on specific display will not work
either (not as long as it is possible to start session on any display, i.e.
restoring on specific display is unreliable)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-01 16:19:18 +03:00
Ivailo Monev
6ed94914fe generic: get QImage and QPixmap objects width and height via the specialized methods
QImage::size() and QPixmap::size() construct QSize object from the internal
width and height members

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-30 03:45:25 +03:00
Ivailo Monev
55428d34e1 kdeui: someone's typo
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-30 01:39:19 +03:00
Ivailo Monev
35541fb02c kdeui: initialize variables in KWindowSystem::setOnDesktop()
see the previous commits

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-30 01:35:10 +03:00
Ivailo Monev
add566bc21 kdeui: initialize variables in NETWinInfo::kdeGeometry()
in case XGetGeometry() fails and the variables end-up being uninitialized

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-30 01:29:36 +03:00
Ivailo Monev
450120097d kdeui: reimplement KNotification
cleaning up the mess, everything but KNotificationConfigWidget is
implemented.

not only does it not require additional D-Bus service (knotify) to
function but also does not transmit pixmaps over D-Bus, the features
to execute command or log to file are dropped and will not be
implemented.

also about markup support in notifications - if the server does not
support markup then it is supposed to strip it, see the spec:
https://specifications.freedesktop.org/notification-spec/notification-spec-latest.html#backwards-compat
meaning nothing should be done by KNotification itself because it is not
a server, it is just a proxy.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-25 09:01:39 +03:00
Ivailo Monev
a7654dc3db kdeui: remove redundant _KDE_NET_WM_FRAME_STRUT atom and checks for it
see the following commit in kde-workspace:
0417ee37990d43a20d1c1ce05aeb213d2c1866f6

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-16 21:18:18 +03:00
Ivailo Monev
43239c5d96 kdeui: simplify compositor ownership check in KWindowSystemPrivate::x11Event()
it does not matter what window the event is comming from when it comes to
the compositor atom - it is supposed to be only one

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-07 06:51:11 +03:00
Ivailo Monev
d5d26f9b11 kdeui: remove unused and non-operational KWindowSystem::allowExternalProcessWindowActivation() method
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 04:06:40 +02:00
Ivailo Monev
ca762874c8 kdeui: remove KWindowSystem::doNotManage() method
what if KWin is not running? it's not a WM spec thing anyway

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 04:04:20 +02:00
Ivailo Monev
7205f8f391 kdeui: install the KWindowSystemPrivate event filter before selection XFixes input
fixes possible X11 event race

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 02:48:44 +02:00
Ivailo Monev
27b5f27d2e kdeui: check if Xfixes is available before using xfixesEventBase
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 00:45:38 +02:00
Ivailo Monev
78ff2c38ef kdeui: initialize KWindowSystemPrivate::xfixesEventBase
now the compiler will not be able to detect uninitialized usage, it did not
warn for it either tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 00:44:43 +02:00
Ivailo Monev
d76b5a1e64 kdeui: install KWindowSystemPrivate event filter after Xfixes check
otherwise xfixesEventBase may be used uninitialized (it still can be but
only if Xfixes is not available, to be fixed in the follow-up commit)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-17 00:37:11 +02:00
Ivailo Monev
a846ee0719 kdeui: update NET::timestampCompare() and NET::timestampDiff() documentation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 04:07:10 +02:00
Ivailo Monev
a4a374b1f2 kdeui: correct NET::timestampCompare() return type
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 04:05:39 +02:00
Ivailo Monev
f2d1398ac7 kdeui: use DefaultScreen() to get the screen in KWindowSystem::minimizeWindow()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 03:34:47 +02:00
Ivailo Monev
a265d51b10 kdeui: KWindowSystem::connectNotify() optimization
the QLatin1String constructs result in QString comparison

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-16 03:09:57 +02:00
Ivailo Monev
028414cb07 kdecore: KDebug rewrite
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-22 19:17:52 +03:00
Ivailo Monev
407275beae kdeui: replace NETWinInfo::iconInternal() and NETWinInfo::setIconInternal() with their body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 01:36:30 +03:00
Ivailo Monev
ae98b867a0 kdeui: plug some memory leaks
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-05-18 15:55:57 +00:00
Ivailo Monev
2f8448c76c generic: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-05-17 16:14:26 +00:00
Ivailo Monev
6cdb77afd3 generic: various cleanups
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2018-07-17 15:35:02 +00:00
Ivailo Monev
496090d3fa kdeui: fix build issue caused by recent X11 changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2017-06-24 02:35:36 +00:00
Ivailo Monev
a567ffcc5b kdeui: avoid QPixmap->QImage->QPixmap converting and construction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-09-05 03:29:35 +00:00
Ivailo Monev
718725941c generic: get rid of the effects watcher specific to Plasma
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-08-29 19:39:11 +00:00
Ivailo Monev
728e5f7061 generic: get rid of KXUtils
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-08-15 15:08:04 +00:00
Ivailo Monev
412fd65b4f kdeu: get rid of KXUtils::createPixmapFromHandle()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-08-15 14:53:16 +00:00
Ivailo Monev
6eab6c564d kdeui: replace some tabs with space
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-08-15 13:23:59 +00:00
Ivailo Monev
293c931e22 Revert "generic: port some functionality to XCB" 2016-08-12 00:52:46 +00:00
Ivailo Monev
8024c8cbec generic: fix indentation compiler warnings
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-06-11 19:34:32 +00:00
Ivailo Monev
457ce43ad1 kdeui: use non-deprecated methods of QRect/QRectF
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-05-28 23:14:26 +00:00
Ivailo Monev
d5dc1bd28c kdeui: remove support for obsolete StaysOnTop
it was never in the EWMH specs as far as I can tell, and it certainly is
not in the latest one from:
https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-04-16 13:47:17 +00:00
Ivailo Monev
aa427fbc74 generic: get rid of TopMenu window mask
I think the last use of it went away with KMenuBar, other parts Katana
mostly check for it so that they can ignore it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-03-26 17:19:15 +00:00
Ivailo Monev
28f41fa146 generic: misc cleanups
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2015-11-23 05:13:07 +02:00
Ivailo Monev
2eceb5f064 generic: misc cleanups 2015-09-27 01:19:30 +00:00
Ivailo Monev
57b3aa692c generic: misc cleanups 2015-08-24 23:45:12 +03:00
Ivailo Monev
aac869a637 kdeui: apply some code style to window management files
the changes are incomplete, still a lot to be done
2015-08-20 20:51:57 +03:00
Ivailo Monev
332bb23e15 generic: port some functionality to XCB
the module for finding the library is simple and kdeui now has to
link to both X11 and XCB libraries but this allows clients that
make use of the KDE window management API to not use Xlib API.
2015-08-20 06:06:40 +03:00
Ivailo Monev
928843400c kdeui: merge NETWinInfo2 and NETWinInfo classes 2015-08-20 04:38:55 +03:00
Ivailo Monev
21ad0df488 generic: make changes required for building against katie 2015-08-11 05:56:07 +03:00
Ivailo Monev
610f06586e kdeui: make use of ret in compositingActive() 2015-07-14 22:36:33 +00:00
Ivailo Monev
d17cfcde10 kdeui: prevent segmentation fault due to failed XOpenDisplay() 2015-07-14 22:33:55 +00:00
Ivailo Monev
e05886723a generic: normalize include guards 2015-07-11 18:20:46 +03:00
Ivailo Monev
bf501e6429 generic: remove redudant virtual_hook definitions 2015-04-23 14:50:12 +00:00
Ivailo Monev
b7025d7a97 kdeui: remove support for override/unmanaged window type 2015-04-20 07:23:30 +00:00
Ivailo Monev
82fc15f54b generic: use CMake moc instead of automoc4 by default
for compatibilty reasons automoc4 support is not removed but it
shall be in the future. automoc4 has not been maintained for a
while (last commit is from 2011) and the stable release is from
2009.

CMake version >= 2.8.6 provides the functionality for mocking so
I see no reason to not make use of it.
2015-02-27 07:40:26 +00:00
Ivailo Monev
588759ff7c kdeui: drop support for _KDE_NET_WM_ACTIVITIES
previous changed that were supposed to do this were almost right,
the only exception to make it right is to change netAtomCount
accordingly preventing out-of-bounds actions
2015-01-25 05:14:00 +00:00
Ivailo Monev
187981587b partitially revert 92c0cae and remove some activities related cruft 2015-01-16 02:17:28 +00:00
Ivailo Monev
908c9b4b78 remove custom Window Manager activities definitions 2015-01-15 20:17:54 +00:00