From f9a48beccec55eeaae7f37e88b08fa548060629b Mon Sep 17 00:00:00 2001 From: LemmyCook Date: Fri, 5 Sep 2025 15:47:07 -0400 Subject: [PATCH] SettingsPanel: finaly fixed the conflict between scrollview and textinput! --- Modules/SettingsPanel/SettingsPanel.qml | 37 +++++++++++++++---------- 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/Modules/SettingsPanel/SettingsPanel.qml b/Modules/SettingsPanel/SettingsPanel.qml index 4454037..0cd9b9c 100644 --- a/Modules/SettingsPanel/SettingsPanel.qml +++ b/Modules/SettingsPanel/SettingsPanel.qml @@ -477,23 +477,30 @@ NPanel { } } - sourceComponent: ScrollView { - id: scrollView - Layout.fillWidth: true - Layout.fillHeight: true - ScrollBar.horizontal.policy: ScrollBar.AlwaysOff - ScrollBar.vertical.policy: ScrollBar.AsNeeded - padding: Style.marginL * scaling - clip: true + sourceComponent: Flickable { + // Using a Flickable here with a pressDelay to fix conflict between + // ScrollView and NTextInput. This fix the weird text selection issue. + id: flickable + anchors.fill: parent + pressDelay: 200 - Component.onCompleted: { - root.activeScrollView = scrollView - } + ScrollView { + id: scrollView + anchors.fill: parent + ScrollBar.horizontal.policy: ScrollBar.AlwaysOff + ScrollBar.vertical.policy: ScrollBar.AsNeeded + padding: Style.marginL * scaling + clip: true - Loader { - active: true - sourceComponent: root.tabsModel[index].source - width: scrollView.availableWidth + Component.onCompleted: { + root.activeScrollView = scrollView + } + + Loader { + active: true + sourceComponent: root.tabsModel[index].source + width: scrollView.availableWidth + } } } }