@@ -108,7 +108,7 @@ var kOverlayLoaderCode = 'Loader { \n\
108 visible: showHeader && status == Loader.Ready; \n\
108 visible: showHeader && status == Loader.Ready; \n\
109 sourceComponent: ShaderEffect { \n\
109 sourceComponent: ShaderEffect { \n\
110 id: overlay; \n\
110 id: overlay; \n\
111− height: fixedHeaderHeight != -1 ? fixedHeaderHeight : headerHeight; \n\
111+ height: fixedHeaderHeight != -1 ? fixedHeaderHeight + units.gu(1) * 2 : headerHeight; \n\
112 opacity: 0.6; \n\
112 opacity: 0.6; \n\
113 property var source: ShaderEffectSource { \n\
113 property var source: ShaderEffectSource { \n\
114 id: shaderSource; \n\
114 id: shaderSource; \n\
@@ -145,6 +145,7 @@ var kHeaderRow2Code = 'Row { \n\
145 objectName: "outerRow"; \n\
145 objectName: "outerRow"; \n\
146 property real margins: units.gu(1); \n\
146 property real margins: units.gu(1); \n\
147 spacing: margins; \n\
147 spacing: margins; \n\
148+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight; \n\
148 anchors { %1 } \n\
149 anchors { %1 } \n\
149 anchors.right: parent.right; \n\
150 anchors.right: parent.right; \n\
150 anchors.margins: margins;\n\
151 anchors.margins: margins;\n\
@@ -163,6 +164,7 @@ var kHeaderRow3Code = 'Row { \n\
163 objectName: "outerRow"; \n\
164 objectName: "outerRow"; \n\
164 property real margins: units.gu(1); \n\
165 property real margins: units.gu(1); \n\
165 spacing: margins; \n\
166 spacing: margins; \n\
167+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight; \n\
166 anchors { %1 } \n\
168 anchors { %1 } \n\
167 anchors.right: parent.right; \n\
169 anchors.right: parent.right; \n\
168 anchors.margins: margins;\n\
170 anchors.margins: margins;\n\
@@ -315,7 +317,7 @@ function cardString(template, components) {
315 anchors = 'left: parent.left';
317 anchors = 'left: parent.left';
316 if (hasMascot || hasTitle) {
318 if (hasMascot || hasTitle) {
317 widthCode = 'height * artShape.aspect'
319 widthCode = 'height * artShape.aspect'
318− heightCode = 'headerHeight';
320+ heightCode = 'headerHeight + 2 * units.gu(1)';
320 // This side of the else is a bit silly, who wants an horizontal layout without mascot and title?
322 // This side of the else is a bit silly, who wants an horizontal layout without mascot and title?
321 // So we define a "random" height of the image height + 2 gu for the margins
323 // So we define a "random" height of the image height + 2 gu for the margins
@@ -366,13 +368,13 @@ function cardString(template, components) {
368 if (hasHeaderRow) {
370 if (hasHeaderRow) {
369− code += 'readonly property int headerHeight: row.height + row.margins * 2;\n'
371+ code += 'readonly property int headerHeight: row.height;\n'
370 } else if (hasMascot) {
372 } else if (hasMascot) {
371− code += 'readonly property int headerHeight: mascotImage.height + units.gu(1) * 2;\n'
373+ code += 'readonly property int headerHeight: mascotImage.height;\n'
372 } else if (hasSubtitle) {
374 } else if (hasSubtitle) {
373− code += 'readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2 + subtitleLabel.height + subtitleLabel.anchors.topMargin;\n'
375+ code += 'readonly property int headerHeight: titleLabel.height + subtitleLabel.height + subtitleLabel.anchors.topMargin;\n'
374 } else if (hasTitle) {
376 } else if (hasTitle) {
375− code += 'readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2;\n'
377+ code += 'readonly property int headerHeight: titleLabel.height;\n'
377 code += 'readonly property int headerHeight: 0;\n'
379 code += 'readonly property int headerHeight: 0;\n'