Commit Graph

52797 Commits

Author SHA1 Message Date
Kovid Goyal febe7080e6 ... 2026-01-19 11:13:37 +05:30
Kovid Goyal 3ef90d6a36 DRYer 2026-01-19 11:08:36 +05:30
Kovid Goyal 397ddf23fd Cleanup bookshelf preferences layout 2026-01-19 10:49:11 +05:30
Kovid Goyal 935cf30fde Cleanup drawing of bookshelf background
Dont use a stylesheet. Instead render custom color/texture with shadows.
Also fix background pixmap caching being broken
2026-01-19 10:17:04 +05:30
Kovid Goyal 8d6b2a794c Move colors settings into their own tab 2026-01-19 09:54:09 +05:30
Kovid Goyal af5c89f0a0 Merge branch 'custom-background' of https://github.com/un-pogaz/calibre 2026-01-19 08:19:11 +05:30
Kovid Goyal c279b9268c Fix vertical alignment of categories in Preferences->Plugins 2026-01-19 08:06:28 +05:30
Kovid Goyal d5f3bd1de2 Fix rendering of checkboxes in light mode also broken in Qt 6.10 fusion theme
Apply same workaround as was used for dark mode to light mode as well
2026-01-19 07:56:45 +05:30
Kovid Goyal 5dbdc70fd4 Fix restore defaults in main interface tab with a changed font causing an error 2026-01-19 07:41:50 +05:30
Kovid Goyal 9d99cca285 Merge branch 'improve-disabling-plugins' of https://github.com/un-pogaz/calibre 2026-01-19 07:36:54 +05:30
Kovid Goyal 7bc625fd33 Fix right click on cover browser layout button not opening correct preferences panel 2026-01-19 07:31:53 +05:30
un-pogaz 14d50c49bd use "installation_type" to safe guard disabling internal plugins 2026-01-18 23:15:33 +01:00
Kovid Goyal 030f5d82f8 Fix a harmless error printed out during shutdown 2026-01-18 21:16:42 +05:30
un-pogaz 501d1b93ff Bookshelf: allow custom background 2026-01-18 16:05:26 +01:00
un-pogaz 7b76aaeb6e Bookshelf: allow override colors theme 2026-01-18 16:05:26 +01:00
Kovid Goyal 37f345c117 ... 2026-01-18 19:52:04 +05:30
Kovid Goyal f752969528 Bump beta version 2026-01-18 19:18:02 +05:30
Kovid Goyal 762318ead1 Allow hiding the group dividers 2026-01-18 19:17:32 +05:30
Kovid Goyal 22870403a8 string changes 2026-01-18 19:13:45 +05:30
Kovid Goyal 628fecbeeb Merge branch 'options-groups-divider' of https://github.com/un-pogaz/calibre 2026-01-18 19:08:02 +05:30
Kovid Goyal 093ea1abe1 Merge branch 'fix-colors-palette-changed' of https://github.com/un-pogaz/calibre 2026-01-18 18:57:54 +05:30
Kovid Goyal 156493a13c Better hash combining 2026-01-18 18:56:27 +05:30
Kovid Goyal dc04a002c9 Avoid copying strings when looking up translations 2026-01-18 18:50:30 +05:30
un-pogaz 849823e810 Bookshelf: fix text color not updated when colors palette is changed 2026-01-18 13:49:44 +01:00
un-pogaz c1eb128fba Bookshelf: add three options for groups divider
1) Groups divider style
2) Divider text aligned to the right
3) Start shelves with a divider
2026-01-18 13:09:43 +01:00
un-pogaz d6400eb41d ... 2026-01-18 13:09:43 +01:00
Kovid Goyal 9f0bda5522 Release GIL while parsing .mo file 2026-01-18 16:58:14 +05:30
Kovid Goyal 9146384bf1 Switch to the GIL free translator
Allows Qt code to use the translations without acquiring the GIL.
Fixes deadlocks when python code holding the GIL calls Qt code which
tries to use a translation which calls the python translator which tries
to acquire the GIL, causing the deadlock.

QTranslator::translate() is supposed to be thread safe which the old
python based translator was not. The new one is.

Fixes #2138516 [Private bug](https://bugs.launchpad.net/calibre/+bug/2138516)
2026-01-18 15:22:17 +05:30
Kovid Goyal cb14db0ce8 API function to install the new Trnaslator as the Qt translator 2026-01-18 14:58:55 +05:30
Kovid Goyal d140a30fbd A hook point for Qt translations 2026-01-18 14:37:13 +05:30
Kovid Goyal 955175b68c ... 2026-01-18 14:11:35 +05:30
Kovid Goyal 11b0ef7054 Get gettext() and ngettext() working 2026-01-18 14:10:01 +05:30
Kovid Goyal 0221d5cedb MSVC requires c++ 20 for designated initializers 2026-01-18 11:41:15 +05:30
Kovid Goyal 8f7b8238d3 ... 2026-01-18 11:23:13 +05:30
Kovid Goyal 95af9b853b Add info() and charset() methods to Translator 2026-01-18 11:17:10 +05:30
Kovid Goyal 8cfa3c0b3f Also release GIL while load QImage in utils.img 2026-01-18 10:16:52 +05:30
Kovid Goyal d55ffcf46a Start work on replacing python gettext with native code version
Needed to use translations for both python and Qt without invoking the
GIL when used from Qt.
2026-01-18 10:13:33 +05:30
Kovid Goyal 4eb9d9eca2 Explicitly release GIL while loading QImage in thumbnail renderer thread 2026-01-17 11:16:44 +05:30
Kovid Goyal 22916f8f22 Release the GIL while calculating the dominant color 2026-01-17 10:38:00 +05:30
Kovid Goyal 1e4c541357 Name the IPC Server thread 2026-01-17 09:57:29 +05:30
Kovid Goyal 5364d6fcc9 Name the metadata backup thread 2026-01-17 09:39:49 +05:30
Kovid Goyal 370fb3a0cd Be more vigorous about deleting Qt objects before exit 2026-01-17 09:19:31 +05:30
Kovid Goyal 443063592b Delete QApplication explicitly
Prevents some object lifetime crashes during shutdown
2026-01-17 09:07:38 +05:30
Kovid Goyal ed07c9fd04 Make group_name usage explicit 2026-01-17 08:29:55 +05:30
Kovid Goyal 8298d8e68a Merge branch 'fix-case-end-divider' of https://github.com/un-pogaz/calibre 2026-01-17 08:25:31 +05:30
un-pogaz 37faeb0737 Bookshelf: avoid to end a case with a divider
and move it at the start of the next
2026-01-16 19:09:53 +01:00
Kovid Goyal 9384b8d75c Use recursive locks for the cover caches
Performance hit of a few nanoseconds per lock operation, however
eliminates one source of deadlocks.
2026-01-16 20:07:07 +05:30
Kovid Goyal 65823b271f ... 2026-01-16 20:05:03 +05:30
Kovid Goyal 6db354cd30 Merge branch 'emblem-init_template' of https://github.com/un-pogaz/calibre 2026-01-16 19:30:04 +05:30
Kovid Goyal e845163145 Preferences->Look & feel allow right clicking on the sections in the list to restore defaults for just that section 2026-01-16 19:28:52 +05:30