fix: take foreground visibility into account for win.isVisible() on macOS #17463
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
Resolves #16776.
Right now, our documentation says that for
isVisible
to returntrue
for a given BrowserWindow, it must be "visible to the user." As @nickfujita pointed out, this should take into account whether or not a window is minimized, as well as whether or not a window is in the foreground (i.e. not obscured by other apps).This PR therefore updates our
win.isVisible()
implementation on macOS to take occlusion and minimization into explicit account.cc @MarshallOfSound
Checklist
npm test
passesRelease Notes
Notes: Fixed an issue whereby foreground visibility of a window was not correctly taken into account for
win.isVisible()
on macOS