Граф коммитов

762349 Коммитов

Автор SHA1 Сообщение Дата
Jed Davis dc3ae62544 Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert
This follows what we're already doing for EGL: a refcounted object
which can own the X connection, where we hold a weak reference from
the library object so that multiple contexts opportunistically share
the display but we close the connection when the last context is
freed/GCed.

In a process where GTK is initialized, we borrow its display instead of
opening a new one, which preserves the existing behavior.

Differential Revision: https://phabricator.services.mozilla.com/D112195
2021-07-06 07:42:42 +00:00
Jed Davis a8d8e90b70 Bug 1635451 - Attempt to start WebGL even in headless mode. r=jgilbert
Currently we return an error when creating a WebGL context in headless
mode, but our WebGL implementation renders to an offscreen context, so
in theory it could work normally in a headless browser, and in practice
it already does work on some OSes.  This patch removes that check; the
attempt to use GL may fail, in which case we'll return an error to
content.

The main purpose of this patch is to run content processes with headless
mode set in an otherwise non-headless browser, but it should also be
useful for fully headless mode.  Comments in bug NNNNNNN indicate that
this change should be sufficient for headless WebGL on Windows and MacOS,
although it may not have been extensively tested.

Linux is more complicated.  The EGL/X11 backend manages its own
connection to the X server (indirectly via the EGL library); a later
patch in this series allows doing that in GLX mode as well.  Our Wayland
support can't do this yet, but it should be possible.

This patch also modifies the Linux sandbox policy so that content
processes can connect to a local X server (via the file broker) even when
the parent process is in headless mode.

Differential Revision: https://phabricator.services.mozilla.com/D118721
2021-07-06 07:42:41 +00:00
Hiroyuki Ikezoe 523a115dcc Bug 1717726 - Add a debug-only assertion disallowing remote <browser>s or <iframe>s inside nsDeckFrame. r=tnikkel
The background to have this assertion is that nsDeckFrame::HideBox calls
PresShell::ClearMouseCapture and ClearMouseCapture checks whether the
being-hidden panel has a content capturing mouse events or not but the check
doesn't work if the content is in a remote process. In our current
mozilla-central tree, there is no such nsDeckFrame other than our browser's
tab. In the case of our browser's tab when switching tabs, i.e. hiding an
active tab, clearing the mouse capturing state has (should have) worked since
E10S (Note for Fission cases it has worked since bug 1680405). So, because
nsDeckFrame will be obsoleted sooner or later, we disallow the situation
for other cases instead of adding special handling for the other case.

Differential Revision: https://phabricator.services.mozilla.com/D119067
2021-07-06 07:38:06 +00:00
Hiroyuki Ikezoe 66148df97a Bug 1717726 - Remove browser_deck_has_out_of_process_iframe.js. r=tnikkel
We are going to disallow having any remote <browser>s or <iframe>s inside
nsDeckFrame, so this test is no longer necessary.

Differential Revision: https://phabricator.services.mozilla.com/D119066
2021-07-06 07:38:06 +00:00
Henrik Skupin f65529ebbb Bug 1693802 - [remote] Refactor Connection module to be used by CDP and WebDriver BiDi. r=webdriver-reviewers,jdescottes
The patch extracts common code that can be re-used
by both the CDP, and the upcoming WebDriver BiDi
protocol.

Differential Revision: https://phabricator.services.mozilla.com/D119108
2021-07-06 07:06:51 +00:00
Julian Descottes d0004a2390 Bug 1718279 - [devtools] Rename Descriptor::reloadBrowsingContext to reloadDescriptor r=ochameau,devtools-backward-compat-reviewers
Depends on D118851

The initial name no longer represents accurately what happens for webextension descriptors

Differential Revision: https://phabricator.services.mozilla.com/D118852
2021-07-06 07:02:31 +00:00
Julian Descottes 281bb4cb1c Bug 1718279 - [devtools] Addon toolbox reload should use the addon manager r=ochameau
Depends on D118473

Differential Revision: https://phabricator.services.mozilla.com/D118851
2021-07-06 07:02:31 +00:00
Nicolas Chevobbe 6716c11bc6 Bug 1719160 - [devtools] Fix checkValue commands test helper. r=jdescottes.
We weren't checking properly undefined value, which was hiding issues in
some tests.
The helpers are fixed and a few test modified to make them pass.

Differential Revision: https://phabricator.services.mozilla.com/D119096
2021-07-06 05:03:47 +00:00
Masayuki Nakano 5dd777bdc1 Bug 1716863 - Make `HTMLEditor::HandleInsertText()` climb up the tree when `Selection` is in elements which cannot have text nodes r=m_kato
In most cases, it's called with selection range which is collapsed in a text
node, but otherwise, the selection may be in an element which cannot have
text nodes.  Therefore, before handling the insertion, it should look for
ancestor element which can have text nodes.

Note that this patch makes inserting text immediately before an inclusive
ancestor element whose parent can have a text node.  However, both Blink and
WebKit ignores if there are invisible/empty inline nodes.  So, even with
this patch, Gecko keeps failing in some tests of the WPT.  It should be handled
in a follow up bug because doing it requires complicated code.

Differential Revision: https://phabricator.services.mozilla.com/D119065
2021-07-06 04:55:28 +00:00
Masayuki Nakano d4cc61bf6a Bug 1716863 - Add WPT to check "insertText" command when selection is collapsed in a void element, and its expected results almost match with Chrome r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D119064
2021-07-06 04:55:27 +00:00
Makoto Kato 1c5c3f4ec2 Bug 1718512 - Remove unused BundleEventListener from GeckoNetworkManager. r=geckoview-reviewers,aklotz
By bug 1697680, Gecko removes Presentation API. `Wifi:GetIPAddress` was only used on this API implementation.
So now, this is unused.

Differential Revision: https://phabricator.services.mozilla.com/D118911
2021-07-06 04:10:22 +00:00
Glenn Watson 5e48211fc7 Bug 1718157 - Add a rudimentary on screen debug log system r=gfx-reviewers,kvark
This is useful for debugging problems on systems such as android
or windows which can sometimes be tricky to get reliable console
output logging.

Differential Revision: https://phabricator.services.mozilla.com/D118772
2021-07-06 00:55:17 +00:00
Matthew Noorenberghe efc6383c93 Bug 1693069 - Focus the page range field when choosing a custom print range. r=mstriemer
Differential Revision: https://phabricator.services.mozilla.com/D118886
2021-07-05 22:55:55 +00:00
Daisuke Akatsuka fde6550e6b Bug 1677606: Run browser_searchbar_focus_timing.js to avoid potential conflicts with other tests. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D119043
2021-07-05 22:52:22 +00:00
Mike Hommey c44a775592 Bug 1719207 - Install libstdc++ dev package in sysroots. r=firefox-build-system-reviewers,mhentges
Because the build requires a version that is newer than the one
available in Debian jessie, we build a newer version. The exact minor
version doesn't matter, as long as it's 7.x, so we take the last version
that produced a libstdc++6 package (before Debian switched to GCC 8 as
the default), and add a few workarounds to fix the packaging that
doesn't quite work for jessie out of the box.

Differential Revision: https://phabricator.services.mozilla.com/D119124
2021-07-05 22:47:18 +00:00
Mike Hommey a9a1fbb581 Bug 1719205 - Upgrade mmdebstrap to latest version. r=firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D119118
2021-07-05 22:47:18 +00:00
Mike Hommey 544436ed03 Bug 1718156 - Avoid some configure tests creating the common virtualenv. r=firefox-build-system-reviewers,mhentges,andi
When running `mach python-test` on a clobbered tree, we create both the
python-test and common virtualenvs, but the former should be enough. The
latter is only created when running tests that use the BaseConfigureTest
class, when it indirectly includes init.configure, which makes the
configure sandbox run the virtualenv_python3 function, which ends up
initializing the common virtualenv. We only don't end up re-executing
that virtualenv python thanks to 6680ca0acc27 which was a workaround
that would allow any virtualenv in $objdir/_virtualenvs, while still
creating a virtualenv it won't use.

Tests now tell virtualenv_python3 to not use the normal virtualenv
manager, and remove the workaround.

Differential Revision: https://phabricator.services.mozilla.com/D118775
2021-07-05 22:33:56 +00:00
Mitchell Hentges c25aec1f74 Bug 1717104: Update "pth" docs for virtualenvs r=ahal
The "pth" action no longer has a customizable filename, and the docs
should be updated accordingly.

Depends on D118609

Differential Revision: https://phabricator.services.mozilla.com/D118610
2021-07-05 22:10:35 +00:00
Mitchell Hentges 86ae5fbc84 Bug 1717104: Remove obsolete "set-variable" notes from virtualenv docs r=ahal
Since https://phabricator.services.mozilla.com/D115921, "set-variable"
is no longer a valid action. Looks like that patch forgot to remove the
associated docs

Differential Revision: https://phabricator.services.mozilla.com/D118609
2021-07-05 22:10:35 +00:00
Alexandre Poirot c85efd5294 Bug 1718192 - [devtools] Fix various edgecase when doing BFCache navigation. r=nchevobbe
* avoid unwatching DOCUMENT_EVENT in case of target-switching
* ensure emitting DevToolsFrameChild:destroy for all currently registered target actors
  (didDestroy was clearing the list of actors used by _getTargetActorForWatcherActorID)
* do not try to stop and restart server side watchers in case of bfcache navigation

Differential Revision: https://phabricator.services.mozilla.com/D118795
2021-07-05 21:47:20 +00:00
Alexandre Poirot 2a4083e6b7 Bug 1718192 - [devtools] Implements ProcessDescriptor.isParentProcessDescriptor. r=nchevobbe
This is a shortcut to avoid having to do `descriptorFront.isProcessDescriptor && descriptorFront.isParent`.

Differential Revision: https://phabricator.services.mozilla.com/D118794
2021-07-05 21:47:20 +00:00
Alexandre Poirot ba0a1d1468 Bug 1718192 - [devtools] All server side targets follow the WindowGlobal lifecycle. r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D118504
2021-07-05 21:47:20 +00:00
Alexandre Poirot b54048e6c1 Bug 1718192 - [devtools] Cover target destruction events when doing bfcache navigations. r=nchevobbe
The test was already passing.

Differential Revision: https://phabricator.services.mozilla.com/D118503
2021-07-05 21:47:19 +00:00
Alexandre Poirot cfa09c60a4 Bug 1718192 - [devtools] Fix bfcache TargetCommand test against bfcache navigations. r=nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D118502
2021-07-05 21:47:19 +00:00
Gijs Kruitbosch e494abb483 Bug 1695658 - tests, r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D106773
2021-07-05 21:28:57 +00:00
surajeet310 498013ddc6 Bug 1717651 - Removed instances of 'ensure_subprocess_env()' from virtualenv.py r=mhentges
Since Python 2 is no longer used in virtualenv.py ,hence 'ensure_subprocess_env()' is obsolete.

Differential Revision: https://phabricator.services.mozilla.com/D118883
2021-07-05 19:59:53 +00:00
Gijs Kruitbosch 1aa0ea7655 Bug 1680147 - open file: links to PDFs from file: pages with PDF.js immediately r=mtigley
Differential Revision: https://phabricator.services.mozilla.com/D116915
2021-07-05 18:28:52 +00:00
Sandor Molnar fe63cb08df Backed out 2 changesets (bug 1719144) for causing build bustages. CLOSED TREE
Backed out changeset 8e4b00b9d57c (bug 1719144)
Backed out changeset d2a88c5423a0 (bug 1719144)
2021-07-05 21:15:50 +03:00
Emilio Cobos Álvarez 2312a30b0c Bug 1719144 - Update voluptuous. r=firefox-build-system-reviewers,mhentges
Depends on D119080

Differential Revision: https://phabricator.services.mozilla.com/D119107
2021-07-05 17:55:42 +00:00
Emilio Cobos Álvarez 52a85aaca1 Bug 1719144 - Fix various imports for Python 3.10. r=firefox-build-system-reviewers,mhentges
These are enough for me to run bootstrap+configure+build.

Some touch third-party code (gyp), but per discussion in the earlier
versions of this revision that seems fine.

Differential Revision: https://phabricator.services.mozilla.com/D119080
2021-07-05 17:55:41 +00:00
Mitchell Hentges 9ee9a69ade Bug 1717905: M1 Macs don't support Android targets r=glandium
Also filter out bootstrapping for Android targets.

Differential Revision: https://phabricator.services.mozilla.com/D118727
2021-07-05 17:44:20 +00:00
Mitchell Hentges 733d1bb939 Bug 1717905: Fix M1 Mac bootstrap choice offset r=glandium
When we customized the list of possible `applications` for M1 Macs, the
change was only applying to the displayed list, but not the actual
list that the choice was indexed against.

This is fixed by properly using `applications` instead of
`APPLICATIONS` where relevant.

Note that it's still possible to manually request an
`artifact_mode` if you provide it as an argument for `./mach bootstrap`,
but this workflow is usually only done by devs who are familiar with all
the applications, and therefore likely know what they're doing.

Differential Revision: https://phabricator.services.mozilla.com/D118625
2021-07-05 17:44:19 +00:00
Emilio Cobos Álvarez 8f5e43a274 Bug 1717983 - Pack bool fields better in BrowserChild. r=nika
Not a big deal, but given we have a lot of them, BrowserParent does it,
and it's low effort, seemed worth doing.

Depends on D118884

Differential Revision: https://phabricator.services.mozilla.com/D118885
2021-07-05 17:31:49 +00:00
Emilio Cobos Álvarez 0c7b4c828a Bug 1717983 - Don't consider a browser active if the tab is inactive but we're preserving layers. r=nika
GeckoView always calls preserveLayers(true) on all <browser> elements,
which causes the puppet widget to always be considered visible.

Given how the code worked before, aBrowsingContext.isActive = false
after that call would deactivate the pres shell, but after my patch it
stops doing so.

We don't really want to un-throttle the refresh driver etc just because
we're preserving layers, so propagate the state to the child process and
account for that in the logic to determine PresShell activeness.

Depends on D118703

Differential Revision: https://phabricator.services.mozilla.com/D118884
2021-07-05 17:31:49 +00:00
Emilio Cobos Álvarez a5f4c42f89 Bug 1717983 - Improve PresShell active flag handling. r=nika
This moves the logic of whether a pres shell should be active to a
single place to make it sane to reason about, and fixes the
subdocument propagation when a BrowserChild becomes visible.

Differential Revision: https://phabricator.services.mozilla.com/D118703
2021-07-05 17:31:48 +00:00
Kajal Sah d09ca6460e Bug 1718860 - Adds null check for button. r=emalysz
Differential Revision: https://phabricator.services.mozilla.com/D119032
2021-07-05 16:41:47 +00:00
Julian Descottes 5b3444ad30 Bug 1717861 - [devtools] Remove error from ThreadActor paused event r=ochameau,devtools-backward-compat-reviewers
Depends on D118875

Differential Revision: https://phabricator.services.mozilla.com/D118876
2021-07-05 15:58:47 +00:00
Julian Descottes 30c134da37 Bug 1717861 - [devtools] Remove willInterrupt event from ThreadActor r=ochameau,devtools-backward-compat-reviewers
Depends on D118607

Differential Revision: https://phabricator.services.mozilla.com/D118875
2021-07-05 15:58:46 +00:00
Julian Descottes d71a5c5014 Bug 1717861 - [devtools] Remove poppedFrames from ThreadActor paused event r=ochameau,devtools-backward-compat-reviewers
Depends on D118471

Differential Revision: https://phabricator.services.mozilla.com/D118607
2021-07-05 15:58:46 +00:00
Gijs Kruitbosch 986df48ffa Bug 1717819 - wrap exception button for https-only mode in hbox so search tooltips align correctly, r=mconley
I'm also removing the align=end, because the vbox is adjacent to a flex=1 vbox,
so all horizontal space will be eaten by that other box, meaning alignment of
the button is a no-op as its container is the same width as the button anyway.

Differential Revision: https://phabricator.services.mozilla.com/D119097
2021-07-05 15:51:11 +00:00
Alexandru Michis 6daae29ec4 Backed out changeset c204c9f05b2e (bug 1711053) for causing failures in browser_download_opens_on_click.js
CLOSED TREE
2021-07-05 19:22:36 +03:00
Nicolas Silva 963407d195 Bug 1717592 - Support screen raster-space in the opaque image brush. r=gfx-reviewers,lsalzman
This fixes the regressions that prevented https://phabricator.services.mozilla.com/D114954 from landing.

Differential Revision: https://phabricator.services.mozilla.com/D118370
2021-07-05 15:46:02 +00:00
Nicolas Silva 620dab6635 Bug 1717592 - Allow rendering tiles and segments with the opaque pass in more cases. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D114954
2021-07-05 15:46:02 +00:00
Andreas Farre d9f3a1519c Bug 1701303 - Move counting of private browsing contexts to parent process. r=smaug,johannh
Move the counting of private browsing contexts to the parent
process. Also change to only consider non-chrome browsing contexts
when counting private contexts. The latter is possible due to bug
1528115, because we no longer need to support hidden private windows.

With counting in the parent process we can make sure that when we're
changing remoteness on a private browsing context the private browsing
context count never drops to zero. This fixes an issue with Fission,
where we remoteness changes could transiently have a zero private
browsing context count, that would be mistaken for the last private
browsing context going away.

Changing to only count non-chrome browsing contexts makes us only fire
'last-pb-context-exited' once, and since we count them in the parent
there is no missing information about contexts that makes us wait for
a content process about telling us about insertion or removal of
browsing contexts.

Differential Revision: https://phabricator.services.mozilla.com/D118182
2021-07-05 15:17:55 +00:00
Ava Katushka ava8katushka 3b8aae0267 Bug 1709129 - Open downloads panel when new download starts. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D118186
2021-07-05 14:51:03 +00:00
Ava Katushka ava8katushka bc8b666b90 Bug 1711053 - Open file after download if user clicked on downloading file. r=mtigley,flod,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D118328
2021-07-05 14:32:01 +00:00
Emilio Cobos Álvarez 3516c9a2c6 Bug 1718200 - In nsDocumentViewer::SetDocument, call Document::Destroy if the new document is a static document. r=smaug
Even if the old one isn't, otherwise we can leak.

This doesn't happen at the moment because our printing code creates its
own browser with the initial about:blank loaded (which not Destroy()ing
is fine), and then host the clone in there.

In bug 1666247, for simplify mode the front-end is creating a non-static
document with the simplify mode, then reusing the same docshell for the
static document. That means that we forget the non-static document and
we can leak.

In comment 16 on that bug, the leak comes from a <link rel=stylesheet>
whose SheetLoadData we keep in Document::mPreloadService (which uses
Document::Destroy() to call ClearAllPreloads() and break cycles).

To fix it, check aDocument->IsStaticDocument(), not just
mDocument->IsStaticDocument()... That's the right check since it is the
cloning codepath the one that otherwise doesn't care about what was in
the viewer before.

Differential Revision: https://phabricator.services.mozilla.com/D118809
2021-07-05 14:13:21 +00:00
Marian-Vasile Laza 17d6e262f7 Backed out changeset 55f827545de2 (bug 1701303) for causing bustages on ContentParent.cpp. CLOSED TREE 2021-07-05 17:12:13 +03:00
Harry Twyford c64d01a319 Bug 1716545 - Remove Mac-specific DevTools light theme overrides. r=mac-reviewers,mstange
Differential Revision: https://phabricator.services.mozilla.com/D118617
2021-07-05 13:33:25 +00:00
Nan Jiang 1afd3a5c8e Bug 1718749 - Filter blocked sponsored top sites from RemoteSettings when Contile is enabled r=dao
Differential Revision: https://phabricator.services.mozilla.com/D119019
2021-07-05 13:22:33 +00:00