on xenial help sign in
Change the art back to the cardData value if it changes from broken to valid image

Fixes: #1533577 Approved by: Andrea Cimitan

commit6e864bcec021bc16b10f6a64c1865b689a070a63 authorAlbert Astals Cid <albert.astals@canonical.com> dateFri 27 May 2016, 13:50 (10 years ago) parent4a9e68a0f8dd90
12 files changed+23
plugins/Dash/CardCreator.js+1 tests/plugins/Dash/cardcreator/1.res+1 tests/plugins/Dash/cardcreator/1.res.cardcreator+1 tests/plugins/Dash/cardcreator/11.res+1 tests/plugins/Dash/cardcreator/11.res.cardcreator+1 tests/plugins/Dash/cardcreator/12.res+1 tests/plugins/Dash/cardcreator/12.res.cardcreator+1 tests/plugins/Dash/cardcreator/3.res+1 tests/plugins/Dash/cardcreator/3.res.cardcreator+1 tests/plugins/Dash/cardcreator/5.res+1 tests/plugins/Dash/cardcreator/5.res.cardcreator+1 tests/qmltests/Dash/tst_Card.qml+12
plugins/Dash/CardCreator.js+1
@@ -92,6 +92,7 @@ var kArtShapeHolderCode = 'Item { \n\
9292 id: artShapeLoader; \n\
9393 objectName: "artShapeLoader"; \n\
9494 readonly property string cardArt: cardData && cardData["art"] || %9; \n\
95+ onCardArtChanged: { if (item) { item.image.source = cardArt; } } \n\
9596 active: cardArt != ""; \n\
9697 asynchronous: %6; \n\
9798 visible: status == Loader.Ready; \n\
tests/plugins/Dash/cardcreator/1.res+1
@@ -21,6 +21,7 @@ Item {
2121 id: artShapeLoader;
2222 objectName: "artShapeLoader";
2323 readonly property string cardArt: cardData && cardData["art"] || "";
24+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2425 active: cardArt != "";
2526 asynchronous: true;
2627 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/1.res.cardcreator+1
@@ -20,6 +20,7 @@ Item {
2020 id: artShapeLoader;
2121 objectName: "artShapeLoader";
2222 readonly property string cardArt: cardData && cardData["art"] || "";
23+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2324 active: cardArt != "";
2425 asynchronous: false;
2526 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/11.res+1
@@ -59,6 +59,7 @@ Item {
5959 id: artShapeLoader;
6060 objectName: "artShapeLoader";
6161 readonly property string cardArt: cardData && cardData["art"] || decodeURI("%5C");
62+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
6263 active: cardArt != "";
6364 asynchronous: true;
6465 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/11.res.cardcreator+1
@@ -58,6 +58,7 @@ Item {
5858 id: artShapeLoader;
5959 objectName: "artShapeLoader";
6060 readonly property string cardArt: cardData && cardData["art"] || "";
61+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
6162 active: cardArt != "";
6263 asynchronous: false;
6364 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/12.res+1
@@ -21,6 +21,7 @@ Item {
2121 id: artShapeLoader;
2222 objectName: "artShapeLoader";
2323 readonly property string cardArt: cardData && cardData["art"] || "";
24+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2425 active: cardArt != "";
2526 asynchronous: true;
2627 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/12.res.cardcreator+1
@@ -20,6 +20,7 @@ Item {
2020 id: artShapeLoader;
2121 objectName: "artShapeLoader";
2222 readonly property string cardArt: cardData && cardData["art"] || "";
23+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2324 active: cardArt != "";
2425 asynchronous: false;
2526 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/3.res+1
@@ -21,6 +21,7 @@ Item {
2121 id: artShapeLoader;
2222 objectName: "artShapeLoader";
2323 readonly property string cardArt: cardData && cardData["art"] || decodeURI("IHAVE%5C%22ESCAPED%5C%22QUOTES%5C%22");
24+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2425 active: cardArt != "";
2526 asynchronous: true;
2627 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/3.res.cardcreator+1
@@ -20,6 +20,7 @@ Item {
2020 id: artShapeLoader;
2121 objectName: "artShapeLoader";
2222 readonly property string cardArt: cardData && cardData["art"] || "";
23+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2324 active: cardArt != "";
2425 asynchronous: false;
2526 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/5.res+1
@@ -21,6 +21,7 @@ Item {
2121 id: artShapeLoader;
2222 objectName: "artShapeLoader";
2323 readonly property string cardArt: cardData && cardData["art"] || "";
24+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2425 active: cardArt != "";
2526 asynchronous: true;
2627 visible: status == Loader.Ready;
tests/plugins/Dash/cardcreator/5.res.cardcreator+1
@@ -20,6 +20,7 @@ Item {
2020 id: artShapeLoader;
2121 objectName: "artShapeLoader";
2222 readonly property string cardArt: cardData && cardData["art"] || "";
23+ onCardArtChanged: { if (item) { item.image.source = cardArt; } }
2324 active: cardArt != "";
2425 asynchronous: false;
2526 visible: status == Loader.Ready;
tests/qmltests/Dash/tst_Card.qml+12
@@ -496,6 +496,18 @@ Rectangle {
496496 tryCompare(art, "visible", true);
497497 compare(artImage.source, Qt.resolvedUrl("artwork/checkers.png"));
498498
499+ card.cardData["art"] = "somethingbroken";
500+ card.cardDataChanged();
501+ waitForRendering(card);
502+ tryCompare(art, "visible", true);
503+ compare(artImage.source, Qt.resolvedUrl("artwork/checkers.png"));
504+
505+ card.cardData["art"] = Qt.resolvedUrl("artwork/music-player-design.png");
506+ card.cardDataChanged();
507+ waitForRendering(card);
508+ tryCompare(art, "visible", true);
509+ compare(artImage.source, Qt.resolvedUrl("artwork/music-player-design.png"));
510+
499511 card.cardData["mascot"] = "somethingbroken2";
500512 card.cardDataChanged();
501513 compare(mascotImage.status, Image.Error);