kaneda
|
91c42a1d43
|
Fix crash Close book (pop(null) differito con Timer); config condivisa nemo/defaultuser con permessi aperti a ogni scrittura
|
2026-08-19 16:35:55 +02:00 |
|
kaneda
|
d8584f2de4
|
Selettore lingua (System/EN/IT) nelle impostazioni con QTranslator in main.cpp (pattern quill); fix 'Close book' con pop fino alla prima pagina
|
2026-08-19 16:27:36 +02:00 |
|
kaneda
|
e3ba9b5e87
|
Localizzazione EN di default: qsTr() su tutte le stringhe QML, catalogo italiano translations/harbour-calibreweb_it.ts, lrelease+install .qm nello spec (pattern quill), .pro aggiornato
|
2026-08-19 16:17:30 +02:00 |
|
kaneda
|
9758f2b528
|
ReaderPage: voce 'Chiudi libro' nel PullDownMenu (salva il segno e torna alla pagina principale)
|
2026-08-19 16:10:50 +02:00 |
|
kaneda
|
d7b522f483
|
Lettore a pagine: niente scroll libero, tap a destra = pagina dopo, tap a sinistra = pagina prima (fasce superiore/inferiore ai menu PullDown/PushUp). Alla fine/inizio capitolo il tap passa al capitolo successivo/precedente
|
2026-08-19 16:02:54 +02:00 |
|
kaneda
|
c216b20abb
|
Rimossa la sync server dell'avanzamento di lettura (login di sessione, postBookmark, fetchBookmark): resta solo il salvataggio locale della posizione (QSettings) con ripristino locale all'apertura. ApiClient riportato a feed OPDS + copertine
|
2026-08-13 09:34:39 +02:00 |
|
kaneda
|
9bdec3eb2d
|
Sync avanzamento server completa: login di sessione calibre-web (form + csrf_token + cookie) per le route web, fetchBookmark (GET /read/<id>/<format> con estrazione bookmark: "chiave"), ripristino all'apertura del libro con posizione server dominante, POST a ogni pagina girata già attivo; fallimento login gestito con cooldown 60s e fallback locale
|
2026-08-13 09:28:34 +02:00 |
|
kaneda
|
2652f413a5
|
Margini alto/basso (Settings.readerMarginV) + applicazione a caldo senza reload: i margini si sovrascrivono via runJavaScript (setProperty !important) sul documento aperto, anteprima live nel dialogo e al ritorno dalle impostazioni
|
2026-08-13 09:11:38 +02:00 |
|
kaneda
|
fad647cf9e
|
Margini raggiungibili dal lettore: voce 'Margini del testo' (dialogo Slider) e 'Impostazioni' nel PullDownMenu del ReaderPage; Slider della SettingsPage a larghezza piena
|
2026-08-13 08:52:55 +02:00 |
|
kaneda
|
d230d543dd
|
parseBookmarkKey restituisce QVariantMap (i puntatori int* non sono marshallabili da QML — il segno non si ripristinava mai)
|
2026-08-12 17:26:15 +02:00 |
|
kaneda
|
cbe4153881
|
ReaderPage: ricarica il capitolo al ritorno sulla pagina (Active) — margini e font cambiati nelle impostazioni si applicano subito
|
2026-08-12 17:15:46 +02:00 |
|
kaneda
|
8eb4244eee
|
Lettore: margini configurabili (Settings.readerMargin + Slider nelle impostazioni, iniettati nello stile del capitolo) + controlli in PushUpMenu (un solo trascinamento in alto)
|
2026-08-12 17:00:27 +02:00 |
|
kaneda
|
4fbc6185a7
|
Reflow deterministico: stile iniettato nell'HTML del capitolo (chapterHtml+loadHtml), niente JS post-load; runJavaScript solo per lo scroll
|
2026-08-12 16:16:21 +02:00 |
|
kaneda
|
52d09911f2
|
Persistenza: sync() esplicito dopo ogni scrittura QSettings (fix config cancellata al crash di chiusura) + reflow robusto con stile !important su html/body e contenitori
|
2026-08-12 16:04:41 +02:00 |
|
kaneda
|
35be6f14be
|
ReaderPage: Button non ha font in Silica (rimosso font.pixelSize da A-/A+)
|
2026-08-12 15:59:03 +02:00 |
|
kaneda
|
4930f76e03
|
ReaderPage: reflow con A-/A+ (font-size via JS con !important, posizione conservata in frazione)
|
2026-08-12 15:49:19 +02:00 |
|
kaneda
|
a5f469a73f
|
ReaderPage: dichiarata property ready (era usata ma mai dichiarata = spinner infinito) + PullDownMenu dentro la vista Silica (fix segfault)
|
2026-08-12 15:36:29 +02:00 |
|
kaneda
|
a159e6b252
|
ReaderPage: watchdog 15s (niente spinner infinito) + apertura ritardata per evitare race WebView
|
2026-08-12 15:33:01 +02:00 |
|
kaneda
|
6f0ca6ed07
|
Lettore EPUB nativo: ReaderPage (WebView+capitoli+progresso), segno locale in QSettings, sync POST /ajax/bookmark con fallback CSRF, pulsante Leggi nel dettaglio
|
2026-08-12 14:21:45 +02:00 |
|
kaneda
|
9d8bd03990
|
Copertine: validazione contenuto prima del caching (niente più HTML in cache), id fisso per il dettaglio, handler con sintassi moderna
|
2026-08-12 13:42:44 +02:00 |
|
kaneda
|
f43521cc67
|
BookDetailPage: Notices non istanziabile in questa Silica, sostituito con banner Label+Timer
|
2026-08-12 12:24:24 +02:00 |
|
kaneda
|
ca19efd82a
|
BookDetailPage: riscritte resolveUrl e sanitizeFileName senza regex (backslash doppi rompevano il caricamento pagina)
|
2026-08-12 12:20:01 +02:00 |
|
kaneda
|
62452b470e
|
Risoluzione URL RFC 3986: fix sottopath raddoppiato (/calibre/calibre) + messaggio chiaro per risposte HTML
|
2026-08-12 12:13:56 +02:00 |
|
kaneda
|
dd5d35c439
|
baseUrl come Q_PROPERTY (accesso proprietà, niente Q_INVOKABLE) + log data di build in avvio
|
2026-08-12 11:19:20 +02:00 |
|
kaneda
|
4afede7b92
|
SettingsPage: TextField con anchor invece di width binding (elimina il binding loop Silica)
|
2026-08-12 11:08:25 +02:00 |
|
kaneda
|
0c6c28aa4e
|
baseUrl esposto a QML come Q_INVOKABLE: fix TypeError su MainPage/SearchPage/BookDetailPage
|
2026-08-12 11:05:06 +02:00 |
|
kaneda
|
5f97cb45bf
|
Prova connessione: timeout 30s, busy indicator, normalizzazione https://, log qDebug per debug su device
|
2026-08-12 10:58:34 +02:00 |
|
kaneda
|
40fa34a0d2
|
Fix API Silica: TextSwitch al posto di Switch (label), Notices al posto di Toast (non esiste in Silica). Tutti i componenti verificati contro la doc ufficiale
|
2026-08-12 10:53:06 +02:00 |
|
kaneda
|
711e70734d
|
SettingsPage: Switch non ha description in Silica (era la causa di 'Impossibile caricare la pagina'); hint spostato in Label
|
2026-08-12 10:47:40 +02:00 |
|
kaneda
|
0598fd4409
|
CoverPage: path icona corretto (hicolor, non /usr/share/harbour-calibreweb/icons)
|
2026-08-12 10:24:12 +02:00 |
|
kaneda
|
85b4f8e9b9
|
Client OPDS per Calibre Web (Sailfish OS): core C++ testato, UI Silica, packaging RPM
|
2026-08-12 01:45:31 +02:00 |
|