diff options
author | Shrief Gabr <shrief.gabr@qt.io> | 2024-04-19 15:47:20 +0300 |
---|---|---|
committer | Shrief Gabr <shrief.gabr@qt.io> | 2024-04-19 14:34:22 +0000 |
commit | 778688154d55719b2b53ff8747003cd0fb18bf2e (patch) | |
tree | e03c0e73c6e86b20ac0534dcc7a8c6349efb52b3 /share/qtcreator | |
parent | 0496c872a311d73bcbc611d3aab7f13df0543fc5 (diff) |
QmlDesigner: Fix model editor layout issues on adding rows/columns
Task-number: QDS-12352
Change-Id: Ie37d1afe2a243d08a09a55778cf0bf00de8f327c
Reviewed-by: Ali Kianian <ali.kianian@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Diffstat (limited to 'share/qtcreator')
-rw-r--r-- | share/qtcreator/qmldesigner/collectionEditorQmlSource/CollectionDetailsView.qml | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/share/qtcreator/qmldesigner/collectionEditorQmlSource/CollectionDetailsView.qml b/share/qtcreator/qmldesigner/collectionEditorQmlSource/CollectionDetailsView.qml index e40a3c9457..2193bd1763 100644 --- a/share/qtcreator/qmldesigner/collectionEditorQmlSource/CollectionDetailsView.qml +++ b/share/qtcreator/qmldesigner/collectionEditorQmlSource/CollectionDetailsView.qml @@ -252,37 +252,35 @@ Rectangle { function ensureRowIsVisible(row) { let rows = tableView.model.rowCount() - if (row < 0 || row >= rows) { - tableView.targetRow = -1 - return - } + let rowIsLoaded = tableView.isRowLoaded(row) + + if (row < 0 || row >= rows || rowIsLoaded) { + if (rowIsLoaded) + tableView.positionViewAtRow(row, Qt.AlignLeft | Qt.AlignTop) - if (tableView.isRowLoaded(row)) { - tableView.positionViewAtRow(row, Qt.AlignLeft | Qt.AlignTop) tableView.targetRow = -1 return } tableView.targetRow = row - verticalScrollBar.position = row / rows + tableView.positionViewAtRow(row, Qt.AlignLeft | Qt.AlignTop) ensureTimer.start() } function ensureColumnIsVisible(column) { let columns = tableView.model.columnCount() - if (column < 0 || column >= columns) { - tableView.targetColumn = -1 - return - } + let columnIsLoaded = tableView.isColumnLoaded(column) + + if (column < 0 || column >= columns || columnIsLoaded) { + if (columnIsLoaded) + tableView.positionViewAtColumn(column, Qt.AlignLeft | Qt.AlignTop) - if (tableView.isColumnLoaded(column)) { - tableView.positionViewAtColumn(column, Qt.AlignLeft | Qt.AlignTop) tableView.targetColumn = -1 return } tableView.targetColumn = column - horizontalScrollBar.position = column / columns + tableView.positionViewAtColumn(column, Qt.AlignLeft | Qt.AlignTop) ensureTimer.start() } |