Skip to content
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

[api-minor] Implement basic support for OptionalContent Usage dicts (issue 5764, bug 1826783) #17726

Merged
merged 2 commits into from
Mar 12, 2024

Commits on Mar 12, 2024

  1. [api-minor] Implement basic support for OptionalContent Usage dicts…

    … (issue 5764, bug 1826783)
    
    The following are some highlights of this patch:
     - In the Worker we only extract a *subset* of the potential contents of the `Usage` dictionary, to avoid having to implement/test a bunch of code that'd be completely unused in the viewer.
    
     - In order to still allow the user to *manually* override the default visible layers in the viewer, the viewable/printable state is purposely *not* enforced during initialization in the `OptionalContentConfig` constructor.
    
     - Printing will now always use the *default* visible layers, rather than using the same state as the viewer (as was the case previously).
       This ensures that the printing-output will correctly take the `Usage` dictionary into account, and in practice toggling of visible layers rarely seem to be necessary except in the viewer itself (if at all).[1]
    
    ---
    [1] In the unlikely case that it'd ever be deemed necessary to support fine-grained control of optional content visibility during printing, some new (additional) UI would likely be needed to support that case.
    Snuffleupagus committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    3c78ff5 View commit details
    Browse the repository at this point in the history
  2. Move the /SetOCGState handling into the OptionalContentConfig class…

    … (PR 15377 follow-up)
    
    This helps ensure that /SetOCGState actions always take the `Usage` dictionary into account as expected.
    Snuffleupagus committed Mar 12, 2024
    Configuration menu
    Copy the full SHA
    70b6ddc View commit details
    Browse the repository at this point in the history