Ivailo Monev
0e0db0b815
kdeui: move session management to KApplicaiton
...
every comment about X11 and session management in general claims it was
broken, not going to claim otherwise. everything that does not use
KApplication shall not be involved into session management now and gets
the middle finger (SIGTERM or SIGKILL) after 5 sec by klauncher when the
session is done
also session management has to be explicitly enabled by applications
now, disabled by default
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-09 08:29:51 +03:00
Ivailo Monev
302a470d3b
kded: drop unused window registration feature
...
no point in passing around windows to kded4 or its modules, job UI delegate
windows are different thing tho
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-04-20 15:45:36 +03:00
Ivailo Monev
e482da9067
kded: rework phases logic to take any desktop session into account
...
much like XDG autostart except for KDED modules, requires adjustments to
modules that are automatically loaded in phase-1
in the future the logic may apply not only to modules during startup but
also when attempting to load a module in general
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:01:34 +03:00
Ivailo Monev
c73567cb65
kded: log the error string when module fails to load
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-05 09:50:52 +03:00
Ivailo Monev
3380664558
kded: Kded::updateDirWatch() optimization
...
KDirWatch already checks if the path is added and appends trailing slash
as neccessary
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 13:15:55 +03: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
e921df61cf
kdecore: implement option to recurse into sub-directories from KDirWatch::addDir()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-21 11:47:56 +02:00
Ivailo Monev
03aba012a0
kdecore: KDirWatch rewrite
...
I rewrote QFileSystemWatcher some time ago for it to be able to watch
non-existing directories, did rewrite KDirWatch too to not use FAM
and inotify making the created() and deleted() signals non-operational
(with the plan to maybe implement them in QFileSystemWatcher but that
will be hack-ish for directories with stat()-based implementation)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-21 00:24:49 +02:00
Ivailo Monev
86082941ab
kded: load service modules in defined order
...
previously autoloaded modules would be loaded in arbitrary order regardless
of what phase they are ment for from Kded::initModules() but phase two
should be done by ksmserver
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 20:51:10 +02:00
Ivailo Monev
bab2e1b6e4
kded: log the kde_running variable value
...
if it is false then modules that are not ment for full session are not
automatically loaded on init so it shall serve as a hint when debugging
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 20:01:24 +02:00
Ivailo Monev
2178afec68
kded: do not send notification to ksplash
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-03 11:36:22 +02:00
Ivailo Monev
68cae26289
kded: look for kdontchangethehostname program via KStandardDirs::findExe()
...
kdontchangethehostname is not in PATH, it is installed (usually) as
/usr/lib/kde4/kdontchangethehostname and QProcess::execute() will not find
it if the full path is not passed to it
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 00:52:58 +03:00
Ivailo Monev
b6671dbbac
kded: merge KHostnameD class into Kded class
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 00:47:25 +03:00
Ivailo Monev
0200224ba3
kded: attach the hostname watcher to the Kded object
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-06-13 19:11:17 +03:00
Ivailo Monev
dd7bbd86aa
kdecore: use kcheckrunning to check if it is full session in KToolInvocation::invokeBrowser()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-06-01 01:39:49 +03:00
Ivailo Monev
d6d9273029
kded: replace Kded::readDirectory() with its body
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-30 14:02:29 +03:00
Ivailo Monev
4213d1a06e
kded: update resource list before directory watch
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-30 13:55:42 +03:00
Ivailo Monev
5968bc3c46
kded: check if timer is active instead of using member as re-creation guard
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-26 13:21:05 +03:00
Ivailo Monev
84afe0c4a9
generic: run kbuildsycoca4 directly when checking database and start kded4 only to monitor resources
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-26 12:20:02 +03:00
Ivailo Monev
8cbb665395
kded: remove now redundant KDE_FULL_SESSION X11 atom check
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-26 09:02:53 +03:00
Ivailo Monev
738b4caea0
kded: disable session manager via SESSION_MANAGER environment variable unset too
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-26 06:36:20 +03:00
Ivailo Monev
7708044f26
kdeui: implement KApplication::quitOnSignal() and use it in kded4
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-26 02:38:06 +03:00
Ivailo Monev
e83a89249c
kded: do not pass --incremental to kbuildsycoca4
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-25 09:57:45 +03:00
Ivailo Monev
fd0befa582
kded: check for KDE_FULL_SESSION X11 atom if KDE_FULL_SESSION is not set
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-24 02:05:44 +03:00
Ivailo Monev
6c007d6851
kded: do not set custom signals handler
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-24 01:03:24 +03:00
Ivailo Monev
fcee5ed25f
kded: correct condition for initial sycoca database re-creation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-23 23:58:30 +03:00
Ivailo Monev
d712c60cd1
kded: message filter micro-optimization
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 10:54:33 +03:00
Ivailo Monev
abc282545a
kded: fallback to kcheckrunning for checking of it is Katana session, disregard session version
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 10:30:39 +03:00
Ivailo Monev
393101ed0e
kded: use the application instance as parent for the KHostnameD pointer
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 06:53:00 +03:00
Ivailo Monev
1391b07bca
kded: Q_DBUS_EXPORT is always defined now
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 06:46:48 +03:00
Ivailo Monev
e3a0f02909
kded: fix possible crash
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 06:38:14 +03:00
Ivailo Monev
7a8cdcc01b
kded: do not deep-copy the QString object when iterating over resource directories
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 06:29:13 +03:00
Ivailo Monev
71e791e4d8
kded: ensure message filter does not process kded service unregistration messages
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 05:45:12 +03:00
Ivailo Monev
f0451272ec
kded: parent the Kded object to the application instance
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 05:40:13 +03:00
Ivailo Monev
d9281db1f8
kded: refuse to start if service is already registered
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 04:34:18 +03:00
Ivailo Monev
7448e0b21d
kded: disable session management via KApplication::disableSessionManagement()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 02:37:55 +03:00
Ivailo Monev
c8549a09f6
kded: remove now redundant command-line option
...
same as calling `kbuildsycoca4`
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 02:37:31 +03:00
Ivailo Monev
492be17944
kded: setup signals handler immediately after application is constructed
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 02:17:59 +03:00
Ivailo Monev
32f2290ec3
kded: initialize all Kded members
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 02:17:04 +03:00
Ivailo Monev
07991ac99d
kded: do not auto-restart on crash
...
D-Bus will start the kded4 if the service is required and not running
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 01:49:23 +03:00
Ivailo Monev
bf88004569
kded: unregister objects and service from destructor
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 01:48:20 +03:00
Ivailo Monev
0d2195c4d8
kded: start on demand as session D-Bus service
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 01:40:02 +03:00
Ivailo Monev
a6cee97e0b
kded: rework sycoca database recreation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-11-14 17:47:13 +02:00
Ivailo Monev
92b5103cc7
kded: indent and format
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-07-06 03:30:21 +03:00
Ivailo Monev
63c78ae986
kded: avoid temporary in Kded::updateResourceList()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-01-02 21:30:25 +02:00
Ivailo Monev
c0e06f8215
generic: adjust to Katie changes
...
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-07-04 23:59:42 +00:00
Ivailo Monev
6c67e5adf8
generic: make use of QHostInfo::localHostName()
...
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-06-21 19:56:58 +00:00
Ivailo Monev
aede58befc
generic: reimplement KDirWatch
...
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-05-29 12:18:09 +00:00
Ivailo Monev
61333c4671
generic: namespaced Qt4/Katie build fixes
...
most of the changes were done trought Katie's namefsck script which
convertes forward class declarations to include directives, however
other fixes here and there were needed as well as some questionable
changes to Q_DECLARE_TYPEINFO() macro calls because they most likely
have to do the namespacing themselfs (QT_BEGIN/END_NAMESPACE, and
probably will be in Katie) meaning that some of the changes may be
temporary and reverted later.
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2017-08-04 09:24:39 +00:00
Ivailo Monev
fe63492fc7
kded: fix regression since 8493b8a0
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2016-04-21 23:56:48 +00:00