aboutsummaryrefslogtreecommitdiff
path: root/src/core
AgeCommit message (Collapse)Author
2021-02-04SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2021-01-29Replace KF5_VERSION with KF_VERSIONNicolas Fella
Frameworks will be Frameworks 6 at some point and there is no good reason to have the major version in the variable name. Given this is purely internal we can to this now, making it a bit more future-proof GIT_SILENT NO_CHANGELOG
2021-01-27Remove dead cmake codeNicolas Fella
KDEWIN_LIBRARIES is never defined
2021-01-26KConfig: preserve the milliseconds component of QDateTimeDavid Faure
I stored a file's lastModified() into KConfig, to compare with it again on next start, and the loss of milliseconds made the code think the timestamps didn't match, even when they did.
2021-01-18Use Q_EMIT instead of emitAhmad Samir
In C++20 there are new classes that have member functions named emit(). c.f.: https://lists.qt-project.org/pipermail/development/2020-February/038812.html https://en.cppreference.com/w/cpp/io/basic_osyncstream/emit GIT_SILENT
2021-01-12Port to QRecursiveMutexNicolas Fella
Using QMutex in recursive mode is deprecated.
2020-12-18Remove ifdefs, we require Qt 5.14 nowAlbert Astals Cid
2020-12-12Properly include QStringListNicolas Fella
Forward declaring it breaks with Qt6
2020-12-03Fix commentAhmad Samir
GIT_SILENT
2020-11-07Add KF6 TODO to use the just-approved (*) XDG_STATE_HOME env var.David Faure
See https://gitlab.freedesktop.org/xdg/xdg-specs/-/merge_requests/4 (*) by me :-)
2020-11-07Fix KConfigGroup::copyTo with KConfigBase::NotifyFabian Vogt
Without this, bNotify was not set on copies, making Notify a noop. CCBUG: 428771
2020-10-23If include is define in .h remove it if it's defined in .cpp too (scripted)Laurent Montel
2020-09-21SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2020-09-14Use reverse order in KDesktopFile::locateLocal to iterate over generic ↵Jeremy Whiting
config paths. Since windows has some generic config paths that are parents of other generic config paths e.g. c:/CraftRoot/build/_/<hash>/build/bin followed by c:/CraftRoot/build/_/<hash>/build/bin/data we need to search for locations from the last location to the first.
2020-08-29API dox: consistently use version number without product name for @deprecatedFriedrich W. H. Kossebau
GIT_SILENT
2020-08-28Introduce method to query KConfigSkeletonItem default valueDavid Edmundson
5.64 added an isDefault method however this doesn't suffice for usage in KConfigDialogManager which compares a current value to the default. KConfigDialogManager currently uses a hack with side effects. Exposing the value directly solves that.
2020-08-24Fix qt warning:Laurent Montel
"QtPrivate::DeprecatedRefClassBehavior::warn|?libKF5ConfigCore.so.5?|?libKF5ConfigCore.so.5? Using QCharRef with an index pointing outside the valid range of a QString. The corresponding behavior is deprecated, and will be changed in a future version of Qt." We try to access to an invalid index.
2020-07-25Update sGlobalFileName when QStandardPaths TestMode is toggledAhmad Samir
When running unit tests, usually QStandardPaths TestMode is enabled so as not to mess up the config files in the home dir of the dev running the unit tests; sGlobalFileName, a global static, was defined only once, which meant that if KSharedConfig::openConfig() is called before the unit test has had a chance to call QStandardPaths::setTestModeEnabled(true), then sGlobalFileName will go on referring to the wrong kdeglobals file (as can be seen in dfaure's debugging of the issue at [1]). Change the code so as to detect QStandardPaths TestMode status and change sGlobalFileName as needed. All unit tests still pass. [1] https://invent.kde.org/frameworks/kio/-/merge_requests/77#note_74124
2020-07-25API dox: state explicitly expected encoding for KConfig key & group namesFriedrich W. H. Kossebau
While the API might have been once designed to allow random byte strings to be used as ids and only converted QString to UTF-8, the current implementation in many places assumes the byte strings passed via const char* or QByteArray are also in of UTF-8 encoding (or at least ASCII7-only). See e.g. KConfigGroup::entryMap() or KConfigGroup::name(). Stating the supported encoding explicitly should avoid any misassumptions.
2020-07-14SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2020-07-13Use KF-standardized Qt logging categoriesFriedrich W. H. Kossebau
See https://community.kde.org/Frameworks/Frameworks_Logging_Policy
2020-07-07Use camelcase include. (scripted)Laurent Montel
2020-06-18SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2020-06-17SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2020-05-31SVN_SILENT made messages (.desktop file) - always resolve oursl10n daemon script
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"
2020-05-08Adjust name of internally-exported method as suggested in D29347David Faure
2020-05-03GIT_SILENT add commentDavid Faure
2020-05-03KAuthorized: export method to reload restrictionsDavid Faure
Summary: This is useful for unittests. Example: ``` KCONFIGCORE_EXPORT void reloadUrlActionRestrictions(); void someTestMethod() { KConfigGroup cg(KSharedConfig::openConfig(), "KDE URL Restrictions"); cg.writeEntry("rule_count", 1); cg.writeEntry("rule_1", QStringList{"open", {}, {}, {}, "file", "", "", "false"}); cg.sync(); reloadUrlActionRestrictions(); // Some test for code that uses KUrlAuthorized cg.deleteEntry("rule_1"); cg.deleteEntry("rule_count"); cg.sync(); reloadUrlActionRestrictions(); } ``` This is consistent with the fact that other functions used by KUrlAuthorized are defined here and exported internally. Test Plan: Used this in a KIO unittest I'm writing for the future OpenUrlJob Reviewers: aacid, apol, mdawson Reviewed By: aacid Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D29347
2020-04-20API dox: document Q_DECLARE_FLAGS-based flagsFriedrich W. H. Kossebau
Summary: KApiDox & ECMAddQch have been just teached about Q_DECLARE_FLAGS, so the underlying typedefs are no longer skipped by doxygen, but can be documented now, allowing links to be generated for these types e.g. when used as arguments. The "#" prefix to the enum name in the description text of all the Q_DECLARE_FLAGS docs seems needed to properly trigger doxygen autolinks. GIT_SILENT
2020-04-17Add force save behavior to KEntryMapBenjamin Port
Summary: Fix the following bug, if an entry is set on HOME/.config/kdeglobals and on a specific config file like kcmfonts When you hit restore defaults button and apply, value will be not wrote on the specific file, but then the value is the one from kdeglobals This patch ensure we write the key to the specific configuration file on those case with an empty value. KConfig will take default value automatically Test Plan: Added a test to ensure flag is working Tested using some KCM to ensure all is working fine Reviewers: ervin, dfaure, meven, crossi, hchain Reviewed By: ervin, dfaure, meven Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D28128
2020-03-30QAtomicInteger::loadRelaxed/storeRelaxed() are available since Qt 5.14Ahmad Samir
A similar patch was approved in https://phabricator.kde.org/D26102
2020-03-22KConfig: Convert to SPDX license statementsAndreas Cord-Landwehr
Summary: Convert license headers to SPDX statements and add license files as required by REUSE specification. Reviewers: cgiboudeaux Reviewed By: cgiboudeaux Subscribers: ognarb, cgiboudeaux, kde-frameworks-devel Tags: #frameworks Maniphest Tasks: T11550 Differential Revision: https://phabricator.kde.org/D27601
2020-03-08KconfigXT: Add a value attribute to Enum field choicesMéven Car
Summary: Allow to write choices such as : ``` <choices> <choice name="enum_name" value="I can't containt (anything)"></choice> <choice name="normal_choice"></choice> </choices> ``` Test Plan: ctest Reviewers: ervin, bport, crossi, #frameworks Reviewed By: ervin Subscribers: ngraham, davidre, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D27463
2020-02-24KConfigSkeletonItem : allow to set a KconfigGroup to read and write items in ↵Cyril Rossi
nested groups Summary: Currently KConfgiSkeleton cannot manage item entry in subgroup, like ``` [General][Colors] MyItem=foo ``` Example of use ``` // Generated Class with KConfig compiler, inherits KConfigSkeleton KConfigGroup generalGroup( &config, "General" ); KConfigGroup colorsGroup = config.group( "Colors" ) myItem->setGroup(cg); // Now can take a KConfigGroup addItem(myItem, "MyItem"); ``` Evolution of kconfig compiler will follow to consider this. Reviewers: ervin, dfaure, #frameworks, mdawson Reviewed By: ervin, dfaure Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D27059
2020-02-12Use ecm_qt_install_logging_categories over manual categories fileFriedrich W. H. Kossebau
2020-02-12Add setNotifyFunction to KPropertySkeletonItemBenjamin Port
Summary: This function will be called when the property value change Reviewers: ervin, meven, crossi Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D27342
2020-01-07Fix API doc, usrSave is called from save not deprecated writeConfigBenjamin Port
Reviewers: ervin Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D26495
2020-01-05Add KSharedConfig::openStateConfig for storing state informationNicolas Fella
Summary: A common complaint is that our apps store 'state' information such as recent files or window sizes in their configuration files, making it ugly to store them in version control systems. Therefore we should not store such information in XDG_CONFIG_DIR but instead use XDG_DATA_DIR for this. This patch adds a utility method that creates a KSharedConfig backed by a file in such a suitable location. For e.g. dolphin the file .local/share/dolphin/dolphinstaterc would be created. See T12246 for some context Reviewers: #frameworks, dfaure Reviewed By: dfaure Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D26440
2020-01-05Port QRegExp to QRegularExpressionAhmad Samir
Summary: Port QRegExp::exactMatch() by using QRegularExpression::anchoredPattern() to match the entire subject string. Remove filenameOnly(), it's been broken for a long time (QStringLiteral("[/\\]") is not a valid QRegExp pattern); besides it's not needed as QFileInfo::fileName() is used to get the filename. Test Plan: make && ctest Reviewers: #frameworks, dfaure, ervin, apol Reviewed By: dfaure, ervin Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D26177
2020-01-03Remove endl at the end of qdebugLaurent Montel
2019-12-19Port deprecated methodsLaurent Montel
2019-12-11kconfig EBN transport protocol cleanupJohn Hayes
Summary: Change and test transport protocol from http to https while correcting dead link Reviewers: apol Reviewed By: apol Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D25829
2019-12-10update @sinceDavid Edmundson
2019-12-10Expose getter to KConfigWatcher's configDavid Edmundson
Summary: It can help save users having to member variables for the config and the watcher. Reviewers: broulik Reviewed By: broulik Subscribers: broulik, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D25833
2019-12-10Fix writeFlags with KConfigCompilerSignallingItemDavid Edmundson
Summary: KConfigCompilerSignallingItem both inherits KConfigSkeletonItem and internally is powered by a separate KConfigSkeletonItem The generated code calls setWriteFlags on the outer KConfigCompilerSignallingItem instance, but the real writing is performed by the internal version. We need to set the flags in the right place. Ideally we would do this in an overload of KConfigSkeletonItem, but given we can't, I've shadowed the method. This isn't pretty, but given the docs say it should generally only be used from auto generated code, should be fine. Test Plan: Used in workspace KCM Reviewers: ervin Reviewed By: ervin Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D25791
2019-12-04Don't use nullptr as flag. Make it compile against qt5.15Laurent Montel
2019-11-12Add KPropertySkeletonItemKevin Ottens
Summary: This new item allows to use a QObject property as a source for a setting. This is especially convenient for using with KCMs present in systemsettings which tend to store information outside of KConfig (for interfacing deeper with the system). Reviewers: #frameworks, dfaure, davidedmundson, bport, crossi Subscribers: kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D25211
2019-11-12Prepare KConfigSkeletonItem to allow inheriting its private classKevin Ottens
Reviewers: #frameworks, dfaure, davidedmundson, bport, crossi Subscribers: vkrause, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D25210
2019-10-31These methods were adding in qt5.15Laurent Montel
2019-10-30Make it compile against qt5.15 without deprecated methodLaurent Montel