Features
-
Add some more spanish translations.
-
Absolute vs Relative search hit jump
-
Thumbnail panel for quick navigation and visual overview of the document pages. The thumbnail panel can be toggled with
thethumbnail_panelcommand and will show a scrollable list of page thumbnails on the side of the window.
Clicking on a thumbnail will navigate to that page in the main view. -
Default keybindings added for the following:
split_horizontal=>Ctrl+W,ssplit_vertical=>Ctrl+W,vsplit_focus_left=>Ctrl+W,hsplit_focus_right=>Ctrl+W,lsplit_focus_up=>Ctrl+W,ksplit_focus_down=>Ctrl+W,jsplit_close=>Ctrl+W,c
-
Add
--check-configcommand line argument to check the validity of the config file and print any errors or warnings without launching the application.
Config Options
-
flat_menuoption for[outline],[highlight_search]picker. Iftrue, the picker will
show all entries in a flat list without indentation, otherwise it will show entries in a
clickable node structure -
Ability to set
widthandheightof pickers (outline, highlight search, recent files etc.)- These take either absolute pixel values (integers > 1) or fractional values in the range (0.0, 1.0] to
size the picker relative to the window dimensions. These options apply globally to all picker
types (outline, highlight, search, etc.); each picker type can override them individually in its own configuration section.
For example:
[picker] width = 0.3 # 30% of the window width height = 400 # 400 pixels height [outline] width = 0.25 # 25% of the window width for the outline picker
Here, the default width for all pickers is set to 30% of the window width, but the outline picker specifically
overrides this to be 25% of the window width. The height for all pickers is set to 400 pixels. - These take either absolute pixel values (integers > 1) or fractional values in the range (0.0, 1.0] to
-
Move synctex settings to their own section
[synctex]for better organization and maintainability of the config fileenabled(bool): Enable/Disable synctex supporteditor_command(string): Command to open the editor for synctex jump (e.g.code --goto {file}:{line}:{column})
-
[thumbnail_panel]section for thumbnail panel related settingsshow_page_number(bool): Whether to show page numbers on the thumbnailspanel_width(float): Width of the thumbnail panel as a ratio of the main window width (e.g. 0.2 for 20% of the main window width)
-
Ability to define multiple keybindings for same action using TOML array
Example:
[picker.keys]
up = [ "Ctrl+k", "Up" ]
down = [ "Ctrl+j", "Down" ]
[keybindings]
command_palette = [ ":", "Ctrl+P" ]Note
Notice that multiple keybindings use [] square brackets and not {} curly braces,
which have a different meaning in TOML
Breaking Changes
- Removed
synctex_editor_commandfrom[behavior]section and moved it to[synctex]section aseditor_command dim_inactiveis now disabled by default (which was enabled previously out of the box)confirm_on_quitis now false by default (I feel it was annoying).- Renamed config options:
window_title->title_formatin[window]section
Bug Fixes
- Delete Annotation Command now remembers the annotation color (if set) or defaults to the current color.
- Fix
setZoomandsetZoomAnchoredrecursive calls which caused stack overflow and crashing when zooming in/out rapidly. - Fix memory leak due to not clearing up the
trackercustom image device in MuPDF after rendering,
which caused memory usage to grow indefinitely when navigating through pages. - Fix memory leak due to wrong usage of
QFutureSynchronizerwhich caused huge memory usage and
slowdown when scrolling through pages. - Don't count thumbnail view in a container as a regular split when showing the total count of the splits in a container
- Fix file properties not working
- Fix crash when trying to save file after adding annotation.
Core Changes
- Replaced Qt's
QColorDialogwith a custom color picker dialog for annotation color selection. - Moved
Translationsdirectory to the root of the project (preivously it was insrcdirectory). - Moved
.hppheader files intoincludedirectory (previously they were insrcdirectory) for better organization
of the codebase and to follow common C++ project structure conventions. - Renamed
CommandPalette.shortcutstoCommandPalette.show_shortcutsfor better clarity of what the option does.