mirror of
https://github.com/KDE/latte-dock.git
synced 2025-03-27 14:50:21 +03:00
fix #980,update file permissions
--update layout-file permissions when importing or copying layouts
This commit is contained in:
parent
066200e9f3
commit
46e6e2fdf8
@ -186,6 +186,12 @@ void LayoutConfigDialog::on_copyButton_clicked()
|
||||
QString copiedId = tempDir + "/" + layoutName + ".layout.latte";
|
||||
QFile(id).copy(copiedId);
|
||||
|
||||
QFileInfo newFileInfo(copiedId);
|
||||
|
||||
if (newFileInfo.exists() && !newFileInfo.isWritable()) {
|
||||
QFile(copiedId).setPermissions(QFileDevice::ReadUser | QFileDevice::WriteUser | QFileDevice::ReadGroup | QFileDevice::ReadOther);
|
||||
}
|
||||
|
||||
LayoutSettings *settings = new LayoutSettings(this, copiedId);
|
||||
m_layouts[copiedId] = settings;
|
||||
|
||||
@ -398,6 +404,12 @@ void LayoutConfigDialog::on_exportButton_clicked()
|
||||
return;
|
||||
}
|
||||
|
||||
QFileInfo newFileInfo(file);
|
||||
|
||||
if (newFileInfo.exists() && !newFileInfo.isWritable()) {
|
||||
QFile(file).setPermissions(QFileDevice::ReadUser | QFileDevice::WriteUser | QFileDevice::ReadGroup | QFileDevice::ReadOther);
|
||||
}
|
||||
|
||||
LayoutSettings layoutS(this, file);
|
||||
layoutS.setActivities(QStringList());
|
||||
|
||||
@ -497,6 +509,12 @@ void LayoutConfigDialog::addLayoutForFile(QString file, QString layoutName, bool
|
||||
copiedId = file;
|
||||
}
|
||||
|
||||
QFileInfo newFileInfo(copiedId);
|
||||
|
||||
if (newFileInfo.exists() && !newFileInfo.isWritable()) {
|
||||
QFile(copiedId).setPermissions(QFileDevice::ReadUser | QFileDevice::WriteUser | QFileDevice::ReadGroup | QFileDevice::ReadOther);
|
||||
}
|
||||
|
||||
LayoutSettings *settings = new LayoutSettings(this, copiedId);
|
||||
m_layouts[copiedId] = settings;
|
||||
|
||||
|
@ -336,6 +336,12 @@ QString LayoutManager::newLayout(QString layoutName, QString preset)
|
||||
if (preset == i18n("Default") && !QFile(newLayoutPath).exists()) {
|
||||
qDebug() << "adding layout : succeed";
|
||||
QFile(m_corona->kPackage().filePath("preset1")).copy(newLayoutPath);
|
||||
|
||||
QFileInfo newFileInfo(newLayoutPath);
|
||||
|
||||
if (newFileInfo.exists() && !newFileInfo.isWritable()) {
|
||||
QFile(newLayoutPath).setPermissions(QFileDevice::ReadUser | QFileDevice::WriteUser | QFileDevice::ReadGroup | QFileDevice::ReadOther);
|
||||
}
|
||||
}
|
||||
|
||||
return newLayoutPath;
|
||||
@ -360,6 +366,12 @@ void LayoutManager::importPresets(bool includeDefault)
|
||||
|
||||
if (!QFile(newLayoutFile).exists()) {
|
||||
QFile(presetPath).copy(newLayoutFile);
|
||||
|
||||
QFileInfo newFileInfo(newLayoutFile);
|
||||
|
||||
if (newFileInfo.exists() && !newFileInfo.isWritable()) {
|
||||
QFile(newLayoutFile).setPermissions(QFileDevice::ReadUser | QFileDevice::WriteUser | QFileDevice::ReadGroup | QFileDevice::ReadOther);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user