SDA-3707 - Fix getting window handle for maximized windows #1427
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
Cherry-picked from the 17.0.x branch:
On Windows, the API to retrieve the native window handle selects the child window that Chrome uses to host the actual web content. If the window is maximized this unfortunately fails, as the parent window top coordinates may not be at (0,0) like the child is, but can be at something like (-8,-8) instead (depends on border decorations). This causes the RTC Citrix media optimization to position video overlays incorrectly in maximized windows.
To fix this we instead only look at the child windows. The one that is the least tall is the child window, so we can return any of the other ones. (Normally there is only one other candidate, but if developer tools are open there is a second one. They are however positioned identically so there's no need to choose a particular child in that case).
Related PRs
#1420