sylikc/jpegview

Summary: Roadmap + Feature Request + Known Issues

Opened this issue ยท 0 comments

sylikc commented

This summary is meant to give the JPEGView community an idea of what is upcoming. As with most open-sourced projects, we're all volunteering our time, so releases don't come on a fixed schedule.

This pinned issue will be updated to give the community/users/developers an idea what I'm working on, what I need help on, known issues, and feature requests which I am considering.

This conversation will be locked only to reflect the project status. Submit a new issue or comment on existing ones if needed.

Help Wanted

  • Format support - If you can help support these format features, please consider contributing! ๐Ÿ˜€
    • โ— Need help supporting ICO files. While you can use WIC to support ICO, it only shows one frame. For official support, JPEGView should be able to show all frames of an ICO file (like a multi-frame TIFF).
    • Backlog need help: Write in JXL
    • Backlog need help: Write in AVIF

In Progress

  • โญ Localization: I'm asking the community for help Localizing to new or existing languages! Now that the strings.txt reference is up-to-date, I'm putting a call out on translations. If you or someone you know would be willing to contribute a translation, please open a PR or attach a file with an issue!
    • I've reached out to a few translators and new languages are coming to JPEGView. Some fixes will come as well
  • ๐Ÿ“– Documentation: Features in software and apps is only as good as the documentation to explain those. The existing readme.html is out-of-date and I am coming up with a way to update it, but also support new localizations.
    • The current readme.html is also translated to readme_ru.html and readme_uk.html but the way it's done in the past, is not sustainable for new translations and updates
      • First, work will be done to "modularize" the readme.html to use the same method that makes translating KeyMap-README.html easier. Strings will be separated from the location, and all grouped into one place
      • Then I'll update the documentation with some images, maybe some videos to link.
      • I've chosen to stay with HTML, instead of the alternatives like CHM (Microsoft doesn't have any tools released after 2009!), or PDF (this format is nice, but wouldn't allow sharing on the web as well)
  • ๐ŸŽˆ Website: https://jpegview.net is live on GitHub pages, but current redirects to the GitHub releases link. I need to think about designs and learn about generating static webpages or deploying to GitHub pages. If you can help, please reach out to me.
    • Not all users of JPEGView are power users, and it'd be great to have a landing page where they see something more user-friendly than a GitHub repo
    • It can also host localized help pages, along with other localized texts. I want to design the site with localization in mind...
  • ๐Ÿ“ƒ INI config files: This is currently also planned and I'm actively thinking about it. The current problem with the INI files extends beyond just the fact that there's a user, a global, and a template. Right now it's hard to translate the global, and the template functions slightly differently.
    • The first task will be to "generate" the INI file by scripts, and have a way for translators to translate text and not have to worry about where I moved the sections to.
    • The next task will be to figure out an elegant way to support the JPEGView_<language>.ini without being confused about "which INI is being read?"
    • This will ultimately allow translators to translate the INI options and help (documentation)

Next up

  • ๐Ÿ“‘ Popup Menu: The popup menu has gotten a little bit long. In a future release, will re-group into better submenus, so all options aren't just on the main menu.
  • ๐Ÿ Transparency Checkerboard pattern for background in transparent sections. I have an idea how to do this, but I think the documentation and other things are higher priority at this moment.

Known Issues

  • INI Inconsistencies with template files and read/write user INIs
  • Internal JPEGView dimensions limitation is 65535 on any dimension. Images with bigger dimensions won't open
    • Considering a new INI option: There is currently a 500 Megapixel limitation for the 64-bit version, it's been shown that bigger MP files load file, just slowly... although it's not well tested
  • Known Behavior: Moving to a previous image which is multi-framed always starts at the first index. Semantically, it'd be better to start at the last frame instead of the first frame, but it would require loading the first frame (to read the image metadata) then loading the last frame, causing two loads. - not on roadmap
  • Not planned: #183 only ICC profiles are implemented.

Backlog: Feature Requests

  • Skip files with Hidden attr
    • Being designed: exactly how it's implemented is being considered. Current JPEGView behavior for extensions that are not enabled in the INI, for example, if you drag and drop one, the extension will be recognized for the rest of the session... should that same behavior happen with hidden? should it not? ... etc
    • #114
  • Sort the same way as Windows Explorer "Sort By" preference
    • Being investigated: yes other viewers do it but I looked into their code and it's hacky with caveats
    • #18
  • Investigating: Dark theme
    • Win32 APIs exist but it's still relatively new, and some features are undocumented
  • Jump to image number (likely bind to CTRL+G as GoTo when done)
  • Save last used crop ratio #151 #144
  • Investigating: Show shell context menu (some option to right-click to show the explorer context menu for a certain file)

Dev Snapshots

For those of you who scrolled this far down...

โ“ Did you know that JPEGView puts out developmental snapshots? Check out the wiki page for more info. This is for those of you who want to test bleeding-edge features before the next release comes out.