From 7d679413ff45d2e8990376b0c09fc4199ec948da Mon Sep 17 00:00:00 2001 From: xiepengfei Date: Mon, 22 Dec 2025 13:55:47 +0800 Subject: [PATCH] fix: Fix the jitter issue when swiping with two fingers Fix the jitter issue when swiping with two fingers Log: Fix the jitter issue when swiping with two fingers pms: BUG-343525 --- qml/FullscreenFrame.qml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/qml/FullscreenFrame.qml b/qml/FullscreenFrame.qml index 8bcbf763..fb5ed4b3 100644 --- a/qml/FullscreenFrame.qml +++ b/qml/FullscreenFrame.qml @@ -229,7 +229,7 @@ InputEventItem { MouseArea { anchors.fill: parent - scrollGestureEnabled: false + scrollGestureEnabled: true enabled: !folderGridViewPopup.visible onClicked: { if (!DebugHelper.avoidHideWindow) { @@ -247,13 +247,14 @@ InputEventItem { } else if (xDelta !== 0) { toPage = (xDelta > 0) ? 1 : -1 } - if (toPage < 0) { + // Check boundary before triggering page switch to avoid animation jitter + if (toPage < 0 && listviewPage.currentIndex > 0) { flipPageDelay.start() if (!searchEdit.focus) { // reset keyboard focus when using mouse to flip page, but keep searchEdit focus baseLayer.focus = true } decrementPageIndex(listviewPage) - } else if (toPage > 0) { + } else if (toPage > 0 && listviewPage.currentIndex < listviewPage.count - 1) { flipPageDelay.start() if (!searchEdit.focus) { // reset keyboard focus when using mouse to flip page, but keep searchEdit focus baseLayer.focus = true @@ -350,7 +351,7 @@ InputEventItem { activeFocusOnTab: true focus: true visible: searchEdit.text === "" - interactive: !folderGridViewPopup.visible + interactive: false currentIndex: indicator.currentIndex function setCurrentIndex(index) {