load system layout templates properly

pull/19/head
Michail Vourlakos 5 years ago
parent 545404ec82
commit 2fdbc134a1

@ -251,6 +251,24 @@ Latte::View *CentralLayout::lastConfigViewFor()
}
}
Data::Layout CentralLayout::data() const
{
Data::Layout cdata;
cdata.name = name();
cdata.icon = icon();
cdata.backgroundStyle = backgroundStyle();
cdata.color = color();
cdata.background = customBackground();
cdata.textColor = customTextColor();
cdata.isLocked = !isWritable();
cdata.isShownInMenu = showInMenu();
cdata.hasDisabledBorders = disableBordersForMaximizedWindows();
cdata.activities = activities();
return cdata;
}
void CentralLayout::loadConfig()
{
m_disableBordersForMaximizedWindows = m_layoutGroup.readEntry("disableBordersForMaximizedWindows", false);

@ -23,6 +23,7 @@
// local
#include "genericlayout.h"
#include "../data/layoutdata.h"
// Qt
#include <QObject>
@ -83,6 +84,7 @@ public:
int viewsCount() const override;
Layout::Type type() const override;
Data::Layout data() const;
void setLastConfigViewFor(Latte::View *view) override;
Latte::View *lastConfigViewFor() override;

@ -19,6 +19,9 @@
#include "templatesmanager.h"
// local
#include "../layout/centrallayout.h"
// Qt
#include <QDir>
@ -46,7 +49,20 @@ void Manager::init()
QStringList systemLayoutTemplates = systemTemplatesDir.entryList(filter, QDir::Files | QDir::NoSymLinks);
for (int i=0; i<systemLayoutTemplates.count(); ++i) {
qDebug() << "System layout template : " << systemLayoutTemplates[i];
QString systemTemplatePath = systemTemplatesDir.path() + "/" + systemLayoutTemplates[i];
if (!m_layoutTemplates.containsId(systemTemplatePath)) {
CentralLayout layouttemplate(this, systemTemplatePath);
Data::Layout tdata = layouttemplate.data();
tdata.isTemplate = true;
if (tdata.name == DEFAULTLAYOUTTEMPLATENAME || tdata.name == EMPTYLAYOUTTEMPLATENAME) {
QByteArray templateNameChars = tdata.name.toUtf8();
tdata.name = i18n(templateNameChars);
}
m_layoutTemplates << tdata;
}
}
}

@ -23,6 +23,7 @@
// local
#include "../lattecorona.h"
#include "../data/layoutdata.h"
#include "../data/layoutstable.h"
// Qt
#include <QObject>
@ -53,7 +54,8 @@ private:
private:
Latte::Corona *m_corona;
QList<Data::Layout> m_layoutTemplates;
Data::LayoutsTable m_layoutTemplates;
};

Loading…
Cancel
Save