Introduced an 'appendExtension' parameter to ExtractToDirectory, allowing guessed file extensions to be appended to extracted resource filenames. This enhances usability by making extracted files easier to identify by type.
Extended the Plugin.MoreMenu functionality to handle .pak (Chromium resource package) files by integrating PakExtractor for extraction. This allows users to extract .pak files in addition to existing .cfb and .eif formats.
Updated CanHandle to verify that .pak files are Chromium resource package version 5 before handling. This prevents unsupported v4 .pak files from being processed.
Replaces ArchiveFileListView with a custom ListView in PakInfoPanel.xaml, adds detailed column templates, and updates resource bindings. Refactors PakInfoPanel.xaml.cs to set DataContext directly and improves hierarchical file entry creation with modified dates. Updates FileExtToIconConverter to ensure only ImageSource results are returned.
Introduced PakInfoPanel for displaying PAK archive contents, including new XAML and code-behind files. Updated Plugin.cs to use PakInfoPanel when opening .pak files, enabling preview and basic information display for Chromium resource packages.
Introduced PakExtractor for extracting resources from Chromium .pak files, including guessing file extensions. Updated Plugin.cs to recognize and begin handling .pak files, preparing for future integration into the viewer panel.
Changed all Plugin classes and PluginManager to be sealed, preventing further inheritance. This improves code safety and clarifies the intended usage of these classes.
Replaces references to 'emoticon' or similar terms with 'sticker' in the MW_ExtractToDirectory_EIFOrderFaceDat translation key across multiple languages for consistency and clarity.
Introduced EifExtractor to support extracting QQ EIF emoji archives, reordering images based on Face.dat metadata. Updated CompoundFileExtractor with in-memory extraction, enhanced the plugin menu and extraction workflow to prompt for Face.dat ordering, and added translations for the new prompt in Translations.config.
Introduces CompoundInfoPanel for viewing Compound File Binary archives (.cfb, .eif) in the ArchiveViewer plugin. Updates Plugin.cs to detect and use the new panel for these file types, enabling preview and information display for CFB-based archives.
Renamed and reorganized ArchiveViewer files into a new ArchiveFile subfolder and namespace for better code structure. Updated all relevant namespaces and references accordingly. Minor code cleanups were also applied, such as using collection initializers and default keyword.
Added descriptive comments to the list of supported archive file extensions in Plugin.cs for better clarity. Also included commented-out entries for compound file binary formats.
All converter classes are now sealed to prevent inheritance, improving clarity and potential performance. Null checks in Percent100 converters are simplified using the null-coalescing assignment operator.
This commit updates various NuGet package references to newer versions across multiple QuickLook plugin and main project .csproj files. These updates include dependencies such as WixToolset.Dtf.WindowsInstaller, UTF.Unknown, FreeTypeSharp, Microsoft.Web.WebView2, Magick.NET-Q8-AnyCPU, Google.Protobuf, MsgReader, HelixToolkit, bblanchon.PDFiumV8.Win32, Melanchall.DryWetMidi, WPF-UI.Violeta, and Lib.Harmony, ensuring the projects use the latest compatible releases.
Comic book archive is not a distinct file format. It is a filename extension naming convention.
The filename extension indicates the archive type used:
.cb7 → 7z
.cbr → RAR
.cbt → TAR
.cbz → ZIP