[Wayland] Calculate and set opaque region for all wayland surfaces
Categories
(Core :: Widget: Gtk, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox73 | --- | fixed |
People
(Reporter: stransky, Assigned: stransky)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
We need to calculate correct opaque regions for all out wl_surfaces, which are:
- mShell - toplevel window with CSD decorations, opaque mask needs to be shifted by titlebar/CSD size, subtract transparent corners
- mContainer - child window with subtracted transparent corners
- mContainer wl_subsurface - child window with subtracted transparent corners
Assignee | ||
Comment 1•5 years ago
|
||
Calculate and set correct opaque regions for all wl_surfaces, which are:
- mShell - toplevel window with CSD decorations, opaque mask needs to be shifted by titlebar/CSD size and subtracted transparent corners.
- mContainer - child window with subtracted transparent corners.
- mContainer wl_subsurface - child window with subtracted transparent corners.
Comment 3•5 years ago
|
||
Backed out changeset ad7cc9457eb1 (bug 1605120) for failing at nsWindow.cpp on a CLOSED TREE.
Backout link: https://hg.mozilla.org/integration/autoland/rev/ae6e80c381fdaa0dd7631a9dd430922a501d51db
**Push with failures:**https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedJob=282432988&resultStatus=testfailed%2Cbusted%2Cexception&revision=cf6aaeed22e85e4df23ede5185023b3e7dba87f7
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=282432988&repo=autoland&lineNumber=3528
Log snippet:
[task 2019-12-23T21:02:34.535Z] 21:02:34 INFO - TEST-START | browser/base/content/test/tabPrompts/browser_closeTabSpecificPanels.js
[task 2019-12-23T21:02:34.535Z] 21:02:34 INFO - GECKO(2250) | Chrome file doesn't exist: /builds/worker/workspace/build/tests/mochitest/browser/browser/base/content/test/tabPrompts/head.js
[task 2019-12-23T21:02:34.623Z] 21:02:34 INFO - GECKO(2250) | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpQTXHni.mozrunner/runtests_leaks_tab_pid2408.log
[task 2019-12-23T21:02:34.659Z] 21:02:34 INFO - GECKO(2250) | [Child 2408, Main Thread] WARNING: No CID found when attempting to map contract ID: file /builds/worker/workspace/build/src/xpcom/components/nsComponentManager.cpp, line 721
[task 2019-12-23T21:02:34.775Z] 21:02:34 INFO - GECKO(2250) | ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpQTXHni.mozrunner/runtests_leaks_tab_pid2418.log
[task 2019-12-23T21:02:34.803Z] 21:02:34 INFO - GECKO(2250) | [Child 2418, Main Thread] WARNING: No CID found when attempting to map contract ID: file /builds/worker/workspace/build/src/xpcom/components/nsComponentManager.cpp, line 721
[task 2019-12-23T21:02:34.844Z] 21:02:34 INFO - GECKO(2250) | Couldn't convert chrome URL: chrome://branding/locale/brand.properties
[task 2019-12-23T21:02:34.974Z] 21:02:34 INFO - GECKO(2250) | Assertion failure: gdk_window_get_window_type(window) == GDK_WINDOW_TOPLEVEL, at /builds/worker/workspace/build/src/widget/gtk/nsWindow.cpp:4911
[task 2019-12-23T21:02:58.401Z] 21:02:58 INFO - GECKO(2250) | #01: nsLayoutUtils::PaintFrame(gfxContext*, nsIFrame*, nsRegion const&, unsigned int, nsDisplayListBuilderMode, nsLayoutUtils::PaintFrameFlags) [gfx/src/nsRegion.h:478]
[task 2019-12-23T21:02:58.401Z] 21:02:58 INFO -
Assignee | ||
Comment 4•5 years ago
|
||
Try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=c331813da52378773b84c54b8aacf1145a26fbab
Comment 6•5 years ago
|
||
bugherder |
Comment 8•5 years ago
|
||
This seems to be the cause of bug 1610202. In short, if I switch between Firefox windows while playing a video on YouTube, various stuff like hit-testing stops working properly. For example, the seek bar previews no longer show, seeking gets hard because I need to be on some Y coordinate and full screen behaves weirdly.
Running on Arch Linux / Gnome on Wayland.
Description
•