rmcrackan
4d1b78f7e4
#1865 - Add in-dialog "Apply to all" and "Remember in Settings" for bad-book errors. Also a testing section when run in debug (ie: from visual studio)
2026-06-12 09:53:57 -04:00
rmcrackan
591a6d1594
Account 'export' should be disabled when the account has no keys/tokens
2026-05-12 12:05:11 -04:00
rmcrackan
50fde66a4c
#1804 - Fix Windows folder picker crash on custom paths. Normalize stored paths before opening the OS folder dialog (\\?\ / UNC handling, existence check) in shared FolderPickerInitialPath, use it from WinForms and Avalonia folder pickers, and retry once if the dialog still throws. Adds small FileManager tests.
2026-05-12 08:55:12 -04:00
MBucari
505c614210
Code Cleanup
...
Remove unused parameters
Remove unnecessary casts
Make fields readonly
Order modifiers
Format document
Sort usings
Remove unnecessary nullable directive
Apply namespace preferences (file-level)
2026-05-04 21:10:28 -06:00
Michael Bucari-Tovo
df531de255
Update Avalonia to v12
...
Avalonia 12 uses compiled bindings by default. Converted all remaining reflection bindings into compiled bindings,
Fixed binding errors
2026-05-04 21:08:26 -06:00
rmcrackan
8c88739644
Merge pull request #1747 from rmcrackan/rmcrackan/1732-cli-auth
...
add CLI auth options
2026-05-01 10:05:41 -04:00
rmcrackan
13bdebbe9d
#1776 . better messages to users. improve all exception display
2026-04-30 11:04:50 -04:00
rmcrackan
4a30acf0eb
#1751 - text should always be readable. Allow for user-resizing when it's not the case.
2026-04-20 09:48:13 -04:00
rmcrackan
6d326ebabc
#1732 add CLI auth options. Add to the CLI these features which are already available in the GUI: importing from @mkb79 's audible-cli , and the external browser login (aka: alternative login). Caveat: 2nd feature doesn't work for Brazil (gui or cli)
2026-04-18 15:29:57 -04:00
rmcrackan
af1029f4b5
Honor "don't use WebView" for this path
2026-04-15 09:50:18 -04:00
rmcrackan
63e7f0f44e
Automatic fallback when WebKit is missing. If embedded WebView cannot load, route the same “add account” flow to non-WebView login, so Arch minimal installs work without WebKit.
2026-04-15 09:45:35 -04:00
rmcrackan
65623e8e81
Catch WebKit load failures on account login. Wrap the code path that opens NativeWebDialog / WebView for Audible login in a try/catch for DllNotFoundException (and related load failures). On failure, show a short dialog: install WebKit2GTK and do not crash the app.
2026-04-15 09:41:47 -04:00
rmcrackan
5c1153e187
better error messages when webview is the problem. shouldn't appear like a scan error
2026-03-30 14:22:09 -04:00
rmcrackan
80823bf15c
don't set cookies without values. Attempting to solve #1682
2026-03-17 16:59:11 -04:00
rmcrackan
ddef3b649b
Fix naming template links
2026-03-11 13:45:59 -04:00
rmcrackan
5cf710756f
Bug fix #1664 - WebView breaks catastrophically under Linux Snap -- segfault with no logged errors
2026-03-11 13:00:19 -04:00
rmcrackan
70ef1c52a4
Bug fix #1657 - error in saving templates
2026-03-05 11:46:35 -05:00
rmcrackan
41e0aa0dfb
Upgrade checks to include: yes, no, don't know
2026-03-02 08:44:18 -05:00
Michael Bucari-Tovo
3ab1edc076
Code Cleanup
...
Make fields readonly
Remove unnecessary casts
Format document
Remove unnecessary usings
Sort usings
Use file-level namespaces
Order modifiers
2026-02-05 12:48:44 -07:00
Michael Bucari-Tovo
d67692355f
Enable project-wide nullable reference types
...
Added DB migration for nullable types.
2026-02-05 12:43:05 -07:00
Sebastian Good
5c56e1d39b
Correct small spelling mistake
2026-01-30 16:12:48 +00:00
Michael Bucari-Tovo
659f793eb8
Improve TrashBinDialog functionality
...
- Use the main display grid control to display deleted books
- Added search functionality for deleted books. This required creating a temporary search index in the `InProgress` folder. The products grid control now uses an instance of `ISearchEngine` to filter its grid entries. The main grid uses a singleton instance of `MainSearchEngine`, which merely wraps `SearchEngineCommands.Search()`. The TrashBinDialogs use `TempSearchEngine`.
- Users can now batch select `Everyting` as well as `Audible Plus Books`
Avalonia:
- Refactor main grid context menus to no longer require reflection
2026-01-09 16:47:37 -07:00
Michael Bucari-Tovo
4bd641ee50
Improve LocateAudiobooksDialog
...
- Move LocatedAudiobooksViewModel to LibationUiBase
- Refactor Avalonia and Classic displays to use same view model.
- Do scan on background task
2026-01-05 15:38:15 -07:00
MBucari
396d2c8a95
Address rmcrackan comments and refactor
2026-01-02 13:04:35 -07:00
Michael Bucari-Tovo
f6b96fc210
Add feature to scan for better quality audiobooks
...
Add AccessibleDataGridViewColumn which can apply Accessability names and descriptions from the designer.
Create reusable SortBindingList<T> for basic sorting of data-bound items.
2025-12-31 16:31:52 -07:00
Michael Bucari-Tovo
7d30a3036d
Move viewmodel into UiBase
2025-12-30 15:56:47 -07:00
Michael Bucari-Tovo
bb8b435810
Improve Find Better Quality Audiobooks scanner
...
Try to load best audio format from actual liberated audiobook files
Allow re-scanning after completing scanning.
2025-12-30 14:49:58 -07:00
MBucari
e850465ec1
Add more null safety
...
Enable project-wide nullable on LibationUiBase and LibationAvalonia
Explicitly parallelize unit tests
2025-12-30 13:17:11 -07:00
Mbucari
31087c0855
Add feature to scan library for higher quality books
2025-12-29 19:30:47 -07:00
Michael Bucari-Tovo
cdb91ae2ca
Add dark mode to winforms
...
- Add dark theme icon variants
- Change all light theme icon fill colors to match Chardonnay
Also fixed #1460 by chaing the directory select control to DirectoryOrCustomSelectControl
2025-12-01 20:39:22 -07:00
Michael Bucari-Tovo
2a6cf38677
Fix book details dialog not saving
2025-11-25 13:33:40 -07:00
Michael Bucari-Tovo
022a6e979d
Add error handling for cookies
2025-11-24 12:01:10 -07:00
Mbucari
04827f81da
Tweak in-app web browser login
...
- Use private browsing mode
- Use the Android User-Agent
- Use initial signin cookies
2025-11-23 20:35:04 -07:00
Michael Bucari-Tovo
b0a40e12b7
Create some extension members
...
Trying out .NET 10s extension members with some Book extension properties.
2025-11-21 12:31:50 -07:00
Michael Bucari-Tovo
dfbc5ec9db
Use the new field keyword where appropriate.
2025-11-21 11:50:07 -07:00
MBucari
a55da5f187
Refactor DbContext access and disposal
...
- Remove instance queue. This is a database, after all, and is designed to be accessed and written to concurrently
- Reduce the number of calls to DbContexts.Create()
- Ensure that no LibationContext remains open across an await boundary. Multithread context access is the most likely culprit for past issues.
- Make all Update UserDefinedItem methods asynchronous.
2025-11-20 22:15:54 -07:00
MBucari
e8c911e603
Improve management and validation of Libation settings
...
- Move all settings file logic into new LibationFiles class
- Configuration.LibationFiles is a singleton instance of the LibationFiles class.
- A LibationFiles instance is bound to a single appsettings.json path. All updates to LibationFiles location are updated in that appsettings.json file
- Unify initial setup and settings validation process
- Add LibationSetup which handles all startup validation of settings files and prompts users for setup if needed
- Added a new LibationUiBase.Tests test project with tests for various
2025-11-17 10:49:23 -07:00
MBucari
a3d181b2ec
Fix Primary Screen NRE ( #1420 )
2025-11-11 03:21:20 -07:00
Mbucari
d16eeea56b
Improve detection of NativeWebDialog crash
2025-11-10 22:58:05 -07:00
Mbucari
5d2513ec33
Improve button display size uniformity.
2025-11-10 22:21:51 -07:00
Mbucari
e5043dcf40
Move button styling to App.xaml
2025-11-10 21:42:34 -07:00
Mbucari
c61bfb4134
Fix EditQuickFilters not displaying with no filters
2025-11-10 21:42:06 -07:00
MBucari
c2093157ca
Add dolby atmos logo for spatial audiobooks
2025-11-10 19:28:18 -07:00
MBucari
8e073800cd
Fix BookDetailsDialog crash when changing error status
2025-11-10 18:25:59 -07:00
Michael Bucari-Tovo
c878b9fec0
Detect webview crash and disable webview login
2025-11-10 13:14:23 -07:00
Michael Bucari-Tovo
23d391485d
Update AboutDialog and add recent contributors
2025-11-07 10:35:33 -07:00
Michael Bucari-Tovo
46be532740
Improve SearchSyntaxDialog
...
- Double-clicking a tag will paste the tage into the search bar
- SearchSyntaxDialog now modeless
2025-11-06 23:53:57 -07:00
Michael Bucari-Tovo
e2fd88d075
Improve ScanAccountsDialog usability
2025-11-06 23:24:17 -07:00
Michael Bucari-Tovo
bb0dea3fa9
Improve EditReplacementChars dialog usability
2025-11-06 22:49:09 -07:00
MBucari
5f093b06ec
Improve Chardonnay setup reliability.
2025-11-05 23:40:20 -07:00