@@ -224,7 +224,7 @@ var kMascotImageCode = 'Image { \n\
224224 }\n';
225225
226226// %1 is used as anchors of titleLabel
227−// %1 is used as color of titleLabel
227+// %2 is used as color of titleLabel
228228// %3 is used as extra condition for visible of titleLabel
229229var kTitleLabelCode = 'Label { \n\
230230 id: titleLabel; \n\
@@ -242,6 +242,16 @@ var kTitleLabelCode = 'Label { \n\
242242 horizontalAlignment: root.headerAlignment; \n\
243243 }\n';
244244
245+// %1 is used as anchors of touchdown effect
246+var kTouchdownCode = 'UbuntuShape { \n\
247+ id: touchdown; \n\
248+ objectName: "touchdown"; \n\
249+ anchors { %1 } \n\
250+ visible: root.pressed; \n\
251+ radius: "medium"; \n\
252+ borderSource: "radius_pressed.sci" \n\
253+ }\n';
254+
245255// %1 is used as anchors of subtitleLabel
246256// %2 is used as color of subtitleLabel
247257var kSubtitleLabelCode = 'Label { \n\
@@ -504,6 +514,16 @@ function cardString(template, components) {
504514 code += kSummaryLabelCode.arg(summaryTopAnchor).arg(summaryTopMargin).arg(color);
505515 }
506516
517+ var touchdownAnchors;
518+ if (hasBackground) {
519+ touchdownAnchors = 'fill: backgroundLoader';
520+ } else if (hasArt && !hasMascot && !hasSummary) {
521+ touchdownAnchors = 'fill: artShapeHolder';
522+ } else {
523+ touchdownAnchors = 'fill: root'
524+ }
525+ code += kTouchdownCode.arg(touchdownAnchors);
526+
507527 if (hasSummary) {
508528 code += 'implicitHeight: summary.y + summary.height + (summary.text ? units.gu(1) : 0);\n';
509529 } else if (hasHeaderRow) {