This repository has been archived by the owner on May 1, 2024. It is now read-only.
[iOS] Fixed RequestedThemeChanged raised twice issue #12895
Merged
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.
Description of Change
The issue is in fact an iOS feature. Is doing multiple snapshots of the app's UI that will be presented in the App Switcher. And since the user could change to Dark Mode while your app is in the background, iOS does snapshots in both interface styles to always show the correct one.
Happens something like: The system takes a screenshot of your Light UI, switches to Dark (first trigger), takes a screenshot (off-screen), and switches back to Light (second trigger). And we have raised twice
RequestedThemeChanged
.This PR include changes to only raise
RequestedThemeChanged
if the App is not in Background. Why?. To avoid raise the event while app snapshots are being taken when going to background. In that way, the App raise the event just 1 time when pass from background to foreground.Issues Resolved
API Changes
None
Platforms Affected
Behavioral/Visual Changes
None
Before/After Screenshots
Not applicable
Testing Procedure
Launch Core Gallery and navigate to the issue 12512. Then, follow the instructions.
PR Checklist