@@ -1,6 +1,5 @@
1#include "deviceconfigparser.h"
1#include "deviceconfigparser.h"
4#include <QSettings>
3#include <QSettings>
6DeviceConfigParser::DeviceConfigParser(QObject *parent): QObject(parent)
5DeviceConfigParser::DeviceConfigParser(QObject *parent): QObject(parent)
@@ -24,12 +23,12 @@ void DeviceConfigParser::setName(const QString &name)
25Qt::ScreenOrientation DeviceConfigParser::primaryOrientation() const
24Qt::ScreenOrientation DeviceConfigParser::primaryOrientation() const
27− return stringToOrientation(readOrientationStringFromConfig("PrimaryOrientation"), Qt::PrimaryOrientation);
26+ return stringToOrientation(readOrientationFromConfig("PrimaryOrientation"), Qt::PrimaryOrientation);
30Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
29Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
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
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);
44 return ret;
43 return ret;
@@ -46,33 +45,39 @@ Qt::ScreenOrientations DeviceConfigParser::supportedOrientations() const
47Qt::ScreenOrientation DeviceConfigParser::landscapeOrientation() const
46Qt::ScreenOrientation DeviceConfigParser::landscapeOrientation() const
49− return stringToOrientation(readOrientationStringFromConfig("LandscapeOrientation"), Qt::LandscapeOrientation);
48+ return stringToOrientation(readOrientationFromConfig("LandscapeOrientation"), Qt::LandscapeOrientation);
52Qt::ScreenOrientation DeviceConfigParser::invertedLandscapeOrientation() const
51Qt::ScreenOrientation DeviceConfigParser::invertedLandscapeOrientation() const
54− return stringToOrientation(readOrientationStringFromConfig("InvertedLandscapeOrientation"), Qt::InvertedLandscapeOrientation);
53+ return stringToOrientation(readOrientationFromConfig("InvertedLandscapeOrientation"), Qt::InvertedLandscapeOrientation);
57Qt::ScreenOrientation DeviceConfigParser::portraitOrientation() const
56Qt::ScreenOrientation DeviceConfigParser::portraitOrientation() const
59− return stringToOrientation(readOrientationStringFromConfig("PortraitOrientation"), Qt::PortraitOrientation);
58+ return stringToOrientation(readOrientationFromConfig("PortraitOrientation"), Qt::PortraitOrientation);
62Qt::ScreenOrientation DeviceConfigParser::invertedPortraitOrientation() const
61Qt::ScreenOrientation DeviceConfigParser::invertedPortraitOrientation() const
64− return stringToOrientation(readOrientationStringFromConfig("InvertedPortraitOrientation"), Qt::InvertedPortraitOrientation);
63+ return stringToOrientation(readOrientationFromConfig("InvertedPortraitOrientation"), Qt::InvertedPortraitOrientation);
67−QString DeviceConfigParser::readOrientationStringFromConfig(const QString &key) const
66+QStringList DeviceConfigParser::readOrientationsFromConfig(const QString &key) const
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);
72 if (config.contains(key)) {
71 if (config.contains(key)) {
73− return config.value(key).toString();
72+ return config.value(key).toStringList();
75− return QString();
74+ return QStringList();
77+QString DeviceConfigParser::readOrientationFromConfig(const QString &key) const
79+ QStringList ret = readOrientationsFromConfig(key);
80+ return ret.count() > 0 ? ret.first() : QString();
78Qt::ScreenOrientation DeviceConfigParser::stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const
83Qt::ScreenOrientation DeviceConfigParser::stringToOrientation(const QString &orientationString, Qt::ScreenOrientation defaultValue) const