From 95a1986dd2dd392466de64404c64a2fb641eec3b Mon Sep 17 00:00:00 2001 From: Matthieu Hodgkinson Date: Thu, 16 Apr 2026 08:49:28 +0200 Subject: [PATCH 1/3] Allow empty table views --- .../qml/Muse/UiComponents/abstracttableviewmodel.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/framework/uicomponents/qml/Muse/UiComponents/abstracttableviewmodel.cpp b/src/framework/uicomponents/qml/Muse/UiComponents/abstracttableviewmodel.cpp index 61870276cdd3e..188d55e75ae9c 100644 --- a/src/framework/uicomponents/qml/Muse/UiComponents/abstracttableviewmodel.cpp +++ b/src/framework/uicomponents/qml/Muse/UiComponents/abstracttableviewmodel.cpp @@ -89,10 +89,6 @@ ItemMultiSelectionModel* AbstractTableViewModel::selectionModel() const void AbstractTableViewModel::setTable(const QVector >& table) { - if (table.isEmpty()) { - return; - } - for (const auto& row : std::as_const(m_table)) { for (TableViewCell* cell : row) { if (cell) { From ab97bf170611ae6dd851cf53ad1e5774bd8c450c Mon Sep 17 00:00:00 2001 From: Matthieu Hodgkinson Date: Fri, 17 Apr 2026 08:46:54 +0200 Subject: [PATCH 2/3] Bubble up horizontal-header click --- .../uicomponents/qml/Muse/UiComponents/StyledTableView.qml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml b/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml index 7c3bf0e002f2f..56729213c6623 100644 --- a/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml +++ b/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml @@ -77,6 +77,7 @@ Item { } signal handleItem(var index, var item) + signal horizontalHeaderClicked(int column) QtObject { id: prv @@ -136,6 +137,10 @@ Item { onFormatChangeRequested: function(formatId) { display.currentFormatId = formatId } + + onClicked: { + root.horizontalHeaderClicked(index) + } } } From ac611ea526395ff2e640a897131791618da26ab7 Mon Sep 17 00:00:00 2001 From: Matthieu Hodgkinson Date: Fri, 17 Apr 2026 08:48:04 +0200 Subject: [PATCH 3/3] expose `displayTruncatedTextOnHover` property of `StyledTableView` --- .../uicomponents/qml/Muse/UiComponents/StyledTableView.qml | 2 ++ .../qml/Muse/UiComponents/internal/StyledTableViewCell.qml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml b/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml index 56729213c6623..c9c124115447a 100644 --- a/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml +++ b/src/framework/uicomponents/qml/Muse/UiComponents/StyledTableView.qml @@ -36,6 +36,7 @@ Item { property bool showVerticalHeader: false property bool horizontalHeaderNavigationEnabled: true + property bool displayTruncatedTextOnHover: false property var currentEditedCell: null @@ -242,6 +243,7 @@ Item { preferredWidth: hHeaderData.preferredWidth sourceComponentCallback: root.sourceComponentCallback + displayTruncatedTextOnHover: root.displayTruncatedTextOnHover isSelected: tableView.selectionModel.hasSelection && tableView.selectionModel.isSelected(tableView.model.index(row, column)) evenMargins: showVerticalHeader diff --git a/src/framework/uicomponents/qml/Muse/UiComponents/internal/StyledTableViewCell.qml b/src/framework/uicomponents/qml/Muse/UiComponents/internal/StyledTableViewCell.qml index ee7515572d56b..368c335ac77fe 100644 --- a/src/framework/uicomponents/qml/Muse/UiComponents/internal/StyledTableViewCell.qml +++ b/src/framework/uicomponents/qml/Muse/UiComponents/internal/StyledTableViewCell.qml @@ -39,6 +39,7 @@ TableViewDelegate { property bool isSelected: false property bool evenMargins: false + property bool displayTruncatedTextOnHover: false property alias navigation: listItem.navigation @@ -517,6 +518,7 @@ TableViewDelegate { text: root.cellType === TableViewCellType.List ? root.itemData.current : val textFormat: Text.PlainText horizontalAlignment: Text.AlignLeft + displayTruncatedTextOnHover: root.displayTruncatedTextOnHover } } }