Using dock new interface

pull/28/head
reionwong 4 years ago
parent 962dd1109a
commit 335ef3fb68

@ -37,7 +37,6 @@ Appearance::Appearance(QObject *parent)
, m_dockSettings(new QSettings(QSettings::UserScope, "cutefishos", "dock")) , m_dockSettings(new QSettings(QSettings::UserScope, "cutefishos", "dock"))
, m_kwinSettings(new QSettings(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/kwinrc", , m_kwinSettings(new QSettings(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/kwinrc",
QSettings::IniFormat)) QSettings::IniFormat))
, m_dockConfigWacher(new QFileSystemWatcher(this))
, m_dockIconSize(0) , m_dockIconSize(0)
, m_dockDirection(0) , m_dockDirection(0)
, m_dockVisibility(0) , m_dockVisibility(0)
@ -52,19 +51,6 @@ Appearance::Appearance(QObject *parent)
m_dockRoundedWindow = m_dockSettings->value("RoundedWindow").toBool(); m_dockRoundedWindow = m_dockSettings->value("RoundedWindow").toBool();
m_systemEffects = !m_kwinSettings->value("OpenGLIsUnsafe", false).toBool(); m_systemEffects = !m_kwinSettings->value("OpenGLIsUnsafe", false).toBool();
m_dockConfigWacher->addPath(m_dockSettings->fileName());
connect(m_dockConfigWacher, &QFileSystemWatcher::fileChanged, this, [=] {
m_dockSettings->sync();
m_dockIconSize = m_dockSettings->value("IconSize").toInt();
m_dockDirection = m_dockSettings->value("Direction").toInt();
m_dockConfigWacher->addPath(m_dockSettings->fileName());
m_dockRoundedWindow = m_dockSettings->value("RoundedWindow").toBool();
emit dockIconSizeChanged();
emit dockDirectionChanged();
emit dockRoundedWindowChanged();
});
// Init // Init
if (m_interface.isValid()) { if (m_interface.isValid()) {
m_fontPointSize = m_interface.property("systemFontPointSize").toInt(); m_fontPointSize = m_interface.property("systemFontPointSize").toInt();
@ -97,11 +83,18 @@ int Appearance::dockIconSize() const
void Appearance::setDockIconSize(int dockIconSize) void Appearance::setDockIconSize(int dockIconSize)
{ {
if (m_dockIconSize == dockIconSize) if (m_dockIconSize != dockIconSize) {
return; QDBusInterface iface("org.cutefish.Dock",
"/Dock",
"org.cutefish.Dock",
QDBusConnection::sessionBus());
if (iface.isValid()) {
iface.asyncCall("setIconSize", dockIconSize);
}
m_dockIconSize = dockIconSize; m_dockIconSize = dockIconSize;
m_dockSettings->setValue("IconSize", m_dockIconSize); emit dockIconSizeChanged();
}
} }
int Appearance::dockDirection() const int Appearance::dockDirection() const
@ -111,11 +104,18 @@ int Appearance::dockDirection() const
void Appearance::setDockDirection(int dockDirection) void Appearance::setDockDirection(int dockDirection)
{ {
if (m_dockDirection == dockDirection) if (m_dockDirection != dockDirection) {
return; QDBusInterface iface("org.cutefish.Dock",
"/Dock",
"org.cutefish.Dock",
QDBusConnection::sessionBus());
if (iface.isValid()) {
iface.asyncCall("setDirection", dockDirection);
}
m_dockDirection = dockDirection; m_dockDirection = dockDirection;
m_dockSettings->setValue("Direction", m_dockDirection); emit dockDirectionChanged();
}
} }
int Appearance::dockVisibility() const int Appearance::dockVisibility() const
@ -127,7 +127,15 @@ void Appearance::setDockVisibility(int visibility)
{ {
if (m_dockVisibility != visibility) { if (m_dockVisibility != visibility) {
m_dockVisibility = visibility; m_dockVisibility = visibility;
m_dockSettings->setValue("Visibility", m_dockVisibility);
QDBusInterface iface("org.cutefish.Dock",
"/Dock",
"org.cutefish.Dock",
QDBusConnection::sessionBus());
if (iface.isValid()) {
iface.asyncCall("setVisibility", visibility);
}
emit dockVisibilityChanged(); emit dockVisibilityChanged();
} }
} }

@ -22,7 +22,6 @@
#include <QObject> #include <QObject>
#include <QSettings> #include <QSettings>
#include <QFileSystemWatcher>
#include <QDBusInterface> #include <QDBusInterface>
class Appearance : public QObject class Appearance : public QObject
@ -85,7 +84,6 @@ private:
QDBusInterface m_interface; QDBusInterface m_interface;
QSettings *m_dockSettings; QSettings *m_dockSettings;
QSettings *m_kwinSettings; QSettings *m_kwinSettings;
QFileSystemWatcher *m_dockConfigWacher;
bool m_dockRoundedWindow; bool m_dockRoundedWindow;
int m_dockIconSize; int m_dockIconSize;

Loading…
Cancel
Save