Age | Commit message (Collapse) | Author |
|
It is redundant since the parent class, KConfig, has locationType().
Add some API docs for fileName(), even though one could use KConfig::name()
from the parent class, I think this would be confusing given a .desktop file
has a Name= entry, so fileName() is less ambiguous.
These seem to be leftovers from a previous refactor that happened a long time
ago.
|
|
|
|
|
|
|
|
This way consumers which want to use the ConfigPropertyMap don't have to
pull in KDeclarative's entire dependency tree.
Also we can remove the automatic saving of the config, previously
this was opt-out - which makes is difficult to deprecate anything.
This way the API design is also more clear, since the object only takes care of exposing the
data to QML. The writing has to be done manually, which makes more sense anyways when we have
the notify opt-in.
As discussed on the KF6 weekly thread, an optional QML submodule is seen as the best
way to handle the QML dependency.
Task: https://phabricator.kde.org/T12131
Relates to https://phabricator.kde.org/T12126, after his change the KDeclarative stuff can be deprecated.
Because we don't register the property map in any QML plugin, there is
no conflict in duplicating and modifying it now.
|
|
NO_CHANGELOG
|
|
|
|
|
|
|
|
This will output a warning if an invalid value is requested. The goal is to avoid
implicit conversion which might result in a zero-int value.
|
|
By using an enum we have a central place to provide docs for the most
common actions/restrictions. Also consumers can pass in type-safe enum
values instead of potentially undocumented strings that might contain typos.
Also it is better documents is a value is supposed to be authorized using
KAuthorized::authorize or KAuthorized::authorizeAction, in the case of "shell_access"
this was mixed up from time to time.
Considering that we do not want the parameter for the methods to become too long
I have deliberately decided against using `enum class`. Also we don't have
and usecases for the binary operators in combination with the newly added enums.
Task: https://phabricator.kde.org/T11948
|
|
This will become especially useful when moving state data from the config file
to a dedicated state data file.
Task: https://phabricator.kde.org/T12549
|
|
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
|
|
KConfigIniBackend relies on QLockFile which changes the content Uri and
this is bound to fail because we don't have permission. So, for these
Uris we use Android's Internal cache directory to save the .lock files.
|
|
GIT_SILENT
|
|
We were calling open(), then fopen(), then QFile::open(). This patch
removes the fopen() call that does not seem to do anything.
|
|
Otherwise we force consumers to use the config location for state data,
which is what we are trying to avoid.
Task: https://phabricator.kde.org/T12549
|
|
BUG: 441537
FIXED-IN: 5.86
|
|
Now generate Q_ENUM(<enum-name>)
|
|
|
|
|
|
Now that KF requires Qt 5.15.2; this basically reverts commit 2e8742e64fc0
with some trivial changes.
NO_CHANGELOG
|
|
clang-tidy checks:
readability-isolate-declaration and readability-braces-around-statements
KF task: https://phabricator.kde.org/T14729
GIT_SILENT
|
|
The code was using a QSet (hash-based), use a std::set instead
for unicity, it gives us sorting for free.
We probably want to do the same in groupList(), but that's separate.
|
|
This is the case where we expected to see Key[$d] in the config file,
and it was somehow broken. When saving, the key was omitted, so when
reloading the kdeglobals key was present again.
Detected when trying to write a unittest for a different patch...
I had to reshuffle the unittest a bit because testThreads calls
testSimple which didn't expect that the "[AAA]" group would actually
be deleted now.
|
|
GIT_SILENT
|
|
|
|
|
|
We are only interested in whether the file doesn't exist when it fails
to open. This saves a stat on every successful config file parse.
|
|
At the moment we are taking a bit of a detour by converting to char*.
Not a bit deal but reads better and ends up being less calls.
|
|
Whenever we read a config file, we are first parsing kdeglobalsrc. This
caches the parsed entries so that they can be reused as long as it
hasn't changed.
This reduces the parseConfig calls (which is mostly prominent at
early process startup) from 18 to 12 (33%) ksmserver-logout-greeter.
This also means there's better cache locality as well as less memory
allocated as a lot of objects are shared but I have not measured this.
|
|
NO_CHANGELOG
|
|
This reverts commit b3dc879e8b108c26c929bfbe551bcdf77f140e94.
This change breaks plasmashell startup and possible other apps as well.
Reverting so the root cause can be investigated without time pressure.
|
|
calling deleteGroup only deletes all entries but the group does still
exists in listGroups
this is somewhat irritating since calling exists on that group will
return false
with this patch the group does no longer exists in listGroup
|
|
NO_CHANGELOG
|
|
QStringView has some bits of API that were only added in 5.15.2, whereas KF
requires 5.15.0.
This reverts commit 1780fb2a237af80ddc1f9cfb70cb892b53b91990.
|
|
The symbol export/visibility attribute is not standardized so far and
needs to be set by language extension attribute declaration at least
with clang & MSVC, who both support that when it appears before the
standard attribute declaration.
NO_CHANGELOG
|
|
A window that is maximized does not really have a position on screen
other then the fact that it's maximized, and writing out position data
in this case anyway will only serve to mis-position the window once
da-maximized, should KWin ever stop remembering de-maximized window
positions internally.
CCBUG: 434116
|
|
NO_CHANGELOG
|
|
Some methods in ConfigLoaderHandler always returned true, change them to return
void instead. Also port them to take a QStringView instead of QStringRef, this
doesn't require a lot of changes because a QStringView can be constructed from
a QStringRef.
QXmlStreamAttribute methods like value() and name() return QStringRef in Qt5
and QStringView in Qt6, "fix" the issue by using auto keyword, which works
in both cases.
QStringView::toInt() isn't efficient in Qt5 so make the build conditional.
NO_CHANGELOG
|
|
This matches the method actually does, and makes it clearer that you don't
need to do config->sync() followed by config()->reparseConfiguration(), the
latter should suffice.
|
|
|
|
Since the FSDevice .desktop template hasn't been installed for a long time,
this method in KDesktopFile hasn't been useful. The whole FSDesktop concept
seems to be redundant nowadays, since CDRom and Floppy drives have been replaced
by USB sticks.
See this KF6 taks for more details:
https://phabricator.kde.org/T14295#253759
|
|
It's internal, the symbols are not exported, the header is not installed.
The _p.h naming makes this more obvious, when grepping for stuff in
public API.
|
|
All named authors from copyright statements confirmed this change
(confirmations at sysadmins' longterm archive). From the git history
check, relicensecheck tells:
- lgplv2+: mdawson pandom79@gmail.com
mdawson ( 6 LOC): 0005ba7
pandom79@gmail.com ( 4 LOC): eeb2bbe
Whereas pandom79 does not posses a KDE contributor account but also
confirmed via private mail (confirmation mail also in sysadmins'
archive).
Change 0005ba7 is a syntactical replacement of QT_TRANSLATE_NOOP with
QT_TRANSLATE_NOOP3 and thus can be assumed to not by copyrightable.
|
|
All named authors from copyright statements confirmed this change
(confirmations at sysadmins' longterm archive). From the git history
check, relicensecheck tells:
- lgplv2+: pandom79@gmail.com
pandom79@gmail.com ( 7 LOC): eeb2bbe
Whereas pandom79 does not posses a KDE contributor account but also
confirmed via private mail (confirmation mail also in sysadmins'
archive).
|
|
This fixes the clang warning
globalsettings_kmail.h:58:5: warning: '~GlobalSettingsBase' overrides a destructor but is not marked 'override' [-Wsuggest-destructor-override]
|
|
In Qt6 QDomDocument does not open the file itself any more
|
|
|
|
NO_CHANGELOG
|