mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-04-26 06:13:09 +00:00
This commit writes options as immutable to the config file ([$i] suffix), so that user defined options from desktop do not override our specified mobile settings. This commit also moves kdeglobals settings to be written to ~/.config/plasma-mobile/kdeglobals rather than directly to ~/.config/kdeglobals, continuing the work from !723 Fixes https://invent.kde.org/plasma/plasma-mobile/-/issues/467
25 lines
900 B
C
25 lines
900 B
C
// SPDX-FileCopyrightText: 2023-2025 Devin Lin <devin@kde.org>
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#include <QDir>
|
|
#include <QFile>
|
|
#include <QLoggingCategory>
|
|
#include <QTextStream>
|
|
|
|
static const QLoggingCategory &LOGGING_CATEGORY()
|
|
{
|
|
static const QLoggingCategory category("plasma-mobile-envmanager");
|
|
return category;
|
|
}
|
|
|
|
/**
|
|
* Sets each config option in the config file to be immutable or not (appended with [$i])
|
|
* See https://api.kde.org/frameworks/kconfig/html/options.html for more details.
|
|
*
|
|
* @param immutable whether to set options to be immutable, or to remove immutability
|
|
* @param configFilePath path to the config file
|
|
* @param options the options in the config file to affect (format: <config group, <key, value>>)
|
|
*/
|
|
void setOptionsImmutable(bool immutable, const QString &configFilePath, const QMap<QString, QMap<QString, QVariant>> &options);
|