feat(offline): keep pings active while focus is in iframes #1411
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.



Related to DHIS2-19285
Uses document visibility to decide whether to ping instead of window focus. Window focus can be insufficient if focus is in
iframes on the page, as seen in the Jira issue aboveA downside is that this may lead to multiple apps in
iframes in a page all issuing pings -- I think using document visibility vs window focus should be a configurable thing, so an app like the global shell can still update its online status with pings as long as the page is visible, while all other apps only update with pings when focused. The latter has been working so far, since apps generally need to know the status once they're interacted with. I don't think we want the dashboard app and all its plugins sending pings, for exampleThis PR is in a draft while that configuration is considered
Checklist
Screenshots
In action in the global shell:
offline-indicator.mov