on xenial help sign in
make it work
9803e06Michael Zanetti
plugins/Utils/deviceconfigparser.cpp+16−11
@@ -1,6 +1,5 @@
1#include "deviceconfigparser.h"
1#include "deviceconfigparser.h"
2
2
3−#include <QSettings>
4#include <QSettings>
3#include <QSettings>
5
4
6DeviceConfigParser::DeviceConfigParser(QObject *parent): QObject(parent)
5DeviceConfigParser::DeviceConfigParser(QObject *parent): QObject(parent)
@@ -24,12 +23,12 @@ void DeviceConfigParser::setName(const QString &name)
24
23
25Qt::ScreenOrientation DeviceConfigParser::primaryOrientation() const
24Qt::ScreenOrientation DeviceConfigParser::primaryOrientation() const
26{
25{
27− return stringToOrientation(readOrientationStringFromConfig("PrimaryOrientation"), Qt::PrimaryOrientation);
26+ return stringToOrientation(readOrientationFromConfig("PrimaryOrientation"), Qt::PrimaryOrientation);
28}
27}
29
28
30Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
29Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
31{
30{
32− QString values = readOrientationStringFromConfig("SupportedOrientations");
31+ QStringList values = readOrientationsFromConfig("SupportedOrientations");
33 if (values.isEmpty()) {
32 if (values.isEmpty()) {
34 return Qt::PortraitOrientation
33 return Qt::PortraitOrientation
35 | Qt::InvertedPortraitOrientation
34 | Qt::InvertedPortraitOrientation
@@ -38,7 +37,7 @@ Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
38 }
37 }
39
38
40 Qt::ScreenOrientations ret = Qt::PrimaryOrientation;
39 Qt::ScreenOrientations ret = Qt::PrimaryOrientation;
41− Q_FOREACH(const QString &orientationString, values.split(',')) {
40+ Q_FOREACH(const QString &orientationString, values) {
42 ret |= stringToOrientation(orientationString, Qt::PrimaryOrientation);
41 ret |= stringToOrientation(orientationString, Qt::PrimaryOrientation);
43 }
42 }
44 return ret;
43 return ret;
@@ -46,33 +45,39 @@ Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
46
45
47Qt::ScreenOrientation DeviceConfigParser::landscapeOrientation() const
46Qt::ScreenOrientation DeviceConfigParser::landscapeOrientation() const
48{
47{
49− return stringToOrientation(readOrientationStringFromConfig("LandscapeOrientation"), Qt::LandscapeOrientation);
48+ return stringToOrientation(readOrientationFromConfig("LandscapeOrientation"), Qt::LandscapeOrientation);
50}
49}
51
50
52Qt::ScreenOrientation DeviceConfigParser::invertedLandscapeOrientation() const
51Qt::ScreenOrientation DeviceConfigParser::invertedLandscapeOrientation() const
53{
52{
54− return stringToOrientation(readOrientationStringFromConfig("InvertedLandscapeOrientation"), Qt::InvertedLandscapeOrientation);
53+ return stringToOrientation(readOrientationFromConfig("InvertedLandscapeOrientation"), Qt::InvertedLandscapeOrientation);
55}
54}
56
55
57Qt::ScreenOrientation DeviceConfigParser::portraitOrientation() const
56Qt::ScreenOrientation DeviceConfigParser::portraitOrientation() const
58{
57{
59− return stringToOrientation(readOrientationStringFromConfig("PortraitOrientation"), Qt::PortraitOrientation);
58+ return stringToOrientation(readOrientationFromConfig("PortraitOrientation"), Qt::PortraitOrientation);
60}
59}
61
60
62Qt::ScreenOrientation DeviceConfigParser::invertedPortraitOrientation() const
61Qt::ScreenOrientation DeviceConfigParser::invertedPortraitOrientation() const
63{
62{
64− return stringToOrientation(readOrientationStringFromConfig("InvertedPortraitOrientation"), Qt::InvertedPortraitOrientation);
63+ return stringToOrientation(readOrientationFromConfig("InvertedPortraitOrientation"), Qt::InvertedPortraitOrientation);
65}
64}
66
65
67−QString DeviceConfigParser::readOrientationStringFromConfig(const QString &key) const
66+QStringList DeviceConfigParser::readOrientationsFromConfig(const QString &key) const
68{
67{
69 QSettings config("/etc/unity8/devices.conf", QSettings::IniFormat);
68 QSettings config("/etc/unity8/devices.conf", QSettings::IniFormat);
70 config.beginGroup(m_name);
69 config.beginGroup(m_name);
71
70
72 if (config.contains(key)) {
71 if (config.contains(key)) {
73− return config.value(key).toString();
72+ return config.value(key).toStringList();
74 }
73 }
75− return QString();
74+ return QStringList();
75+}
76+
77+QString DeviceConfigParser::readOrientationFromConfig(const QString &key) const
78+{
79+ QStringList ret = readOrientationsFromConfig(key);
80+ return ret.count() > 0 ? ret.first() : QString();
76}
81}
77
82
78Qt::ScreenOrientation DeviceConfigParser::stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const
83Qt::ScreenOrientation DeviceConfigParser::stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const
plugins/Utils/deviceconfigparser.h+2−1
@@ -50,7 +50,8 @@ Q_SIGNALS:
50private:
50private:
51 QString m_name;
51 QString m_name;
52
52
53+ QStringList readOrientationsFromConfig(const QString &key) const;
53− QString readOrientationStringFromConfig(const QString &key) const;
54+ QString readOrientationFromConfig(const QString &key) const;
54 Qt::ScreenOrientation stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const;
55 Qt::ScreenOrientation stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const;
55};
56};
56
57