Skip to content

Commit

Permalink
[displaysettings] Add flipoverGestureEnabled property. JB#34061
Browse files Browse the repository at this point in the history
Make it easier to enable/disable the flip-to-silence feature from qml.
  • Loading branch information
spiiroin committed Apr 8, 2016
1 parent 6c3a2f6 commit c43a07d
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
24 changes: 24 additions & 0 deletions src/displaysettings.cpp
Expand Up @@ -47,6 +47,7 @@ static const char *MceDisplayAutoBrightnessEnabled = "/system/osso/dsm/display/a
static const char *MceDoubleTapMode = "/system/osso/dsm/doubletap/mode";
static const char *MceLidSensorEnabled = "/system/osso/dsm/locks/lid_sensor_enabled";
static const char *MceLidSensorFilteringEnabled = "/system/osso/dsm/locks/filter_lid_with_als";
static const char *MceFlipOverGestureEnabled = "/system/osso/dsm/display/flipover_gesture_enabled";

DisplaySettings::DisplaySettings(QObject *parent)
: QObject(parent)
Expand Down Expand Up @@ -99,6 +100,10 @@ DisplaySettings::DisplaySettings(QObject *parent)
result.waitForFinished();
m_lidSensorFilteringEnabled = result.value().variant().toBool();

result = m_mceIface->get_config(QDBusObjectPath(MceFlipOverGestureEnabled));
result.waitForFinished();
m_flipoverGestureEnabled = result.value().variant().toBool();

m_mceSignalIface = new ComNokiaMceSignalInterface(MCE_SERVICE, MCE_SIGNAL_PATH, QDBusConnection::systemBus(), this);
connect(m_mceSignalIface, SIGNAL(config_change_ind(QString,QDBusVariant)), this, SLOT(configChange(QString,QDBusVariant)));
}
Expand Down Expand Up @@ -274,6 +279,19 @@ void DisplaySettings::setLidSensorFilteringEnabled(bool enabled)
emit lidSensorFilteringEnabledChanged();
}
}
bool DisplaySettings::flipoverGestureEnabled() const
{
return m_flipoverGestureEnabled;
}

void DisplaySettings::setFlipoverGestureEnabled(bool enabled)
{
if (m_flipoverGestureEnabled != enabled) {
m_flipoverGestureEnabled = enabled;
m_mceIface->set_config(QDBusObjectPath(MceFlipOverGestureEnabled), QDBusVariant(enabled));
emit flipoverGestureEnabledChanged();
}
}

void DisplaySettings::configChange(const QString &key, const QDBusVariant &value)
{
Expand Down Expand Up @@ -343,5 +361,11 @@ void DisplaySettings::configChange(const QString &key, const QDBusVariant &value
m_lidSensorFilteringEnabled = val;
emit lidSensorFilteringEnabledChanged();
}
} else if (key == MceFlipOverGestureEnabled) {
bool val = value.variant().toBool();
if (val != m_flipoverGestureEnabled) {
m_flipoverGestureEnabled = val;
emit flipoverGestureEnabledChanged();
}
}
}
6 changes: 6 additions & 0 deletions src/displaysettings.h
Expand Up @@ -58,6 +58,7 @@ class DisplaySettings: public QObject
Q_PROPERTY(QVariant orientationLock READ orientationLock WRITE setOrientationLock NOTIFY orientationLockChanged)
Q_PROPERTY(bool lidSensorEnabled READ lidSensorEnabled WRITE setLidSensorEnabled NOTIFY lidSensorEnabledChanged)
Q_PROPERTY(bool lidSensorFilteringEnabled READ lidSensorFilteringEnabled WRITE setLidSensorFilteringEnabled NOTIFY lidSensorFilteringEnabledChanged)
Q_PROPERTY(bool flipoverGestureEnabled READ flipoverGestureEnabled WRITE setFlipoverGestureEnabled NOTIFY flipoverGestureEnabledChanged)

public:
enum DoubleTapMode {
Expand Down Expand Up @@ -120,6 +121,9 @@ class DisplaySettings: public QObject
bool lidSensorFilteringEnabled() const;
void setLidSensorFilteringEnabled(bool);

bool flipoverGestureEnabled() const;
void setFlipoverGestureEnabled(bool);

signals:
void brightnessChanged();
void dimTimeoutChanged();
Expand All @@ -133,6 +137,7 @@ class DisplaySettings: public QObject
void orientationLockChanged();
void lidSensorEnabledChanged();
void lidSensorFilteringEnabledChanged();
void flipoverGestureEnabledChanged();

private slots:
void configChange(const QString &key, const QDBusVariant &value);
Expand All @@ -152,6 +157,7 @@ private slots:
bool m_doubleTapMode;
bool m_lidSensorEnabled;
bool m_lidSensorFilteringEnabled;
bool m_flipoverGestureEnabled;
};

QML_DECLARE_TYPE(DisplaySettings)
Expand Down

0 comments on commit c43a07d

Please sign in to comment.