From ac40f9835ba67716e0c8407dd90b6a9ec2c4fb3e Mon Sep 17 00:00:00 2001 From: Gabriel Bolbotina Date: Thu, 14 May 2026 12:14:09 +0300 Subject: [PATCH 1/4] Fixed the UI bug not showing already selected entries for the multi select filter --- .../components/MMFilterDropdownValueRelationInput.qml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml index a192c80e1..56401e5f0 100644 --- a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml +++ b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml @@ -109,8 +109,12 @@ Column { Component.onCompleted: { if ( root.currentValue ) { - // preselect choices if any are set - selected = root.currentValue + // preselect choices if any are set; coerce numeric strings to numbers + // so they match the model's numeric keys (fixes AllowMulti filter returning 0 results) + selected = root.currentValue.map( v => { + const n = Number( v ) + return isFinite( n ) && String( n ) === v ? n : v + } ) } open() From a32cbbb6d55c071ad4e6603c636d653b088f4a35 Mon Sep 17 00:00:00 2001 From: Gabriel Bolbotina Date: Thu, 14 May 2026 12:25:15 +0300 Subject: [PATCH 2/4] Small comment modification --- .../filters/components/MMFilterDropdownValueRelationInput.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml index 56401e5f0..6c7e27a76 100644 --- a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml +++ b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml @@ -109,7 +109,7 @@ Column { Component.onCompleted: { if ( root.currentValue ) { - // preselect choices if any are set; coerce numeric strings to numbers + // preselect choices if any are set; convert numeric strings to numbers // so they match the model's numeric keys (fixes AllowMulti filter returning 0 results) selected = root.currentValue.map( v => { const n = Number( v ) From fadcfd68d5abcb701a98b190dcb07156dd40b9a6 Mon Sep 17 00:00:00 2001 From: Gabriel Bolbotina <80618569+gabriel-bolbotina@users.noreply.github.com> Date: Tue, 19 May 2026 21:08:32 +0300 Subject: [PATCH 3/4] Update app/qml/filters/components/MMFilterDropdownValueRelationInput.qml Co-authored-by: Matej Bagar --- .../filters/components/MMFilterDropdownValueRelationInput.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml index 6c7e27a76..c130e0f93 100644 --- a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml +++ b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml @@ -110,7 +110,7 @@ Column { Component.onCompleted: { if ( root.currentValue ) { // preselect choices if any are set; convert numeric strings to numbers - // so they match the model's numeric keys (fixes AllowMulti filter returning 0 results) + // so they match the model's numeric keys selected = root.currentValue.map( v => { const n = Number( v ) return isFinite( n ) && String( n ) === v ? n : v From 27e598f29773231103009470758c3a715a7b8a66 Mon Sep 17 00:00:00 2001 From: Gabriel Bolbotina Date: Fri, 22 May 2026 19:45:56 +0300 Subject: [PATCH 4/4] Implemented review findings --- .../components/MMFilterDropdownValueRelationInput.qml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml index c130e0f93..d4ec856f5 100644 --- a/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml +++ b/app/qml/filters/components/MMFilterDropdownValueRelationInput.qml @@ -109,12 +109,8 @@ Column { Component.onCompleted: { if ( root.currentValue ) { - // preselect choices if any are set; convert numeric strings to numbers - // so they match the model's numeric keys - selected = root.currentValue.map( v => { - const n = Number( v ) - return isFinite( n ) && String( n ) === v ? n : v - } ) + + selected = root.currentValue.map( v => isFinite( v ) ? Number( v ) : v ) } open()