- Update to 4.3.1:
* Made countdown colors configurable.
* Added support for selecting the countdown display type (numeric value or cake-style).
* Wired the validity countdown switch to disable color pickers when “show countdown as seconds” is enabled, and stored those widgets in the settings state for reuse in callbacks.
* Added a dedicated handler to update color picker sensitivity whenever the display mode switch changes (including on dialog initialization).
* Added persistence for tree view column widths by loading saved widths on startup and saving current widths to the configuration on shutdown.
* Renamed the “OTP Value” column header to “OTP” and tagged columns with IDs to support width tracking.
* Added polished empty-state screens with direct call-to-action buttons.
* Improved consistency and clarity across menus, headers, and dialogs.
* Enhanced OTP list readability with resizable columns, ellipsized labels, and monospace formatting.
* Replaced the validity text column with a progress bar showing remaining TOTP time.
* Switched visual indicators from bar-based to filled pie charts for clearer status at a glance.
* Improved CLI usability and feedback.
* Refactored the codebase to follow proper GTK coding patterns and lifecycle management.
* Removed obsolete option-migration logic.
* Added an explicit shutdown event.
* Hardened shutdown cleanup to safely handle partially initialized components, avoiding GTK critical warnings while still persisting window state when possible.
OBS-URL: https://build.opensuse.org/request/show/1333720
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/otpclient?expand=0&rev=42
* Made countdown colors configurable.
* Added support for selecting the countdown display type (numeric value or cake-style).
* Wired the validity countdown switch to disable color pickers when “show countdown as seconds” is enabled, and stored those widgets in the settings state for reuse in callbacks.
* Added a dedicated handler to update color picker sensitivity whenever the display mode switch changes (including on dialog initialization).
* Added persistence for tree view column widths by loading saved widths on startup and saving current widths to the configuration on shutdown.
* Renamed the “OTP Value” column header to “OTP” and tagged columns with IDs to support width tracking.
* Added polished empty-state screens with direct call-to-action buttons.
* Improved consistency and clarity across menus, headers, and dialogs.
* Enhanced OTP list readability with resizable columns, ellipsized labels, and monospace formatting.
* Replaced the validity text column with a progress bar showing remaining TOTP time.
* Switched visual indicators from bar-based to filled pie charts for clearer status at a glance.
* Improved CLI usability and feedback.
* Refactored the codebase to follow proper GTK coding patterns and lifecycle management.
* Removed obsolete option-migration logic.
* Added an explicit shutdown event.
* Hardened shutdown cleanup to safely handle partially initialized components, avoiding GTK critical warnings while still persisting window state when possible.
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=90
- Update to 4.2.0:
* ADDED: interactive search (ctrl-f)
* IMPROVED: search now matches query against type, account label, and issuer uniformly
* IMPROVED: Streamlined treeview model population to read JSON directly with safe defaults
* IMPROVED: Simplified OTP update flow and tightened reorder/delete safety and cleanup
* IMPROVED: Centralized app/db default initialization and early cleanup paths in app.c
* IMPROVED: Tightened error handling by clearing config migration errors and freeing the config path
* IMPROVED: Made early-exit cleanup safer by avoiding double-freeing the database key
* IMPROVED: Added a helper to clear password entries and reset visibility on successful submit
* IMPROVED: Cleared old/new password fields before the dialog closes to avoid brief exposure
* IMPROVED: Initialized settings defaults when the config load fails and persisted them to otpclient.cfg
* IMPROVED: Added warning dialog only when saving fallback defaults fails
* IMPROVED: cli: improve robustness and correctness in string and file handling
* FIXED: duplicate windows and tray icons on re-activation (#409)
OBS-URL: https://build.opensuse.org/request/show/1324490
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/otpclient?expand=0&rev=41
* ADDED: interactive search (ctrl-f)
* IMPROVED: search now matches query against type, account label, and issuer uniformly
* IMPROVED: Streamlined treeview model population to read JSON directly with safe defaults
* IMPROVED: Simplified OTP update flow and tightened reorder/delete safety and cleanup
* IMPROVED: Centralized app/db default initialization and early cleanup paths in app.c
* IMPROVED: Tightened error handling by clearing config migration errors and freeing the config path
* IMPROVED: Made early-exit cleanup safer by avoiding double-freeing the database key
* IMPROVED: Added a helper to clear password entries and reset visibility on successful submit
* IMPROVED: Cleared old/new password fields before the dialog closes to avoid brief exposure
* IMPROVED: Initialized settings defaults when the config load fails and persisted them to otpclient.cfg
* IMPROVED: Added warning dialog only when saving fallback defaults fails
* IMPROVED: cli: improve robustness and correctness in string and file handling
* FIXED: duplicate windows and tray icons on re-activation (#409)
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=88
* ADDED: minimize to tray with ayatana-appindicator3 (#386 thanks a lot @len-foss)
* IMPROVED: only show memlock warning dialog when secure memory is unavailable (#397)
* IMPROVED: allow creating a database via CLI (#392)
* FIX: allow using different databases in flatpak (#372)
* CHANGED: dropped andOTP support
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=86
- Update to 4.0.1:
* CHANGE: switch from PBKDF2 to Argon2id (#358).
This change is completely transparent to the end user, therefore no action is required.
* NEW: make Argon2id parameters configurable (#358)
* NEW: add support for importing plain Aegis txt
* FIX: various issues related to importing Aegis backups (#371)
* FIX: improving handling of json files (#369)
* FIX: parsing QR codes (#374)
* FIX: show db parameters dynamically
* FIX: add missing ui file to CMakeLists.txt
OBS-URL: https://build.opensuse.org/request/show/1190587
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/otpclient?expand=0&rev=38
* CHANGE: switch from PBKDF2 to Argon2id (#358).
This change is completely transparent to the end user, therefore no action is required.
* NEW: make Argon2id parameters configurable (#358)
* NEW: add support for importing plain Aegis txt
* FIX: various issues related to importing Aegis backups (#371)
* FIX: improving handling of json files (#369)
* FIX: parsing QR codes (#374)
* FIX: show db parameters dynamically
* FIX: add missing ui file to CMakeLists.txt
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=82
* CHANGE: deleting a row, editing a row and showing the qr code
is now done via right click on the target row (#359).
* FIX: multiple fixes to QR handling (#364).
* FIX: exporting to FreeOTP+ format (#367).
* FIX: updated otpclient and otpclient-cli man pages (thanks @fvcr).
* FIX: code more readable thanks to macros.
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=80
* NEW: add possibility to import plain/encrypted backups
using the CLI.
* FIX: make GUI and CLI independent, so that CLI only can be built
and installed without GTK being present.
* FIX: check file size against memlock before importing a backup.
* FIX: code cleanup and internal refactoring.
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=78
- Update to 3.5.0:
* NEW: add support for importing and exporting plain/encrypted 2FAS backups (#322)
* NEW: add support for importing and exporting plain/encrypted AuthenticatorPro backups (#322)
* CHANGE: show warning when exporting a plain backup
* CHANGE: remove support for older Glib and GCrypt
* FIX: add 2fa keyword to the desktop file (#349)
* FIX: remove custom keywords from metadata file (#348)
* FIX: returning to a dialog won't crash the widget
OBS-URL: https://build.opensuse.org/request/show/1154079
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/otpclient?expand=0&rev=33
* NEW: add support for importing and exporting plain/encrypted 2FAS backups (#322)
* NEW: add support for importing and exporting plain/encrypted AuthenticatorPro backups (#322)
* CHANGE: show warning when exporting a plain backup
* CHANGE: remove support for older Glib and GCrypt
* FIX: add 2fa keyword to the desktop file (#349)
* FIX: remove custom keywords from metadata file (#348)
* FIX: returning to a dialog won't crash the widget
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=72
- Update to 3.4.1:
* FIX: FreeOTP+ export (thanks @hubnut)
- Update to 3.4.0:
* NEW: CLI was completely refactored, and the options have changed.
Be sure to check the new options using the help command (-h)
* NEW: you can now specify a database when calling the CLI (#340)
* FIX: handling errors when path and/or password is incorrect (#336)
* FIX: prompt for file again, if needed (#335)
* FIX: prevent about dialog from hiding
* FIX: use system RNG as source of entropy
OBS-URL: https://build.opensuse.org/request/show/1146089
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/otpclient?expand=0&rev=32
* NEW: CLI was completely refactored, and the options have changed.
Be sure to check the new options using the help command (-h)
* NEW: you can now specify a database when calling the CLI (#340)
* FIX: handling errors when path and/or password is incorrect (#336)
* FIX: prompt for file again, if needed (#335)
* FIX: prevent about dialog from hiding
* FIX: use system RNG as source of entropy
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=69
* NEW: add file chooser dialog on export (#305).
* FIX: overwrite exported file instead of appending it (#305).
* FIX: exported file will be accessible only by the current user (#305).
* FIX: multiple issues related to failed first launch (#303).
* FIX: couple of issues with secret-service.
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=59
* Add new Database info dialog (Hamburger menu -> Database info)
* Fix crash when no row is selected (#295)
* Fix UI when creating/changing a database
* Multiple fixes when creating a new database
* Use current db folder when creating/changing database
* Fix memory leak in case of error when opening the settings dialog
OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/otpclient?expand=0&rev=52