Add an upstream patch polishing the autostart UX.

backports/jammy backports/1.4.0-0ubuntu2%ppa22.04.1
Simon Quigley 1 year ago
parent c3d9a68ef8
commit b37ed2f06e

10
debian/changelog vendored

@ -1,8 +1,14 @@
lxqt-session (1.4.0-0ubuntu1~ppa1) jammy; urgency=medium
lxqt-session (1.4.0-0ubuntu2~ppa22.04.1) jammy; urgency=medium
* Backport to Jammy.
-- Simon Quigley <tsimonq2@ubuntu.com> Sun, 12 Nov 2023 19:07:28 -0600
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 22 Dec 2023 16:33:43 -0600
lxqt-session (1.4.0-0ubuntu2) noble; urgency=medium
* Add an upstream patch polishing the autostart UX.
-- Simon Quigley <tsimonq2@ubuntu.com> Fri, 22 Dec 2023 16:32:05 -0600
lxqt-session (1.4.0-0ubuntu1) noble; urgency=medium

@ -0,0 +1,55 @@
Description: lxqt-config-session/autostart: More strict user inputs
Makes name and command mandatory when adding or editing a autostart an
application. Check for already existing files when editing.
.
TODO: Add and Edit functions are almost indentical. Candidates to some
refactoring.
Author: Luís Pereira <luis.artur.pereira@gmail.com>
Origin: upstream
Bug: https://github.com/lxqt/lxqt-session/issues/486
Applied-Upstream: 35acc5e7fe64ab78616968a5b73b150fdf2f002a
Last-Update: 2023-12-22
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/lxqt-config-session/autostartpage.cpp
+++ b/lxqt-config-session/autostartpage.cpp
@@ -133,6 +133,11 @@ void AutoStartPage::addButton_clicked()
while (!success && edit.exec() == QDialog::Accepted)
{
QModelIndex index = ui->autoStartView->selectionModel()->currentIndex();
+ if (edit.name().isEmpty() || edit.command().isEmpty() )
+ {
+ QMessageBox::critical(this, tr("Error"), tr("Please provide Name and Command"));
+ continue;
+ }
XdgDesktopFile file(XdgDesktopFile::ApplicationType, edit.name(), edit.command());
if (edit.needTray())
file.setValue(QL1S("X-LXQt-Need-Tray"), true);
@@ -148,8 +153,14 @@ void AutoStartPage::editButton_clicked()
QModelIndex index = ui->autoStartView->selectionModel()->currentIndex();
XdgDesktopFile file = mXdgAutoStartModel->desktopFile(index);
AutoStartEdit edit(file.name(), file.value(QL1S("Exec")).toString(), file.contains(QL1S("X-LXQt-Need-Tray")));
- if (edit.exec() == QDialog::Accepted)
+ bool success = false;
+ while (!success && edit.exec() == QDialog::Accepted)
{
+ if (edit.name().isEmpty() || edit.command().isEmpty() )
+ {
+ QMessageBox::critical(this, tr("Error"), tr("Please provide Name and Command"));
+ continue;
+ }
file.setLocalizedValue(QL1S("Name"), edit.name());
file.setValue(QL1S("Exec"), edit.command());
if (edit.needTray())
@@ -157,7 +168,10 @@ void AutoStartPage::editButton_clicked()
else
file.removeEntry(QL1S("X-LXQt-Need-Tray"));
- mXdgAutoStartModel->setEntry(index, file, true);
+ if (mXdgAutoStartModel->setEntry(index, file, true))
+ success = true;
+ else
+ QMessageBox::critical(this, tr("Error"), tr("File '%1' already exists!").arg(file.fileName()));
}
}

@ -1 +1,2 @@
ensure-necessary-paths-are-pulled-from.patch
autostart-ux-polish.patch

Loading…
Cancel
Save