Commit graph

753 commits

Author SHA1 Message Date
Ivailo Monev
99ec1f4186 kdecore: register cache and tmp resources from KStandardDirs constructor
if QStandardPaths::writableLocation() did not create the directories
KStandardDirs::locateLocal() or KStandardDirs::saveLocation() will

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 09:18:18 +03:00
Ivailo Monev
673a3171ec kdecore: remove duplicate kshell header inclusion in kconfig source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 09:14:19 +03:00
Ivailo Monev
9fd7e104aa kdecore: fetch environment variables only if needed in KShell::envExpand()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 02:05:32 +03:00
Ivailo Monev
cee8f0b972 kdecore: minor KShell::envExpand() optimization
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 01:22:59 +03:00
Ivailo Monev
abe3e49268 kdecore: implement KShell::envExpand() and use it in KConfig and KUrlCompletion
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-11 01:19:02 +03:00
Ivailo Monev
0b85d352a4 kdecore: format kuser_unix source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 23:14:44 +03:00
Ivailo Monev
8a7126133f kdecore: KShell and KMacroExpanderBase documentation update
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 18:59:48 +03:00
Ivailo Monev
2fd512e502 generic: install modules in subdirectory of the library directory by default
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 15:05:17 +03:00
Ivailo Monev
24b67a85eb kdecore: ensure the lib and module resource directories are in the Katie library search path
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 15:02:53 +03:00
Ivailo Monev
a869da3645 kdecore: deduplicate code by using KStandardDirs::resourceDirs() in KStandardDirs::saveLocation()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 13:57:52 +03:00
Ivailo Monev
55699fc8a3 kdecore: remove the unused "html" and hidden "home" standard directory resources
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 04:15:48 +03:00
Ivailo Monev
056a8f184e kdecore: remove the legacy and unused expandvars option of kde4-config program
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-10 04:14:01 +03:00
Ivailo Monev
d24dd98aee kdecore: easier to maintain KStandardDirs resources table
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 23:55:09 +03:00
Ivailo Monev
5b6151074a kdecore: remove unused header inclusions in kstandarddirs source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 18:54:04 +03:00
Ivailo Monev
47b106e84a kdecore: remove unused header inclusions and move comment where it belongs in kstandarddirs source file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 18:51:20 +03:00
Ivailo Monev
eb7bb8ec72 kdecore: do not copy the QFileInfo object in checkExecutable() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 18:43:10 +03:00
Ivailo Monev
b282921233 kdecore: remove unused variable in KStandardDirs::findExe()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 18:39:22 +03:00
Ivailo Monev
9b372b0d57 kdecore: include the class name when printing warning from KStandardDirs::realPath()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 18:39:00 +03:00
Ivailo Monev
b317eeb690 kdecore: do not attempt to guess the exec prefix
for any program that is not in /usr/bin, /usr/sbin, /usr/local/bin, etc.
the prefix is wrong. for example it will be /usr/libexec for
/usr/libexec/kde4/drkonqi and probably worse for any program outside the
system PATH (scripts and programs in ~/bin anyone?)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-09 06:29:07 +03:00
Ivailo Monev
8cdefb0402 kdecore: replace qmap with QStringList header inclusion in kstandarddirs header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 21:21:46 +03:00
Ivailo Monev
035c864ad2 kdecore: remove redundant KConfig forward-declaration in kstandarddirs header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 21:21:21 +03:00
Ivailo Monev
d659ad0241 kdecore: expect KLockFile::getLockInfo() to fail if not called on the lock owner in the KLockFile test
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 17:49:43 +03:00
Ivailo Monev
82a503ebb3 kdecore: minor KLockFile optimization
it is cheaper to realloc() the QByteArray data

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 17:34:42 +03:00
Ivailo Monev
7607559fd2 kdecore: replace private KStandardDirs methods with their body
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 16:17:00 +03:00
Ivailo Monev
cc1b77d904 kdecore: convert KStandardDirs::exists() and KStandardDirs::realPath() to static methods
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 15:26:19 +03:00
Ivailo Monev
ae5646a52f kdecore: deduplicate code in KLocalePrivate
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 15:00:53 +03:00
Ivailo Monev
0812a98d19 kdecore: block only when another process is holding the lock in KLockFile::lock()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 14:12:41 +03:00
Ivailo Monev
2e9adc69c4 kdecore: kglobal header inclusion is no longer required in klockfile header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 13:57:07 +03:00
Ivailo Monev
90cc0a794c kdecore: mark KFolderMimeTypePrivate reimplementations as final
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 07:07:49 +03:00
Ivailo Monev
fce08e0ff9 kdecore: KLockFile documentation corrections
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 06:54:40 +03:00
Ivailo Monev
5d42434579 kdecore: KLockFile branches optimizations
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 03:41:29 +03:00
Ivailo Monev
cada9f78a4 kdecore: KLockFile rewrite
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 03:28:20 +03:00
Ivailo Monev
5a32a5865c kdecore: drop support for locking NFS files on servers v3 or older
note that KLockFile is used only by KConfig (its INI backend), anything
not using KConfig to access files is not affected by the lock method
KLockFile uses

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 01:20:50 +03:00
Ivailo Monev
abc0f87ee4 kdecore: use uninitialized QByteArray instead of resizing it after creation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 03:09:41 +03:00
Ivailo Monev
b8cda045bd kdecore: do not assume the output exists in KDE::rename()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-07 22:49:55 +03:00
Ivailo Monev
4ff227e336 kdecore: emulate cross-filesystem move in KDE::rename()
if the temporary directory is of tmpfs type (which is the case on
Debian) then moving temporary files will fail thus thumbnails will not be
cached for example because they are stored as temporary file first and
then moved to ~/.thumbnails

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-07 22:38:57 +03:00
Ivailo Monev
ce5ff1c1c8 kdecore: implement temporary filepath generator
using it means no disk I/O to generate temporary filepaths in some cases

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-07 05:17:49 +03:00
Ivailo Monev
c0d5ff224b generic: using timezone related classes no longer requires org.kde.kded service
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 23:41:36 +03:00
Ivailo Monev
37878bd452 kdecore: move private KFilterBase members to the private data pointer class
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 22:36:06 +03:00
Ivailo Monev
3ab3f3b47f kutils: new karchive library to replace KZip and KTar
it has to solve a few problems like:
1. blocking the current thread while listing, extracting or adding to
   archive
2. lack of support for some archive formats such as 7-zip in the
   previously available classes for dealing with archive
3. progress and error reporting

a KArchiveJob class may have to be implemented to solve the above
issues. the API is just as frustrating to use as KTar and KZip right now
tho and I am not happy with that but the class itself is a 3-rd rewrite
of what was once Python module, plugin for another project and now used
as base in library.

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 16:53:55 +03:00
Ivailo Monev
8bb2fec99a generic: drop support for archive KIO slaves
KIO was designed around remote protocols and is very much not suitable for
archive browsing for example

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-06 14:41:24 +03:00
Ivailo Monev
045328e4b6 generic: regenerate parsers
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 08:52:24 +03:00
Ivailo Monev
25f748a009 kdecore: tune the buffer sizes in KSystemTimeZonesPrivate::update()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 08:35:18 +03:00
Ivailo Monev
ec1a9d532f kdecore: typo
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 08:31:24 +03:00
Ivailo Monev
8e7c91c20d kdecore: process events for no more than 250ms while waiting for service to unregister in KAuthorization::execute()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 03:29:20 +03:00
Ivailo Monev
df6025d743 kdecore: add code for printing the time it takes to update the zones cache
takes ~15ms when plasma-desktop is started for the first time here,
followup updates take 3-4ms

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 01:06:13 +03:00
Ivailo Monev
fb21ef07e8 kdecore: use sscanf() for parsing zone.tab
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 20:16:55 +03:00
Ivailo Monev
9b07290ada kdeui: prefix HOME_URL, BUG_REPORT_URL and BUG_REPORT_EMAIL definitions with "KDE_"
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 16:25:13 +03:00
Ivailo Monev
9c52bc5674 kdecore: open the wiki when help is requested
help KIO slave is no longer maintained

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 16:03:50 +03:00
Ivailo Monev
e587e6ad28 kdecore: update comment and remove unused variable in KSaveFile::backupFile()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-03 14:34:32 +03:00