Improve xdg_popup support
* use TYPE_POPUP for xdg_popup. The differences from TYPE_WINDOW are:
- no frame
- ash will not control its bounds
* make popups transient children: this fixes following scenarios
- z order is correctly updated when parent's z order changes
- they're grouped in overview.
* implement grab
- capture even when the grab is requested on the surface
- transfer capture to child if the child popup requested
grab.
- close the surface when capture(grab) is lost.
- but transfer the grab to the parent if the parent had grab.
BUG=788782
TEST=covered by unit tests. manually tested with gtk3-demo.
Change-Id: I73f5bc7e555f2c28f78dc25a55f77f0a70fd9b78
Reviewed-on: https://chromium-review.googlesource.com/1102354
Commit-Queue: Mitsuru Oshima <oshima@chromium.org>
Reviewed-by:
David Reveman <reveman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568364}
Showing
Please register or sign in to comment