-
-
Notifications
You must be signed in to change notification settings - Fork 827
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
core: Add compatibility flags #18974
Open
kjarosh
wants to merge
8
commits into
ruffle-rs:master
Choose a base branch
from
kjarosh:compatibility-flags
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Compatibility flags are used to configure behavior related to compatibility with Flash Player. The first compatibility flag added is tab_skip.
They are available under the --flags option.
This option configures compatibility flags applied during the test.
This flag configures the behavior of skipping some objects when tabbing. Flash Player skips those objects by default, however it's possible that some content is not aware of this (e.g. when objects are placed on a grid), and it results in reduced accessibility, as users cannot tab some objects.
This test verifies the behavior of tab_skip flag.
kjarosh
added
A-core
Area: Core player, where no other category fits
T-feature
Type: New Feature (that Flash doesn't have)
labels
Dec 15, 2024
As a matter of UX, we should definitely give the right column a more descriptive name like "FP default" so people understand what it means (and I guess a tooltip with further explanation could be good too) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-core
Area: Core player, where no other category fits
T-feature
Type: New Feature (that Flash doesn't have)
waiting-on-review
Waiting on review from a Ruffle team member
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Compatibility flags help configure Ruffle by enabling and disabling specific behaviors.
They are meant to be used for instance in the following situations.
They fix bugs in Flash Player that make some content misbehave. Note that in general we don't fix bugs in Flash Player -- we are bug compatible. However, there are examples where a bug is so sneaky, some content could have been created with an assumption that the bug doesn't exist and the bug affects it.
They genuinely improve the experience of using Ruffle at the cost of lowering compatibility with Flash Player.
They improve the "perceived" compatibility at the cost of the "real" compatibility. For instance, something does not work in Flash Player, and we make it work.
The main goal of this PR is to prepare for adding new flags in the future. This way we'll have a simple interface to configure such behaviors in the future. The most notable example would be #18856 where we could add a compatibility flag which enables font fall back again for content that is not yet fully working in Ruffle due to various bugs.