- Don't use GBM_BO_USE_TEXTURING|GBM_BO_USE_SCANOUT when dmabuf object is created without modificators.
- Sync dmabuf objects on map/unmap.
Differential Revision: https://phabricator.services.mozilla.com/D107531
Using `dlsym` for `gdk_wayland_display_get_type` is a cleaner solution
to bug 1696319, allowing running with a GTK that lacks the Wayland
backend.
Also adds a symmetric implementation for `gdk_x11_display_get_type`,
which should help running without X11.
Differential Revision: https://phabricator.services.mozilla.com/D107406
Otherwise with some fonts the menus look off. This doesn't change visual
appearance with the default font, afaict (but I don't have such a good eye so
please double-check).
Maybe we should do this only for the content select dropdown, but then again my
untrained eye doesn't see an issue for other menuitems either so...
Differential Revision: https://phabricator.services.mozilla.com/D107630
Depends on D107099
With the previous patch, we are waiting for toolbox open before creating contexts.
This makes some tests a bit racy if they are only waiting for toolbox open. They should also wait for the context to be ready.
Firing an event from the devtools_page seems to work fine for this but don't hesitate to suggest a better approach.
Differential Revision: https://phabricator.services.mozilla.com/D107100
Depends on D106426
Without this patch queue, `createDescriptorForTab` was not caching its descriptors, so each call to it would yield a new descriptor.
Since the webextension codebase really needs to use a different target from the one used by the DevTools toolbox, suddenly sharing the Toolbox's descriptor was an issue.
Addressing it with an explicit parameter to make this expectation from the webextension codebase a bit clearer for us.
Differential Revision: https://phabricator.services.mozilla.com/D107052
CLOSED TREE
Backed out changeset 68ceed0186b8 (bug 1686741)
Backed out changeset edb492e25698 (bug 1686741)
Backed out changeset 213c96fc82bd (bug 1686741)
Add MixBlend and ComponentTransfer to the picture composite modes that
unconditionally establish a raster root.
All the known bugs with the raster root code have been fixed, so let's
start incrementally enabling raster roots for more picture modes, and
fix any regressions that come from these before making raster roots
the default for all surfaces.
Differential Revision: https://phabricator.services.mozilla.com/D107405
This fixes a bug wherein we were calculating the distance to the corner apex incorrectly
which could result in it being clipped in the presence of transforms that cause the step
scale to not be axis-aligned.
Differential Revision: https://phabricator.services.mozilla.com/D107618
This code is important for transitioning between the skeleton UI code and the
full-featured browser window code. Additionally, the original logic of disabling
when not on the default theme no longer applies, because it was intended to
eliminate white flashes in dark mode. However, with the skeleton UI, those
white flashes no longer occur.
Differential Revision: https://phabricator.services.mozilla.com/D107293
We now use BrowsingContext to climb the tree and grab frame elements so
we skip over any OOP ancestors.
`Document::GetBrowsingContext()` may be `null` when the document was
just created with `document.implementation.createDocument`.
`Document::GetWindow()` will also return `null` in this case, so we
assume the document isn't a descendant of the adoptedNode, preserving
the old behaviour.
Differential Revision: https://phabricator.services.mozilla.com/D107584
If an interrupt occurs during regexp execution, we return up the stack to RegExpShared::execute to handle it, then try again. Normally it's safe (if slow) to GC and discard jitcode at this point, because we can fall back to interpreted bytecode (which is not discarded). However, if the input string is long enough, then we [jump straight to compilation without producing bytecode](https://searchfox.org/mozilla-central/rev/7067bbd8194f4346ec59d77c33cd88f06763e090/js/src/vm/RegExpObject.cpp#590-596). In that case, when we resume, we will have neither bytecode nor jitcode, and end up dereferencing a null pointer.
The fix is to recompile after handling the interrupt. In addition to fixing the crash, forcing compilation here should improve our chance of eventual success (compared to resuming in the regexp interpreter).
Differential Revision: https://phabricator.services.mozilla.com/D104479