The QML manual advises against setting width property of gridLayout children directly, and recommends setting preferred, min and/or max width instead, letting QML do the work to determine the optimum width. But we've found letting QML determine gridLayout widths leads to infinite loops in too many situations, so we're forcing a width. It's better to force a width by setting it directly, rather than setting minimum = maximum.
Signed-off-by: Rick Walsh <[email protected]> --- Please test - I've not tested on a mobile device mobile-widgets/qml/DiveDetailsView.qml | 36 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 24 deletions(-) diff --git a/mobile-widgets/qml/DiveDetailsView.qml b/mobile-widgets/qml/DiveDetailsView.qml index 557286f..5e708d4 100644 --- a/mobile-widgets/qml/DiveDetailsView.qml +++ b/mobile-widgets/qml/DiveDetailsView.qml @@ -144,8 +144,7 @@ Item { text: "Suit:" wrapMode: Text.WrapAtWordBoundaryOrAnywhere opacity: 0.6 - Layout.maximumWidth: detailsView.col1Width - Layout.minimumWidth: detailsView.col1Width + width: detailsView.col1Width Layout.alignment: Qt.AlignRight } Kirigami.Label { @@ -159,23 +158,20 @@ Item { text: "Air Temp:" wrapMode: Text.WrapAtWordBoundaryOrAnywhere opacity: 0.6 - Layout.maximumWidth: detailsView.col3Width - Layout.minimumWidth: detailsView.col3Width + width: detailsView.col3Width Layout.alignment: Qt.AlignRight } Kirigami.Label { id: txtAirTemp text: dive.airTemp wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere - Layout.maximumWidth: detailsView.col4Width - Layout.minimumWidth: detailsView.col4Width + width: detailsView.col4Width } Kirigami.Label { text: "Cylinder:" opacity: 0.6 - Layout.maximumWidth: detailsView.col1Width - Layout.minimumWidth: detailsView.col1Width + width: detailsView.col1Width Layout.alignment: Qt.AlignRight } Kirigami.Label { @@ -189,24 +185,21 @@ Item { text: "Water Temp:" wrapMode: Text.WrapAtWordBoundaryOrAnywhere opacity: 0.6 - Layout.maximumWidth: detailsView.col3Width - Layout.minimumWidth: detailsView.col3Width + width: detailsView.col3Width Layout.alignment: Qt.AlignRight } Kirigami.Label { id: txtWaterTemp text: dive.waterTemp wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere - Layout.maximumWidth: detailsView.col4Width - Layout.minimumWidth: detailsView.col4Width + width: detailsView.col4Width } Kirigami.Label { text: "Dive Master:" wrapMode: Text.WrapAtWordBoundaryOrAnywhere opacity: 0.6 - Layout.maximumWidth: detailsView.col1Width - Layout.minimumWidth: detailsView.col1Width + width: detailsView.col1Width Layout.alignment: Qt.AlignRight } Kirigami.Label { @@ -219,16 +212,14 @@ Item { Kirigami.Label { text: "Weight:" opacity: 0.6 - Layout.maximumWidth: detailsView.col3Width - Layout.minimumWidth: detailsView.col3Width + width: detailsView.col3Width Layout.alignment: Qt.AlignRight } Kirigami.Label { id: txtWeight text: dive.sumWeight wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere - Layout.maximumWidth: detailsView.col4Width - Layout.minimumWidth: detailsView.col4Width + width: detailsView.col4Width } } // clearly, Qt 5.6.0 is buggy as having this as one GridLayout @@ -248,8 +239,7 @@ Item { Kirigami.Label { text: "Buddy:" opacity: 0.6 - Layout.maximumWidth: detailsView.col1Width - Layout.minimumWidth: detailsView.col1Width + width: detailsView.col1Width Layout.alignment: Qt.AlignRight } Kirigami.Label { @@ -262,16 +252,14 @@ Item { Kirigami.Label { text: "SAC:" opacity: 0.6 - Layout.maximumWidth: detailsView.col3Width - Layout.minimumWidth: detailsView.col3Width + width: detailsView.col3Width Layout.alignment: Qt.AlignRight } Kirigami.Label { id: txtSAC text: dive.sac wrapMode: TextEdit.WrapAtWordBoundaryOrAnywhere - Layout.maximumWidth: detailsView.col4Width - Layout.minimumWidth: detailsView.col4Width + width: detailsView.col4Width } Kirigami.Heading { -- 2.5.5 _______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
