Skip to content

Feature: auto detect zip encoding; SharpZipLib no longer blocks UI thread; added more encodings to encoding list. #17045

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

oxygen-dioxide
Copy link
Contributor

@oxygen-dioxide oxygen-dioxide commented Apr 15, 2025

After this PR, when decompressing zip file and the encoding of zip file is undetermined, Files will detect the encoding autometically.

image

Before this PR, SharpZipLib decompressing (decompressing with specified encoding) blocks the UI. After this PR, it no longers blocks the UI and works like SevenZipSharp.

All possible Windows system encodings are added into the encoding list.

Resolved / Related Issues

To prevent extra work, all changes to the Files codebase must link to an approved issue marked as Ready to build. Please insert the issue number following the hashtag with the issue number that this Pull Request resolves.

Steps used to test these changes

Stability is a top priority for Files and all changes are required to go through testing before being merged into the repo. Please include a list of steps that you used to test this PR.

  1. Download this zip file:
    japanese-example.zip
  2. In Files, right click this file, Extract -> Extract Files
  3. Select "Japanese (Shift-JIS)" encoding
    image

@oxygen-dioxide oxygen-dioxide changed the title Feature: auto detect zip encoding; SharpZipLib no longer blocks UI thread Feature: auto detect zip encoding; SharpZipLib no longer blocks UI thread; added more encodings to encoding list. Apr 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants