summaryrefslogtreecommitdiff
path: root/dev-qt/qtdeclarative
diff options
context:
space:
mode:
Diffstat (limited to 'dev-qt/qtdeclarative')
-rw-r--r--dev-qt/qtdeclarative/Manifest3
-rw-r--r--dev-qt/qtdeclarative/files/qtdeclarative-6.8.0-QTBUG-129500.patch80
-rw-r--r--dev-qt/qtdeclarative/qtdeclarative-6.8.0-r5.ebuild (renamed from dev-qt/qtdeclarative/qtdeclarative-6.8.0-r4.ebuild)1
3 files changed, 83 insertions, 1 deletions
diff --git a/dev-qt/qtdeclarative/Manifest b/dev-qt/qtdeclarative/Manifest
index f1fc821fc120..492d035ead52 100644
--- a/dev-qt/qtdeclarative/Manifest
+++ b/dev-qt/qtdeclarative/Manifest
@@ -2,6 +2,7 @@ AUX qtdeclarative-5.14.2-QQuickItemView-fix-maxXY-extent.patch 1566 BLAKE2B b643
AUX qtdeclarative-6.7.3-QTBUG-125053.patch 9583 BLAKE2B d7bdfe4d0a002e5d17f57604dbece3294596a76d03bc3c12a05622d2c95a16bde4bb128d19c63e4856270a875c5b6b866c9cfed9f30a346b441a2b81e7cdf2d1 SHA512 3811879d972ff5a0dbfca98c2c2931f50dd9906dc0ecf75f13e59eae71d9d27dfc9279ba9952a00be81cab83e8f8e42e798d9b43d7d3d6974a1676f4e8e401ea
AUX qtdeclarative-6.7.3-QTBUG-129165.patch 5469 BLAKE2B fa4ce581df827b6725b6ab3135fb95fba492814d19d72b7b3be75b621a91f98d534152c5d80b7e1f21e9d877979a1b0e3a09d9eafa034e702d31996bc9624670 SHA512 605ecb6f7e3412b9c59b4e7579df87be1d19846fe1977682cb548732fe57993321015dabe5c5a87ebb15ae3cd394059a5d25d8b24f607093f5cf6343fbb7a4d7
AUX qtdeclarative-6.7.3-QTBUG-129622.patch 2811 BLAKE2B 998cc23491e21cde656d6b8f92a1924652a26343c09eaed9a4ffe23e1782b95960a41d40b3a78a2bb41b4687bc491b46969db8f610f050c87eef09a670544d90 SHA512 5a4ded399bd58d23a4c6dcc6cb82b4ef2cd15d099dbfc742a916f40899166c43893eb8d19494b7fc58d11dbe17532bb3d647b6638f63e7ca354f650d67c1ca95
+AUX qtdeclarative-6.8.0-QTBUG-129500.patch 3440 BLAKE2B 8823171026034a5a181997a04345b209b6349488287ea5a72003f236bdd3c4441ab2f8b1bef5affab040ac2ff9507844b6d51d4157db1a97dfa47461f2132344 SHA512 d244c115617d39e844aac4ce5991fdaff8799dfe5661ec9354945df0bab360d29088c6a799bb25c10e749e871c61d226eab50206462e24dec350aa93d8a6efaa
AUX qtdeclarative-6.8.0-QTBUG-129797.patch 1236 BLAKE2B edfa939f1438031c1a0b168dc493806d372f072d3b104975da56711c2ee2df402aba076ca7071576ed98a8bdb0668af2f7258c6d2a9f4ae68192473b1630fb39 SHA512 9cc280dccc08aa0bacd0d5ce34dbd1ab6cebf3bcc3cbe4854b03c1e12971619993845d9689b146cb89557c2dbe7b0a44870e6bb0cb1e1d6b4a89924a19b8be7d
DIST qtdeclarative-5.15.14-gentoo-kde-1.tar.xz 26628 BLAKE2B 2b8302b96e5a8cae374da43dfaa5c5c7bf66ddfaa4fed055850fe7b39b995b1416268b94fb98fbc7074b6a0da47e8f9232751dba34b6021e095d7f9339fbfdd9 SHA512 3d4f3cc023e9da32105520bbe74847bb438ec3af85cf6203321400d451902071115ed3cc0c42e8cf995d0304f86cda11096223ad99b09a7dd95b3d83291a7b4a
DIST qtdeclarative-everywhere-opensource-src-5.15.14.tar.xz 21595408 BLAKE2B c88388bd04636bc55cad17d97a9f3ee2d3bda6b585cad59d70106bd4e14bf37570bba5edc21627bc08852034adcb483b4c23d7f21ba523dc9e7b6c1f0386a994 SHA512 06c48938c5ab96c4a9e010fdf4a8fbf2b84b7669a486298044363048de3b7da01aa5d9284d1b08b563331887e326befb25566f9972f5143ca3cde47016394bbd
@@ -11,7 +12,7 @@ DIST qtdeclarative-everywhere-src-6.8.0.tar.xz 37029068 BLAKE2B 272c673eb06ad28b
EBUILD qtdeclarative-5.15.14.ebuild 1537 BLAKE2B 9515ce8d7c01fa8119ecc030871048dece2da2051a67cc1bf61907db5fb1ceeee7ca52503068a9059c3822df398d90e2fec630529a2f88a1ca707ac1c9ef9250 SHA512 d684a28aeda630154eb7c1023dbf231baf5cde528788cb3fbaab35e24a349dd585519aff99d44c405fc6f5f92e9f52d49f30cbbb11c908cf5f42e8d7f5826543
EBUILD qtdeclarative-6.7.2.ebuild 1175 BLAKE2B 4f4d132a22d7987afcb7164ce83e35358b664cc70013f269af95e72b353cfc0103d3953fa308532dfbd00ce0f703c33e341e8a829c1a6bb62a09c07ec8cb7910 SHA512 48af79fdeff33c7d2da696364e1dc1a6694d9a6428a8aae11c5bd2ad2046f7a82bb780824da9a1aef1741322680534cd0d261a50acf235ae3b4fb0f8346d7dc7
EBUILD qtdeclarative-6.7.3-r4.ebuild 1913 BLAKE2B 2e0fff6218ad15659d0ed07c0b41d24c073c7d5e4af65be98831b240682c3369097ecf1f54d7ff5659a9596d861a45e0a03371bd52e637bd29c25bd06d37559c SHA512 ce1776ec512680642899ae5d12224c77c3ff4f94caaebb454959d436d8c80da1ec72ac8752de3491206d8427caf4b2e07a9a9eae52f226ee02aa7ef3e04be895
-EBUILD qtdeclarative-6.8.0-r4.ebuild 1916 BLAKE2B b27e73928187083f73de0fee1ff595ac8ac88b50de9b08bb7e5e121f206feeaf7910cb70be7c1b724ecd223954bc620893076bc7db4a5577e1bf9b86bc03e933 SHA512 8f3f4cf52b364d0e48ce52376bb79534eead1c4ac3c32a9f0872319a36c9922c50882bbbca4970071c5128f6c438aca89eadc30bf40f9d45bf4c655fbd96082e
+EBUILD qtdeclarative-6.8.0-r5.ebuild 1962 BLAKE2B 7d35b6371e462180097f6d22457994eb1f54c8102861bd5cdde7b8ff0ea391923e097edb47f9752ac0790bd42368b7b1e444d21d412e354584f068507f0e4f53 SHA512 4b66328780a108adfeafdd8eba9f7dc24618096923e857d753e2d0deb088f0cfb395b54385477fc9a5b45afb5551e760eab3677ebb321cd2910f21a8001fe821
EBUILD qtdeclarative-6.8.9999.ebuild 1739 BLAKE2B 434181ff4ee1fcb2d11b034c977b73bc23225cfe44d0ac5ee048620e2940fb0273c682defe6247d90a1052ad935e418c8c81881a5378d8f5b5f466a147f42120 SHA512 057e76f4969535d8437cbc02e8999aa70656e8256e95ba1e20f3a1bcab34a1bef0fe80812799eb608f3c9c0cb18eb06ad0a3ca04e7e6537997f81ff0136ddd35
EBUILD qtdeclarative-6.9999.ebuild 1739 BLAKE2B 434181ff4ee1fcb2d11b034c977b73bc23225cfe44d0ac5ee048620e2940fb0273c682defe6247d90a1052ad935e418c8c81881a5378d8f5b5f466a147f42120 SHA512 057e76f4969535d8437cbc02e8999aa70656e8256e95ba1e20f3a1bcab34a1bef0fe80812799eb608f3c9c0cb18eb06ad0a3ca04e7e6537997f81ff0136ddd35
MISC metadata.xml 945 BLAKE2B 8a5d26ab3274cb9ca8b7cf3dceddcd33d9690cd20194adc63b80cd5e13e11d222d48473232b4e2cb41cecf1f51b33df4458811b6fb622a41519f0f3f0223b578 SHA512 a4c587afdbb0320e0f23f47a3ae58e2f69e86a0f539bf613c275ab0be7b9490d33d9c9de35ace02d3cfef903f3e6c7caf492cfdfa53c989b2d56e6c7288f4552
diff --git a/dev-qt/qtdeclarative/files/qtdeclarative-6.8.0-QTBUG-129500.patch b/dev-qt/qtdeclarative/files/qtdeclarative-6.8.0-QTBUG-129500.patch
new file mode 100644
index 000000000000..45f165f374d2
--- /dev/null
+++ b/dev-qt/qtdeclarative/files/qtdeclarative-6.8.0-QTBUG-129500.patch
@@ -0,0 +1,80 @@
+Prevents crashes in Neochat and other kirigami-based applications.
+https://bugreports.qt.io/browse/QTBUG-129500
+https://codereview.qt-project.org/c/qt/qtdeclarative/+/595278
+--- a/src/quick/items/qquickitem.cpp
++++ b/src/quick/items/qquickitem.cpp
+@@ -8757,7 +8757,8 @@
+ QPointF p = mapToScene(point);
+ if (item) {
+- const QQuickWindow *itemWindow = item->window();
+- if (itemWindow != nullptr && itemWindow != window())
+- p = itemWindow->mapFromGlobal(window()->mapToGlobal(p));
++ const auto *itemWindow = item->window();
++ const auto *thisWindow = window();
++ if (thisWindow && itemWindow && itemWindow != thisWindow)
++ p = itemWindow->mapFromGlobal(thisWindow->mapToGlobal(p));
+
+ p = item->mapFromScene(p);
+@@ -8864,7 +8865,8 @@
+ if (item) {
+ p = item->mapToScene(point);
+-
+- if (item->window() != window())
+- p = window()->mapFromGlobal(item->window()->mapToGlobal(p));
++ const auto *itemWindow = item->window();
++ const auto *thisWindow = window();
++ if (thisWindow && itemWindow && itemWindow != thisWindow)
++ p = thisWindow->mapFromGlobal(itemWindow->mapToGlobal(p));
+ }
+ return mapFromScene(p);
+--- a/tests/auto/quick/qquickitem2/data/mapCoordinatesWithWindows.qml
++++ b/tests/auto/quick/qquickitem2/data/mapCoordinatesWithWindows.qml
+@@ -49,3 +49,14 @@
+ }
+ }
++
++ property Item itemWithoutWindowA: Item {
++ x: 20; y: 20
++ }
++ property Item itemWithoutWindowB: Item {
++ x: 40; y: 40
++ Item {
++ objectName: "childItemWithoutWindow"
++ x: 30; y: 30
++ }
++ }
+ }
+--- a/tests/auto/quick/qquickitem2/tst_qquickitem.cpp
++++ b/tests/auto/quick/qquickitem2/tst_qquickitem.cpp
+@@ -2884,4 +2884,31 @@
+ QCOMPARE(childItemInChildWindow->mapFromItem(childItemInOtherWindow, {0, 0}),
+ globalItemOffset(childItemInOtherWindow, childItemInChildWindow));
++
++ // If one or both of the items are not in a scene (yet), they are assumed
++ // to eventually be in the same scene.
++
++ auto *itemWithoutWindowA = root->property("itemWithoutWindowA").value<QQuickItem*>();
++ QVERIFY(itemWithoutWindowA);
++ auto *itemWithoutWindowB = root->property("itemWithoutWindowB").value<QQuickItem*>();
++ QVERIFY(itemWithoutWindowB);
++ auto *childItemWithoutWindow = itemWithoutWindowB->findChild<QQuickItem*>("childItemWithoutWindow");
++ QVERIFY(childItemWithoutWindow);
++
++ QPoint itemWithoutWindowAPos = itemWithoutWindowA->position().toPoint();
++ QPoint itemWithoutWindowBPos = itemWithoutWindowB->position().toPoint();
++
++ QCOMPARE(itemWithoutWindowA->mapToItem(childItemWithoutWindow, {0, 0}),
++ itemWithoutWindowAPos - (itemWithoutWindowBPos + childItemWithoutWindow->position()));
++ QCOMPARE(itemWithoutWindowA->mapFromItem(childItemWithoutWindow, {0, 0}),
++ (itemWithoutWindowBPos + childItemWithoutWindow->position()) - itemWithoutWindowAPos);
++
++ QCOMPARE(itemWithoutWindowA->mapToItem(childItem, {0, 0}),
++ itemWithoutWindowAPos - itemPos);
++ QCOMPARE(itemWithoutWindowA->mapFromItem(childItem, {0, 0}),
++ itemPos - itemWithoutWindowAPos);
++ QCOMPARE(childItem->mapToItem(itemWithoutWindowA, {0, 0}),
++ itemPos - itemWithoutWindowAPos);
++ QCOMPARE(childItem->mapFromItem(itemWithoutWindowA, {0, 0}),
++ itemWithoutWindowAPos - itemPos);
+ }
+
diff --git a/dev-qt/qtdeclarative/qtdeclarative-6.8.0-r4.ebuild b/dev-qt/qtdeclarative/qtdeclarative-6.8.0-r5.ebuild
index 84d5899b33b6..3dcd70472b17 100644
--- a/dev-qt/qtdeclarative/qtdeclarative-6.8.0-r4.ebuild
+++ b/dev-qt/qtdeclarative/qtdeclarative-6.8.0-r5.ebuild
@@ -38,6 +38,7 @@ PATCHES=(
"${FILESDIR}"/${PN}-6.7.3-QTBUG-125053.patch
"${FILESDIR}"/${PN}-6.7.3-QTBUG-129622.patch
"${FILESDIR}"/${PN}-6.8.0-QTBUG-129797.patch
+ "${FILESDIR}"/${PN}-6.8.0-QTBUG-129500.patch
)
src_configure() {