Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qdbussettings.cpp
Go to the documentation of this file.
1// Copyright (C) 2025 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
6#include <QtCore/qvariant.h>
7
9
10namespace QDBusSettings::XdgSettings {
11// https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.Settings.html
13} // namespace QDBusSettings::XdgSettings
14
15Qt::ContrastPreference QDBusSettings::XdgSettings::convertContrastPreference(const QVariant &value)
16{
17 // XDG portal provides the contrast preference value as uint:
18 // 0 for no-preference, and, 1 for high-contrast.
19 if (!value.isValid())
20 return Qt::ContrastPreference::NoPreference;
21 return value.value<Qt::ContrastPreference>();
22}
23
24Qt::MotionPreference QDBusSettings::XdgSettings::convertMotionPreference(const QVariant &value)
25{
26 // XDG portal provides the motion preference value as uint:
27 // 0 for no-preference, and, 1 for reduced motion.
28 if (!value.isValid())
29 return Qt::MotionPreference::NoPreference;
30 return value.value<Qt::MotionPreference>();
31}
32
33Qt::ColorScheme QDBusSettings::XdgSettings::convertColorScheme(const QVariant &value)
34{
35 switch (ColorScheme{ value.toUInt() }) {
36 case ColorScheme::NoPreference:
37 return Qt::ColorScheme::Unknown;
38 case ColorScheme::PreferDark:
39 return Qt::ColorScheme::Dark;
40 case ColorScheme::PreferLight:
41 return Qt::ColorScheme::Light;
42 }
43 Q_UNREACHABLE_RETURN(Qt::ColorScheme::Unknown);
44}
45
47QDBusSettings::GnomeSettings::convertContrastPreference(const QVariant &value)
48{
49 // GSetting provides the contrast value as boolean:
50 // true for enabled high-contrast, and, false for disabled high-contrast.
51 if (!value.isValid())
52 return Qt::ContrastPreference::NoPreference;
53 return value.toBool() ? Qt::ContrastPreference::HighContrast
54 : Qt::ContrastPreference::NoPreference;
55}
56
57Qt::MotionPreference QDBusSettings::GnomeSettings::convertMotionPreference(const QVariant &value)
58{
59 if (!value.isValid())
60 return Qt::MotionPreference::NoPreference;
61 return value.toBool() ? Qt::MotionPreference::NoPreference
62 : Qt::MotionPreference::ReducedMotion;
63}
64
65QT_END_NAMESPACE
Qt::MotionPreference convertMotionPreference(const QVariant &value)
Qt::ContrastPreference convertContrastPreference(const QVariant &value)
Qt::MotionPreference convertMotionPreference(const QVariant &value)
Qt::ColorScheme convertColorScheme(const QVariant &value)
Qt::ContrastPreference convertContrastPreference(const QVariant &value)
Combined button and popup list for selecting options.