Commit Graph

118 Commits

Author SHA1 Message Date
Yury Semikhatsky
02aa31048c
browser(firefox): cross thread sync in screencast (#16320)
* nsIScreencastServiceClient is not thread safe refcounted so we make nsScreencastService::Session a thread safe refcounted object and keep it alive while there are inflight frames. Once such frames get handled on the main thread we check if the session has been stopped.
* Removed mCaptureCallbackCs in favor of atomic counter (mClient is not accessed only on the main thread).
* HeadlessWindowCapturer now holds RefPtr to the headless window object to avoid use after free when clearing it as a listener on the widget.
* ScreencastEncoder is not ref counted anymore.

Pretty-diff: 5f5042ff1e
2022-08-05 15:25:26 -07:00
Yury Semikhatsky
4fc05e8374
browser(firefox): run callbacks inside critical section (#16282)
Pretty-diff: yury-s/gecko-dev@688b4a7
2022-08-04 18:52:30 -07:00
Yury Semikhatsky
135971c406
browser(firefox): recompute content-length if body is overridden (#16173) 2022-08-02 13:51:05 -07:00
Andrey Lushnikov
af33d713ad
devops: fix Firefox-Beta build the same way we fix FF Stable (#16146)
Drive-by: add missing `ff-beta-ubuntu-20.04-arm64` build
2022-08-02 07:27:51 -07:00
Dmitry Gozman
94efeed192
browser(firefox): make scrollIntoViewIfNeeded and getContentQuads work with display:contents (#16111) 2022-08-01 14:40:23 -07:00
Max Schmitt
99cc3869d2
devops: be compatible with multiple MSVS installations (#16121) 2022-08-01 23:37:07 +02:00
Yury Semikhatsky
d33455dcca
browser(firefox): dispatch console messages even if there are workers (#16068) 2022-07-29 16:56:17 -07:00
Yury Semikhatsky
b479869ddc
browser(firefox): do not leak vpx codec (#16034) 2022-07-28 13:39:34 -07:00
Andrey Lushnikov
792aa6a080
devops: fix FF build on MacOS (#16023)
It looks like FF on MacOS requires the `--enable-bootstrap`
flag instead of the original dance with the master branch.
2022-07-28 10:49:34 -07:00
Andrey Lushnikov
96574e49eb
devops: fix Firefox build on Linux (#16022)
Prebuilt WASI sysroot is not availabe any more, so this patch
disables sandboxing via WASI for now in our builds.

I tried compiling WASI manually, but it didn't work out for me
for some reason.
2022-07-28 08:04:44 -07:00
Andrey Lushnikov
67cea1882c
chore: trigger new browser builds that use new infrastructure (#15955) 2022-07-26 07:44:31 -07:00
Andrey Lushnikov
618941fc68
devops: make --debug as a CLI argument for FF build scripts (#15833) 2022-07-21 16:20:09 -07:00
Andrey Lushnikov
f76fb3e08a
devops: add firefox debian build (#15568) 2022-07-12 05:12:51 -07:00
Andrey Lushnikov
e9d66535ba
browser(firefox): move screenshots to browser-side (#15230)
* `clip` option is always passed from the client code
* with this change, we can no longer capture screenshot of a blinking
  caret; the browser-side API doesn't have this capability.
2022-07-06 15:02:48 -07:00
Andrey Lushnikov
3b269d0ed7
browser(ff-beta): roll Firefox-Beta to 103.0b5 (#15394) 2022-07-05 15:47:35 -07:00
Dmitry Gozman
268bfec4b9
browser(firefox): disable cross-process navigations for about:blank (#15283) 2022-06-30 14:49:11 -07:00
Andrey Lushnikov
458c9b2207
browser(firefox): fix racy browser.newPage() method (#15251)
It looks like the tabopen callback is async, so we must
make sure it is called when opening new pages.
2022-06-30 11:07:38 -07:00
Andrey Lushnikov
074ae99dc5
browser(firefox): fix browser.newPage crasher (#15247)
`mWindow` might not be initialized.
2022-06-29 13:47:45 -07:00
Andrey Lushnikov
571b642670
devops: fix firefox-beta build on Ubuntu 20.04 & 22.04 (#15175)
devops: fix firefox-beta build

References #15174
2022-06-28 05:40:58 -07:00
Dmitry Gozman
141093a1cd
browser(firefox): a11y haspopup is a string, not a boolean (#15056) 2022-06-22 17:01:13 -07:00
Dmitry Gozman
94a0d669b6
browser(firefox): expose Response.fromServiceWorker (#14606)
This property is "true" when network response was fulfilled
by the service worker.
2022-06-02 17:16:19 -07:00
Yury Semikhatsky
d5bfd786b9
browser(firefox): force opener tab to be active (#14568)
> lgtm % null-check for the docshell

The  code is inside following if condition
```
if (auto* browserChild = BrowserChild::GetFrom(root->GetDocShell())) {
```
which ensures that the doc shell is not null.
2022-06-02 09:04:04 -07:00
Max Schmitt
66fc04cdb3
devops: add Firefox ubuntu 22 builds (#14579) 2022-06-02 13:54:30 +02:00
Andrey Lushnikov
59c7e7aaa4
devops: fix firefox-beta build (#14495)
This patch:
- fixes firefox-beta archiving that requires 2 extra env variables
- attempts to use windows paths to specify `MOZ_FETCHES_DIR` on
  Windows to point to the toolchains folder.
2022-05-31 01:50:04 -07:00
Andrey Lushnikov
f99c3bb977
devops(ff-beta): fix build to use bootstrapped toolchains (#14491)
This is a follow-up to a7a7644beb
that started bootstrapping toolchains from `master` branch.

Now, we have to explicitly use these toolchains when building
Firefox.
2022-05-31 00:22:01 -07:00
Andrey Lushnikov
98469d70c4
devops: bump cbindgen required version for Firefox-Beta (#14287) 2022-05-19 08:36:40 -07:00
Andrey Lushnikov
a7a7644beb
devops: fix firefox-beta build (#14282)
It turns out that we can only bootstrap Firefox toolchains
from latest commits.

So in case of a full build, we have to fetch latest commit
from `master`, bootstrap from it, and then build the commit we'd like.
2022-05-19 08:08:46 -07:00
Andrey Lushnikov
c3d82c278d
browser(ff-beta): roll Firefox beta to 101.0b8 (#14196)
Pretty diff: https://github.com/aslushnikov/juggler/tree/roll-beta-to-101
2022-05-16 08:39:02 -07:00
Andrey Lushnikov
5724d46253
browser(firefox-beta): fix windows compilation (#13774) 2022-04-26 12:03:35 -07:00
Andrey Lushnikov
3b159b45ff
chore: consolidate xcode versions across operating systems and builds (#13708)
A single place with all listed required xcode versions makes it
easier to manage XCode on bots.
2022-04-25 06:35:26 -07:00
Andrey Lushnikov
ec4ebefbd6
chore: use helper functions to define platforms (#13707)
This is to make code less error-prone due to involved windows
detection.
2022-04-22 12:35:35 -07:00
Andrey Lushnikov
db524327c4
browser(firefox-beta): roll Firefox-Beta to m100 (#13657)
conflict resolution: 4b055478bf
2022-04-20 09:27:57 -07:00
liuxingbaoyu
297edb02f1
devops: support msys2 (#13194) 2022-03-31 15:09:38 -07:00
Andrey Lushnikov
db334a8e71
browser(ff-beta): roll Firefox Beta to 99.0b9 (#13084)
Pretty Diff: 0e75c8a0dc
2022-03-28 15:14:20 -07:00
Yury Semikhatsky
463b4b1c0d
browser(firefox): do not send post data > 10Mb to the client (#12969) 2022-03-23 08:58:29 -07:00
Yury Semikhatsky
96b0a4b993
browser(firefox): fast post body conversion to base64 (#12898) 2022-03-18 18:30:28 -07:00
Andrey Lushnikov
c1c44055f8
devops: move everyone to use xcode 13.2 (#12788) 2022-03-15 10:44:53 -07:00
Andrey Lushnikov
71a4f69acf
devops: fix firefox-beta build on Windows 10 (#12477)
Instead of using 64-bit version of MINGW that comes with Git Bash,
we now switch to the one provided by the mozilla-build on windows,
which is 32-bit.

This patch also reverts the previous attempt that was defining the library names
for redistribution. It should work without them as well.

References #12225
2022-03-02 19:30:29 -08:00
Andrey Lushnikov
5827fb504b
devops: fix firefox-beta compilation on windows (#12444) 2022-03-01 12:44:07 -08:00
Andrey Lushnikov
66eda836c9
browser(ff-beta): roll Firefox-Beta to 98b10 (#12421)
Firefox reverted the third-party cookies recently:
https://bugzilla.mozilla.org/show_bug.cgi?id=1751435

Thus changes in tests.

References #12225
2022-03-01 00:17:33 -08:00
Pavel Feldman
618cc66c8d
browser(firefox): manage scripts to evaluate on load on front-end (#12101) 2022-02-14 20:32:12 -08:00
Andrey Lushnikov
b17f2a86da
devops: attempt to build firefox without maintenanceservice.exe (#11663) 2022-01-26 17:29:53 -08:00
Ross Wollman
8f0a5019c0
browser(firefox): fixes empty string postData override (#11529)
Relates #11470
Blocks #11421
2022-01-21 01:19:29 +01:00
Andrey Lushnikov
5d8aa8d5cf
browser(firefox): fix extra HTTP headers in request interception (#11265) 2022-01-08 08:26:11 -08:00
Andrey Lushnikov
a28935dcb8
browser(ff-beta): roll Firefox beta to 96.0b11 (#11139) 2021-12-29 21:18:43 -08:00
Andrey Lushnikov
fba29aa319
browser(firefox): fix HTTP->HTTPS fallback for refused connection (#11123)
In this case, there's no protocol version that we can extract for
nsIHttpChannel.

The code that does the redirect is here: 7f3d9fce41/docshell/base/nsDocShell.cpp (L6079-L6095)

To trigger this codepath, we'd need to run test inside a special
docker container that has https server running on the 443 port. We lack
infrastructure for this kind of tests (but it'll be cool to have it).

References #11118
2021-12-28 12:23:53 -08:00
Andrey Lushnikov
bff93f830e
devops: fix firefox packaging for Ubuntu 20.04 arm64 (#10962)
This was originally landed in
https://github.com/microsoft/playwright/pull/10091 but got accidentally
reverted by https://github.com/microsoft/playwright/pull/10760

References #10759
2021-12-15 18:10:26 -08:00
Andrey Lushnikov
cb79cd88a9
browser(firefox): use pre-downloaded toolchains for release builds (#10929) 2021-12-15 08:31:33 -08:00
Andrey Lushnikov
3791065b8e
browser(firefox-beta): remove use of mach create-mach-environment (#10931)
This command has been removed and is no longer needed: abeedf3bbd (diff-080f2a5f770785d46fa3a2404de9430136a5a6c5a4739dab3c47cfbd7421ce79)
2021-12-15 00:28:20 -08:00
Andrey Lushnikov
66292a5895
browser(firefox-beta): roll Firefox beta to 96.0b5 (#10924)
Review URL: 4cedc704b1

Firefox 96 changes default sameSite cookie value, so this patch
updates tests to accomodate for this.
2021-12-14 23:24:25 -08:00