update main layout config files 2s after loading

--we update the main layout config files 2secs after
the main layout loading
pull/1/head
Michail Vourlakos 8 years ago
parent 67d1f1d4f9
commit 720a5e5123

@ -127,21 +127,7 @@ DockCorona::~DockCorona()
delete m_activityConsumer;
if (!m_layoutDir.isNull()) {
qDebug() << "layout directory found:" << m_layoutDir;
QFile latterc(m_layoutDir + "/lattedockrc");
QFile appletsrc(m_layoutDir + "/lattedock-appletsrc");
if (latterc.exists() && appletsrc.exists()) {
qDebug() << "updating latte layout...";
const auto homeLatterc = QDir::homePath() + "/.config/lattedockrc";
const auto homeAppletsrc = QDir::homePath() + "/.config/lattedock-appletsrc";
if (QFile::remove(homeLatterc) && QFile::remove(homeAppletsrc)){
QFile::copy(latterc.fileName() , homeLatterc);
QFile::copy(appletsrc.fileName() , homeAppletsrc);
}
updateConfigs();
QDir tempLayoutDir(m_layoutDir);
if (tempLayoutDir.exists() && m_layoutDir.startsWith("/tmp")) {
@ -149,7 +135,6 @@ DockCorona::~DockCorona()
tempLayoutDir.removeRecursively();
}
}
}
qDebug() << "latte corona deleted..." << this;
}
@ -218,12 +203,38 @@ bool DockCorona::reloadLayout(QString path)
oldLayoutDir.removeRecursively();
}
QTimer::singleShot(2000, [this]() {
qDebug() << "reload: starting delayed update config files...";
updateConfigs();
});
return true;
}
return false;
}
void DockCorona::updateConfigs()
{
if (!m_layoutDir.isNull()) {
qDebug() << "layout directory found:" << m_layoutDir;
QFile latterc(m_layoutDir + "/lattedockrc");
QFile appletsrc(m_layoutDir + "/lattedock-appletsrc");
if (latterc.exists() && appletsrc.exists()) {
qDebug() << "updating latte layout...";
const auto homeLatterc = QDir::homePath() + "/.config/lattedockrc";
const auto homeAppletsrc = QDir::homePath() + "/.config/lattedock-appletsrc";
if (QFile::remove(homeLatterc) && QFile::remove(homeAppletsrc)){
QFile::copy(latterc.fileName() , homeLatterc);
QFile::copy(appletsrc.fileName() , homeAppletsrc);
}
}
}
}
void DockCorona::setupWaylandIntegration()
{

@ -112,6 +112,7 @@ private slots:
void showAlternativesForApplet(Plasma::Applet *applet);
void alternativesVisibilityChanged(bool visible);
void load();
void updateConfigs();
void addOutput(QScreen *screen);
void primaryOutputChanged();

Loading…
Cancel
Save