What changed in Foliate from 2 to 3
7 releases numbered after 2.6.4 up to and including 3.3.0, stable releases only. 2.6.4 and 3.3.0 are the newest stable releases of 2 and 3 we track; this page follows them as new ones ship.
- 1 removes or deprecates something
51 changes across 7 releases
- Added support for mouse forward/backward buttons
- Added Space and Shift+Space shortcuts for turning pages
- Added option to open books with external application from the library view
- Support for OPDS catalogs with OPDS 2.0 support
- Option to override publisher font
- Option to reduce animation
- Support for JPEG XL in CBZ
- Support for obfuscated fonts
- Support for user stylesheet
- Experimental support for PDF files
- Updated for GNOME 48
- Improved text wrapping in headings
- Improved default link style
- Revamped translation tool to remember the last target language and allow filtering languages
- Improved PDF rendering for faster performance and eliminated blurriness
- Improved rendering of fixed layout EPUBs
- Improved focus handling to prevent loss when navigating to new sections and fix tabbing layout breaks
- Improved text selection across pages to allow selecting to the previous page
- Changed column display to show more than one column only when viewport is in landscape or in portrait for vertical writing
- Changed shortcut for table of contents from Ctrl+Alt+T to Ctrl+T
- Updated translations
- Completely rewritten with GTK 4 and Adwaita, with refreshed interface and improved performance
- Now uses own e-book parser and renderer instead of Epub.js and KindleUnpack
- Library and e-book viewer unified in a single window
- Library now loads more books as you scroll without requiring clicks to load more items
- Table of contents, annotations, and bookmarks moved to sidebar that can be docked or folded
- Add Bookmark button moved to header bar with ribbon indicator when bookmarked
- Files no longer loaded entirely into memory, greatly reducing startup time and memory usage
- Mobipocket and Kindle files processed entirely in memory instead of extracted to disk
- Mobipocket files divided into sections at mbp:pagebreak tags for improved performance
- Invalid XHTML pages processed as HTML
- Font override with CSS removed in favor of configurable default serif, sans-serif, and monospace fonts with minimum font size setting
- Fixed formatting of copied text
- Fixed extra border in CBZ files
- Fixed handling of bare search template URL in OPDS feeds
- End of chapter cut off when chapter starts with page break
- Incorrect text wrapping in tables
- Performance issue with OPDS catalogs
- Getting file from Tracker in Flatpak
- Parsing of non-year-only first-century and BCE dates
- Fixed desktop entry
- Fixed AppData
- Fixed broken layout for some books
- Fixed chromatic aberration in invert mode
- Fixed sidebar background to support gradient backgrounds
- FB2 infinite recursion bug and comments now correctly ignored
- Support for OPDS catalogs
- Support for offline dictionaries
- Turn page on tap feature
- Skeuomorphic shadows option
- Experimental traditional titlebar option
One release in the range carries no categorized changes yet: 3.2.1. Their original notes, where the vendor published any, are below.
Original release notes, newest first
The list above is our reading of these notes; the originals from John Factotum are here, one fold per release.
3.3.0
- Updated for GNOME 48
- Added support for mouse forward/backward buttons (#1474)
- Improved text wrapping in headings
- Improved default link style
3.2.1
- Fixed tables not displayed in FB2 books (#1445)
- Updated translations
3.2.0
- Revamped translation tool, which now remembers the last target language (#1159), and allows filtering languages
- Improved PDF support: the rendering is faster and no longer blurry
- Improved rendering of fixed layout EPUBs (see comments in #1318)
- Improved focus handling: the focus is no longer lost when navigating to new sections, and tabbing no longer breaks layout
- Improved text selection across pages, allowing selecting to the previous page
- It now only shows more than one column when the viewport is in landscape (or, for vertical writing, in portrait)
- Changed shortcut for the table of contents from Ctrl+Alt+T to Ctrl+T (#1316)
- Added Space/Shift+Space shortcuts for turning pages (#1336)
- Added option to open books with external application from the library view (#1372)
- Fixed formatting of copied text (#1191)
- Fixed extra border in CBZ files (#1421)
- Fixed handling of bare search template URL in OPDS feeds (#1401)
3.1.1
- Fixed end of chapter cut off when chapter starts with page break (#1179)
- Fixed incorrect text wrapping in tables (#1278)
- Fixed a performance issue with OPDS catalogs (#1287)
3.1.0
- Added support for OPDS catalogs, now with support for OPDS 2.0
- Added option to override publisher font (#1113)
- Added option to reduce animation (#1161)
- Added support for JPEG XL in CBZ (#1193)
- Fixed getting file from Tracker in Flatpak
- Fixed parsing of non-year-only first-century and BCE dates
3.0.1
image ▲ Foliate with a custom theme, using a gradient as the background. In the previous version, the sidebar can only be themed if the background is a solid color. This is now fixed in v3.0.1.
- Updated translations
- Fixed desktop entry (#1109) and AppData (#1114)
- Fixed broken layout for some books (#1122)
- Fixed chromatic abberation in invert mode (#1137)
- Fixed sidebar background (pictured)
3.0.0
Foliate has been completely rewritten from scratch with the latest platform libraries, GTK 4 and Adwaita, with refreshed interface and improved performance. It now has its own e-book parser and renderer, and no longer uses Epub.js and KindleUnpack.
Some features could not be ported in time. Most notably, this version has no support for OPDS catalogs and offline dictionaries.
UI changes:
- The library and the e-book viewer are unified in a single window (#509)
- The library now loads more books as you scroll, no longer requiring clicks to load more items (#583).
- Table of contents, annotations, bookmarks are now in a sidebar, which is docked to the side by default, but can also be set to be always folded (overlaid on top of content when revealed)
- The "Add Bookmark" button is moved to the header bar, and the page will show a ribbon when bookmarked (#863)
- Removed "turn page on tap"; use swiping instead
- Removed option for skeuomorphic shadows
- Removed experimental traditional titlebar option
Book rendering:
- It no longer loads the entire file into memory, greatly reducing startup time and memory usage, and it no longer loads every item in the TOC, further improving startup time (#526, #813)
- Reloading now properly reloads the file, rather than merely re-rendering (#544)
- Mobipocket and Kindle files are no longer extracted on disk; they are processed entirely in memory
- Mobipocket files are now divided into sections at
<mbp:pagebreak>tags, which greatly improves performance as it no longer requires rendering the whole book at once (#764). Unfortunately this also means existing annotations for this format will not be displayed correctly. - When a page is not valid XHTML, it will be processed as HTML (#699)
- It no longer tries to override fonts with CSS. Instead, you can now configure the default serif, sans-serif, and monospace fonts (#222), as well as setting the minimum font size (#906).
- Added support for obfuscated fonts (#721)
- Added support for user stylesheet (#947)
- FB2: fixed infinite recursion bug (#935) and comments are now correctly ignored (#972)
- Added experimental support for PDF files (#139)
- Removed support for CBR, CBT, and CB7 files (CBZ is still supported)
Layout:
- Paginated mode now has animation and 1:1 touchscreen and touchpad swipe gestures (#188, #862)
- Paginated mode supports more than two columns. The number of columns is controlled by a maximum width setting. As the window gets wider, it will add more columns to prevent lines from getting too long.
- Margins are now relative to the viewport size
- It is now possible to configure both max width and max height.
- The page reflows faster when resizing, and reliably stays at the same location without flashing (#459)
- Switching between paginated and scrolled layouts is faster and can be done with a shortcut (Ctrl+M)
- Removed continuous scrolling mode, as the new renderer does not support it (yet)
Locations:
- Locations are now calculated from raw byte size instead of character count. The progress slider and reading time estimates are available instantly when you first open a book, and locations are no longer cached. Old .json files in the cache directory can be deleted.
- The progress slider now turns pages as you drag, and can be used with keyboard and mouse wheel (#386)
- Page-list and landmarks are now supported and can be accessed from the location popover
Find in book:
- Results are now shown in the sidebar (#674)
- Added option to ignore diacritics (#778) and to match whole words only
- Added shortcuts for going to next and previous matches (Ctrl+G and Ctrl+Shift+G) (#693)
Image viewer:
- Images are opened with double click by default; removed options for single, right, and middle click
- Images are now copied and saved in their original format (previously, they were always converted to PNG)
Narration:
- Text-to-speech now uses Speech Dispatcher, and supports pausing, skipping, word highlighting, SSML, and speed and pitch controls (#829)
- Added support for EPUB Media Overlays
Copying:
- Selected text can now be copied with HTML formatting (#954)
- Added "Copy with Citation", which adds the author and title info to the copied text, (#445)
- Added "Copy Identifier", which copies the CFI of the text fragment (#998)
Security:
- The WebView no longer has unlimited file access (#391)
- Flatpak: removed sandbox escape permission.
Other changes:
- Added underline option for annotations (#378)
- Annotations are now saved with timestamps (#1048)
- Added the ability to print chapters and selections (#430)
- WebKit's inspector is always enabled, and can be accessed from the menu, or by pressing F12
Technical changes:
- The executable has been renamed to
foliate. Previously it wascom.github.johnfactotum.Foliate. - Platform libraries
- Minimum version for GJS is now 1.76
- It requires GTK >= 4.12 and WebKitGTK 6.0
- It requires
libadwaita(previously, it optionally depended onlibhandy) - It no longer depends on
iso-code, as locales are now handled with theIntlAPI in GJS gspellis no longer an optional dependency, as it doesn't work with GTK 4- It no longer depends on Python (previously, it optionally required it for running KindleUnpack)
- JavaScript libraries
- JavaScript libraries are now built from NPM (#460)
- It bundles zip.js instead of JSZip
- It bundles fflate and uses it to decompress fonts for Kindle files
- It no longer bundles libarchive.js
- It no longer bundles crypto-js. Checksum is now generated by GLib.
Note Don't download the source .zip or .tar.gz from GitHub. Those don't include submodules and don't work. To download the source code, use
git clone --recurse-submodules https://github.com/johnfactotum/foliate.git.