From 6a840bc5517ad9aa1ff187a2ac3c221e2f33bd61 Mon Sep 17 00:00:00 2001 From: Carlo Baratto Date: Fri, 21 Aug 2026 11:55:20 +0200 Subject: [PATCH] Lettore 0.4.2: il PushUpMenu resta aperto (snap con guardia menu.active) Lo snap usava menu.open (vero solo a menu aperto): durante l'apertura il pulley sposta il contenuto, lo snap scattava nel mezzo e il menu si annullava. Ora guardia su menu.active (vero anche durante il drag) e onClosed: snapTimer.restart() per riallineare il contenuto dopo la chiusura. --- qml/pages/ReaderPage.qml | 7 +++++-- rpm/harbour-calibreweb.spec | 8 +++++++- src/main.cpp | 4 ++-- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/qml/pages/ReaderPage.qml b/qml/pages/ReaderPage.qml index 2e5fd4e..cee45ca 100644 --- a/qml/pages/ReaderPage.qml +++ b/qml/pages/ReaderPage.qml @@ -55,6 +55,7 @@ Page { // il PullDownMenu va DENTRO una vista Silica, non a livello di Page PullDownMenu { id: pullMenu + onClosed: snapTimer.restart() MenuItem { text: qsTr("Table of contents") onClicked: showChapterList() @@ -92,6 +93,7 @@ Page { // controlli del lettore: un solo trascinamento in alto li apre PushUpMenu { id: readerMenu + onClosed: snapTimer.restart() Label { anchors.horizontalCenter: parent.horizontalCenter @@ -236,8 +238,9 @@ Page { function snapToPage() { if (!page.ready || page.pendingRestore) return - // menu aperti: il contenuto è spostato apposta, niente snap - if (pullMenu.open || readerMenu.open) + // menu ATTIVI (aperti O in trascinamento): il pulley sposta il contenuto + // di proposito, niente snap — altrimenti il menu si richiude da solo + if (pullMenu.active || readerMenu.active) return var vh = Math.max(1, readerFlick.height) var max = Math.max(0, readerFlick.contentHeight - vh) diff --git a/rpm/harbour-calibreweb.spec b/rpm/harbour-calibreweb.spec index 37abdb4..31127be 100644 --- a/rpm/harbour-calibreweb.spec +++ b/rpm/harbour-calibreweb.spec @@ -1,6 +1,6 @@ Name: harbour-calibreweb Summary: Client OPDS per Calibre Web -Version: 0.4.1 +Version: 0.4.2 Release: 1 Group: Qt/Qt License: MIT @@ -24,6 +24,12 @@ reflow del testo, margini configurabili e posizione salvata in locale. %changelog +* Fri Aug 21 2026 Carlo Baratto - 0.4.2-1 +- Fix PushUpMenu che si richiudeva da solo: lo snap usava la guardia + menu.open (vera solo a menu aperto), ma durante l'apertura il pulley sposta + il contenuto e lo snap scattava nel mezzo -> il menu si annullava. Ora la + guardia e' menu.active (vera anche durante il trascinamento); dopo la + chiusura del menu (onClosed) lo snap riallinea il contenuto se serve * Fri Aug 21 2026 Carlo Baratto - 0.4.1-1 - Fix scroll libero e pulley menu: rimosso preventStealing dalla MouseArea (ruba il gesto al PushUpMenu appena il dito entra nella zona centrale). diff --git a/src/main.cpp b/src/main.cpp index d2dce50..3684610 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,7 +22,7 @@ Q_DECL_EXPORT int main(int argc, char *argv[]) app->setOrganizationName(QStringLiteral("harbour")); app->setApplicationName(QStringLiteral("calibreweb")); // versione mostrata nelle impostazioni (tenere allineata allo spec) - app->setApplicationVersion(QStringLiteral("0.4.1")); + app->setApplicationVersion(QStringLiteral("0.4.2")); Settings settings; @@ -56,7 +56,7 @@ Q_DECL_EXPORT int main(int argc, char *argv[]) QQuickView *view = SailfishApp::createView(); - qDebug() << "harbour-calibreweb v0.4.1 build" << __DATE__ << __TIME__; + qDebug() << "harbour-calibreweb v0.4.2 build" << __DATE__ << __TIME__; qmlRegisterType("harbour.calibreweb", 1, 0, "EpubBook");