Conversation
PR Review: #314 — New JavaFX GUI with PDF preview and signingOverall AssessmentThis is a well-structured, ambitious PR that adds a modern JavaFX GUI as the default interface while preserving the legacy Swing GUI as a fallback. The architecture (MVVM, background services, FXML+CSS separation) is clean and idiomatic. The bug fixes are solid and well-tested. That said, I have a number of findings ranging from potential bugs to design concerns. Critical / Bugs1.
2.
3.
4.
Medium / Design Issues5.
6.
7.
8.
9. No confirmation dialog before signing
Minor / Suggestions10.
11.
12. Zoom combo accepts arbitrary text but silently ignores non-numeric input
13. This means 14. Translation quality — all 19 locales have identical English values
15.
16.
17. The "Signing" menu contains a 18. CSS — hardcoded colors, no dark mode support The stylesheet uses hardcoded light colors ( What's Good
SummaryThe PR needs attention on:
|
This reverts commit 0a230a6.
Summary
-Djsignpdf.swing=truefallback)~/.JSignPdfproperty file as the Swing UI (load on start, store on close, password encryption)jfx.gui.*keys in all 19 translation files (en, cs, de, el, es, fr, hr, hu, hy, it, ja, nb-NO, pl, pt, ru, sk, ta, zh_CN, zh_TW)KeyStoreUtils.getPkInfoandSignerLogic.signFilewhen key alias is null (fail-fast with test coverage)Architecture
DocumentViewModel,SigningOptionsViewModel,SignaturePlacementViewModelPdfRenderService(wrapsPdf2Image),SigningService(wrapsSignerLogic),KeyStoreService%keyresource bundle syntax for translationsSignerLogic,BasicSignerOptions,Pdf2Image, etc.)