@@ -0,0 +1,42 @@
|
|||||||
|
From 49f2037ac22fcb430fadd5d7b29bd8af234573a4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Akseli Lahtinen <akselmo@akselmo.dev>
|
||||||
|
Date: Thu, 7 Mar 2024 16:01:44 +0000
|
||||||
|
Subject: [PATCH] Fix link list dialog for installation button
|
||||||
|
|
||||||
|
In gridview, installation buttons showed "Install..." for every item,
|
||||||
|
even if the item had only single download link. This fixes it
|
||||||
|
by showing correct button.
|
||||||
|
|
||||||
|
The problem was using `entry` directly instead of `model`.
|
||||||
|
|
||||||
|
BUG: 482349
|
||||||
|
FIXED-IN: 6.1
|
||||||
|
---
|
||||||
|
.../qml/private/entrygriddelegates/TileDelegate.qml | 8 ++++----
|
||||||
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/qtquick/qml/private/entrygriddelegates/TileDelegate.qml b/src/qtquick/qml/private/entrygriddelegates/TileDelegate.qml
|
||||||
|
index 2fdee68b4..36224abe2 100644
|
||||||
|
--- a/src/qtquick/qml/private/entrygriddelegates/TileDelegate.qml
|
||||||
|
+++ b/src/qtquick/qml/private/entrygriddelegates/TileDelegate.qml
|
||||||
|
@@ -40,13 +40,13 @@ Private.GridTileDelegate {
|
||||||
|
visible: enabled
|
||||||
|
},
|
||||||
|
Kirigami.Action {
|
||||||
|
- text: entry.downloadLinks.length === 1 ? i18ndc("knewstuff6", "Request installation of this item, available when there is exactly one downloadable item", "Install") : i18ndc("knewstuff6", "Show installation options, where there is more than one downloadable item", "Install…");
|
||||||
|
+ text: model.downloadLinks.length === 1 ? i18ndc("knewstuff6", "Request installation of this item, available when there is exactly one downloadable item", "Install") : i18ndc("knewstuff6", "Show installation options, where there is more than one downloadable item", "Install…");
|
||||||
|
icon.name: "install"
|
||||||
|
onTriggered: {
|
||||||
|
- if (entry.downloadLinks.length === 1) {
|
||||||
|
- newStuffEngine.install(entry.entry, NewStuff.ItemsModel.FirstLinkId);
|
||||||
|
+ if (model.downloadLinks.length === 1) {
|
||||||
|
+ newStuffEngine.install(entry, NewStuff.ItemsModel.FirstLinkId);
|
||||||
|
} else {
|
||||||
|
- downloadItemsSheet.downloadLinks = entry.downloadLinks;
|
||||||
|
+ downloadItemsSheet.downloadLinks = model.downloadLinks;
|
||||||
|
downloadItemsSheet.entry = entry;
|
||||||
|
downloadItemsSheet.open();
|
||||||
|
}
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
||||||
@@ -0,0 +1,51 @@
|
|||||||
|
From 4f01e2ff676cd4a11ba36f49d967db4635e2d216 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nicolas Fella <nicolas.fella@gmx.de>
|
||||||
|
Date: Wed, 6 Mar 2024 19:39:09 +0100
|
||||||
|
Subject: [PATCH] [qtquick/action] Add API to set transient parent for dialog
|
||||||
|
|
||||||
|
We want the dialog to have a proper parent window set. Usually
|
||||||
|
Qt automatically obtains one from the parent item. This doesn't
|
||||||
|
work here however since the dialog's loader is not part of the item
|
||||||
|
hierarchy. This causes the window to not be shown since Qt 6.7.
|
||||||
|
|
||||||
|
See QTBUG-121197
|
||||||
|
|
||||||
|
Merely adding the property and setting it to null makes sure the
|
||||||
|
window can be shown. Users of the API should however pass a parent window
|
||||||
|
so that the dialog has a parent set.
|
||||||
|
|
||||||
|
BUG: 479816
|
||||||
|
---
|
||||||
|
src/qtquick/qml/Action.qml | 9 +++++++++
|
||||||
|
1 file changed, 9 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/qtquick/qml/Action.qml b/src/qtquick/qml/Action.qml
|
||||||
|
index ae134112e..05e49d6ab 100644
|
||||||
|
--- a/src/qtquick/qml/Action.qml
|
||||||
|
+++ b/src/qtquick/qml/Action.qml
|
||||||
|
@@ -92,6 +92,14 @@ Kirigami.Action {
|
||||||
|
*/
|
||||||
|
property bool visibleWhenDisabled: false
|
||||||
|
|
||||||
|
+ /**
|
||||||
|
+ * The parent window for the dialog created by invoking the action
|
||||||
|
+ *
|
||||||
|
+ * @since 6.1
|
||||||
|
+ *
|
||||||
|
+ */
|
||||||
|
+ property var transientParent: null
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* Show the page/dialog (same as activating the action), if allowed by the Kiosk settings
|
||||||
|
*/
|
||||||
|
@@ -185,6 +193,7 @@ Kirigami.Action {
|
||||||
|
asynchronous: true
|
||||||
|
|
||||||
|
sourceComponent: NewStuff.Dialog {
|
||||||
|
+ transientParent: component.transientParent
|
||||||
|
configFile: component.configFile
|
||||||
|
viewMode: component.viewMode
|
||||||
|
}
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
||||||
@@ -48,6 +48,10 @@
|
|||||||
<Dependency versionFrom="6.0.0">extra-cmake-modules-kf6</Dependency>
|
<Dependency versionFrom="6.0.0">extra-cmake-modules-kf6</Dependency>
|
||||||
<Dependency versionFrom="2.2.0">kirigami-kf6-devel</Dependency>
|
<Dependency versionFrom="2.2.0">kirigami-kf6-devel</Dependency>
|
||||||
</BuildDependencies>
|
</BuildDependencies>
|
||||||
|
<Patches>
|
||||||
|
<Patch level="1">4f01e2ff.patch</Patch>
|
||||||
|
<Patch level="1">49f2037a.patch</Patch>
|
||||||
|
</Patches>
|
||||||
</Source>
|
</Source>
|
||||||
|
|
||||||
<Package>
|
<Package>
|
||||||
|
|||||||
Reference in New Issue
Block a user