KWin configuration

pull/11/head
reionwong 4 years ago
parent e673312be8
commit eeee6c1ad7

@ -91,6 +91,7 @@ Application::Application(int &argc, char **argv)
QDBusConnection::sessionBus().registerObject(QStringLiteral("/Session"), this);
createConfigDirectory();
initKWinConfig();
initLanguage();
initScreenScaleFactors();
initXResource();
@ -224,6 +225,32 @@ void Application::initXResource()
// qputenv("XCURSOR_SIZE", QByteArray::number(cursorSize * scaleFactor));
}
void Application::initKWinConfig()
{
QSettings settings(QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/kwinrc",
QSettings::IniFormat);
settings.beginGroup("Effect-Blur");
settings.setValue("BlurStrength", 7);
settings.setValue("NoiseStrength", 1);
settings.endGroup();
settings.beginGroup("Windows");
settings.setValue("FocusStealingPreventionLevel", 0);
settings.setValue("HideUtilityWindowsForInactive", false);
settings.setValue("BorderlessMaximizedWindows", false);
settings.setValue("Placement", "Centered");
settings.endGroup();
settings.beginGroup("org.kde.kdecoration2");
settings.setValue("BorderSize", "Normal");
settings.setValue("ButtonsOnLeft", "");
settings.setValue("ButtonsOnRight", "HIAX");
settings.setValue("library", "org.cutefish.decoration");
settings.setValue("theme", "");
settings.endGroup();
}
bool Application::syncDBusEnvironment()
{
int exitCode = 0;

@ -66,6 +66,7 @@ private:
void initLanguage();
void initScreenScaleFactors();
void initXResource();
void initKWinConfig();
bool syncDBusEnvironment();
void importSystemdEnvrionment();
void createConfigDirectory();

@ -37,11 +37,18 @@ Application::Application(int &argc, char **argv)
, m_upowerManager(new UPowerManager(this))
, m_language(new Language(this))
, m_mouse(new Mouse)
, m_kwinTimer(new QTimer(this))
{
new DBusAdaptor(this);
// connect to D-Bus and register as an object:
QDBusConnection::sessionBus().registerService(QStringLiteral("org.cutefish.Settings"));
m_kwinTimer->setSingleShot(false);
m_kwinTimer->setInterval(50);
connect(m_kwinTimer, &QTimer::timeout, this, &Application::initKWin);
m_kwinTimer->start();
initKWin();
// Translations
QLocale locale;
QString qmFilePath = QString("%1/%2.qm").arg("/usr/share/cutefish-settings-daemon/translations/").arg(locale.name());
@ -54,6 +61,8 @@ Application::Application(int &argc, char **argv)
}
}
initKWin();
QTimer::singleShot(10, this, &Application::invokeDesktopProcess);
}
@ -62,7 +71,33 @@ void Application::invokeDesktopProcess()
// Start desktop UI component.
QDBusInterface sessionInterface("org.cutefish.Session", "/Session", "org.cutefish.Session",
QDBusConnection::sessionBus());
if (sessionInterface.isValid()) {
sessionInterface.call("startDesktopProcess");
}
}
void Application::initKWin()
{
QDBusInterface effect("org.kde.KWin", "/Effects", "org.kde.kwin.Effects",
QDBusConnection::sessionBus());
if (effect.isValid() && !effect.lastError().isValid()) {
// KWin
effect.call("loadEffect", "kwin4_effect_dialogparent");
effect.call("unloadEffect", "kwin4_effect_fadingpopups");
effect.call("unloadEffect", "kwin4_effect_fade");
effect.call("unloadEffect", "kwin4_effect_scale");
effect.call("unloadEffect", "kwin4_effect_grayscale");
effect.call("unloadEffect", "kwin4_effect_squash");
effect.call("unloadEffect", "kwin4_effect_translucency");
effect.call("unloadEffect", "magiclamp");
effect.call("loadEffect", "cutefish_popups");
effect.call("loadEffect", "cutefish_scale");
effect.call("loadEffect", "cutefish_squash");
m_kwinTimer->stop();
}
}

@ -28,6 +28,8 @@
#include "language/language.h"
#include "mouse/mousemanager.h"
#include <QTimer>
class Application : public QApplication
{
Q_OBJECT
@ -38,6 +40,7 @@ public:
AudioManager *audioManager() { return m_audioManager; }
void invokeDesktopProcess();
void initKWin();
private:
AudioManager *m_audioManager;
@ -46,6 +49,8 @@ private:
UPowerManager *m_upowerManager;
Language *m_language;
Mouse *m_mouse;
QTimer *m_kwinTimer;
};
#endif // APPLICATION_H

Loading…
Cancel
Save