Commit graph

892 commits

Author SHA1 Message Date
Ivailo Monev
53fda3a2f6 kdeui: remove the unused and non-standard LAUNCHED_BY ASN info
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 05:23:54 +03:00
Ivailo Monev
29bd64349f kdeui: do not use global static QString for the null effect fingerprint
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 01:00:02 +03:00
Ivailo Monev
ed4ebbe70e kdeui: remove unused KIconEffect::doublePixels() method
that's actually just scaling/transformation

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 00:49:00 +03:00
Ivailo Monev
c778105bde kdeui: format and indent kglobalsettings source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-02 00:26:14 +02:00
Ivailo Monev
6b477ad3dc kdeui: merge KGlobalSettingsData into KGlobalSettings::Private
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 20:48:04 +02:00
Ivailo Monev
e3117700d8 kdeui: remove unused KGlobalSettings::allowDefaultBackgroundImages() method
unused, no GUI to disable/enable it and palettes use colors (altough QBrush
can hold a texture)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 20:02:17 +02:00
Ivailo Monev
7a67866279 kdeui: read the mouse button mapping from the correct config
the mouse KCM stores the value in kcminputrc, not kdeglobals

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 19:48:10 +02:00
Ivailo Monev
4c7db025ff kdeui: someone's typos
why do KIconLoader methods take two size arguments overriding each other?
could've used negative values for KIconLoader::Group. I guess I will have
to fix someone's mess at some point

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-28 15:51:11 +02:00
Ivailo Monev
58798988c1 kdeui: minor KApplication documentation correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 20:27:49 +02:00
Ivailo Monev
ee59c22250 kdeui: minor KApplicationPrivate::sessionConfigName() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 18:40:00 +02:00
Ivailo Monev
8ab4b4bd40 kdeui: close only QMainWindow and derived classes from the KApplication quit handler
any widget should be parented to the main window (i.e. be a child of the
main window)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 17:49:33 +02:00
Ivailo Monev
4dd219d38b kdeui: close top-level widgets from the KApplication signal handler
this is much like session management but simply quitting the application
does not close the windows, if windows are not closed they will be leaked
(KMainWindow and derived classes are created on the heap without parent!)
and not saved properly because destructors would not be called

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 17:11:10 +02:00
Ivailo Monev
38e370d475 kdeui: new KApplication::quitOnDisconnected() method, also setup quit signal handler by default
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 15:09:48 +02:00
Ivailo Monev
786a11eeb0 kdeui: format and indent kdialogjobuidelegate source and header files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-23 03:35:16 +02:00
Ivailo Monev
5e3ceb0dd2 kdeui: quit KApplication when D-Bus daemon disconnects
so that applications (services like kglobalaccel, knotify, etc.) do not
keep running after the daemon quits (e.g. when program is started via
`kdesudo`, daemon quits but does not terminate services). there is a catch
tho - the order in which services quit may cause some trouble for
applications that do not expect services to suddenly stop

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 16:16:35 +02:00
Ivailo Monev
9d5d4d3f72 kdeui: remove the compat KApplication::saveYourself() signal
now unused

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 14:36:22 +02:00
Ivailo Monev
c545d14cf7 generic: remove binary compat bits
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-20 11:56:02 +02:00
Ivailo Monev
275b7be299 kdeui: klauncher recursion hack
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-19 16:59:18 +02:00
Ivailo Monev
4dbb501d25 generic: drop text-to-speech support
Katana (or any interface designed around key and mouse events) is not
for blind people, trying to slap text-to-speech on top of it was the
wrong thing to do to begin with

side note: speech-dispatcher tends to hang if the output device is not
configured properly (i.e. editing /etc/speech-dispatcher/speechd.conf
manually)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-18 15:56:59 +02:00
Ivailo Monev
bceaae0470 kdeui: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-17 15:09:27 +02:00
Ivailo Monev
e596f9a5d6 kdeui: unreserve KMessageBox::DialogType::SSLMessageBox
KIO SSL support was dropped some time ago (the certificates related code
that was used by konqueror)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-13 14:36:47 +02:00
Ivailo Monev
7cfcbc3775 kdeui: new KCrash::Backtrace to log backtraces
for programs that cannot call drkonqi to show backtrace (such as
ksmserver or any non-GUI D-Bus service)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 12:28:21 +02:00
Ivailo Monev
bdff3fa4e7 kdeui: log backtrace when no KCrash flags are set
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 12:17:48 +02:00
Ivailo Monev
6784f51d58 kdeui: tweak KNotificationManager and KGlobalAccel for automatic service activation
KGlobalAccelPrivate uses service watcher and the interface is invalid until
the service is activated (either by the first call of the interface or some
other lazy-initialization method), however KNotificationManager does
connect to signals immediately (which should work regardless) but the error
may have been logged before

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 12:00:23 +02:00
Ivailo Monev
a1951cfbae kdeui: reuse the already created interface in KGlobalAccelPrivate::getComponent()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 11:37:02 +02:00
Ivailo Monev
32dbecf2c6 kdeui: disable auto-restart when the application is about to quit
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 10:19:13 +02:00
Ivailo Monev
717fd59dc8 kdeui: send only SIGTERM before killing the selection owner via XKillClient()
XKillClient() is the same as sending SIGKILL

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 09:24:33 +02:00
Ivailo Monev
eb8ff2c536 kdeui: remove unused and private KHBox member
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 04:55:12 +02:00
Ivailo Monev
593dd8b8d3 kdeui: format and indent khbox source and header files
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 04:53:13 +02:00
Ivailo Monev
e7ae8c8351 kdeui: remove unused and private KTabBar methods
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 04:46:18 +02: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
0e980c95cc kdeui: remove redundant attempts to start D-Bus services
creating QDBusInterface should start the services, in case the services
cannot be started tho delays may be experienced (such as the UI freezing
while waiting for D-Bus reply to finish) thus logging error

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-09 03:40:07 +02:00
Ivailo Monev
f27ab85ce6 kdeui: correct breaks indentation in KPixmapSequenceOverlayPainter::eventFilter()
they look really out of place, don't they?

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-08 13:16:20 +02:00
Ivailo Monev
802bf9aaf1 kdeui: KPixmap documentation correction
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-08 13:12:30 +02:00
Ivailo Monev
6c98720e24 kdeui: implement KCrash::NoRestart flag
for programs that cannot be restarted by simply exec-ing them such as the
KIO slaves which require application socket as argument

note that restarting is maybe works thing - programs started by kdesudo
cannot be restarted (properly) as they are exec-ed by other program that
does the setup for them to function the way they should

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-08 00:36:35 +02:00
Ivailo Monev
d4bf3d7a70 kdeui: exit after logging error when drkonqi is not installed
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-07 08:54:32 +02:00
Ivailo Monev
41418cb12b kdeui: set the KCrash handler to the default one if command line args are not initialized
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-07 08:33:04 +02:00
Ivailo Monev
6896f96245 kdeui: check if the KCmdLineArgs pointer is non-null before using it
fixes possible crash (e.g. when KCmdLineArgs is not initialized)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-07 07:49:43 +02:00
Ivailo Monev
d258df3881 generic: unblock signals when setting handlers for them
generally, those signals should not be blocked but it seems something is
blocking consequent SIGSEGV signals send by `kill` for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-07 07:45:25 +02:00
Ivailo Monev
be2d99738e kdeui: use system() instead of QProcess to execute drkonqi
less things can go wrong

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-07 07:14:26 +02:00
Ivailo Monev
b3d1569867 kdeui: tag comment as note in KCrash::defaultCrashHandler()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 23:16:46 +02:00
Ivailo Monev
b447c353a7 kdeui: log error in case neither of the KCrash flags is set
since any message type can be set to log via syslog() that may be the only
way to know when a program without interface (such as service) crashes

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 04:23:05 +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
148110f398 generic: drop locolor support
`apt-file` search yeilds 221 files matching (8 packages provide such),
it is also unused by plasma even tho there are leftovers from support for it

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 01:30:27 +02:00
Ivailo Monev
ef0dd41a12 kdeui: do not assume XDisplayString() and getenv() return non-null
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 00:45:26 +02:00
Ivailo Monev
5177126cc6 generic: documentation update
note that the kdeinit README used to reference Pentium 3 CPU

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-05 02:08:10 +02:00
Ivailo Monev
aa6b5ea4f0 kinit: klauncher and KCrash rewrite
much simpler and easier to maintain, also it will be proper D-Bus
service now with no sockets, process title hack and whatnot. KCrash
and startkde script (in kde-workspace repo) have to be adjusted for
it tho

note that the internal KIO scheduler already has the functionality to
put slaves on hold but now they will be started as detached process.
eventually they may become plugins (they are loaded as such by kioslave
program) without event loop dispatcher

fixes application startup notification (ASN) and cleanup issues

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-04 23:20:15 +02:00
Ivailo Monev
409253ab09 kdeui: enable complex animation effects by default if compositing manager is running
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-03 03:22:28 +02:00
Ivailo Monev
ac32164782 kdeui: remove unused KFontChooser widget
unused since the raw (X11) fonts support was dropped

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-27 07:29:50 +02:00