1.3.0
There's a bug in the license compliance webpack plugin (not this codebase) which we use in the build process. It only breaks the windows build, but the code still works on windows for anyone that can generate a private build, but we can't cut a build here without violating licenses of dependent libraries.
New Features
- Added touch panning support in stage mode
- Added touch drag handles of scroll handles
- Added a preference for controling thumbnail labels
- Added a new sorting strategy that first considers name length then text
- This correctly sorts:
1 2 10 11 200
- This correctly sorts:
Intuitiveness
- Clicking a file's name label will now toggle selection (to improve touch experience)
- Added an inline help explaining the variables available for mapped thumbnail paths
- Native scroll bars are now themed, extensions should blend better with the main application
- Simplified the preference scope toggle with more distinct icons
- Zoom with mouse wheel in stage mode changes
- Now centered on the cursor
- Range has been changed from 10%~500% to 30%~800%
- Progression now increments based on percentage of current zoom to reduce jankiness at both extremes
Performance
- Fixed a cache invalidation issue that caused tag search index rebuild per keystroke
Bugs Fixes
- Fixed a focus management issue that prevented keyboard shortcuts from working after closing a menu
- Fixed a positioning issue that caused tags list to overflow the screen when batch tagging on & running on small window sizes
- Fixed a rare bug in executable invocation that would drop stdout data gathered from invoking an external program
- Fixed a zombie process bug triggered by adding tags to a file with no tags, removing all tags, then exiting, all within 5 seconds
API Changes
- Removed a bit of inconsistency for
load/patchObject
API which now accepts a full path like the other IO APIs - Types for extension authoring has been collected and exported as the package's default types
- Folks without private builds of NPM with dep mask support can now add fs-viewer as a dependency and use the types
- Only problem is that when upgrading viewer as a dependency one might need to delete and regenerate packages-lock.json