Commit Graph

51 Commits

Author SHA1 Message Date
Dmitry Gozman
ac02a6b69c
browser(firefox): issue Page.ready at the right time (#1462)
This covers new pages and popups. Special handling is needed for window.open() with no url.
2020-03-21 17:56:15 -07:00
Andrey Lushnikov
96c9c81581
browser(firefox): fix bug in Juggler with clashing method names (#1456) 2020-03-20 19:35:58 -07:00
Pavel Feldman
840e69b85c
browser(firefox): emulate language (#1452)
1e29e6f231
2020-03-20 17:03:20 -07:00
Pavel Feldman
fcdfa9ca24
browser(firefox): implement geolocation overrides (#1437) 2020-03-20 11:14:42 -07:00
Pavel Feldman
edd2fee943
browser(firefox): grant permissions to all origins (#1405) 2020-03-16 20:57:19 -07:00
Andrey Lushnikov
3b85bf9c1f
browser(firefox): handle message manager error event without error (#1344)
Type TypeError that happens while loading document is reported in
the message manager but does not have the error event.

Saw this while reproducing #1307
2020-03-11 13:37:31 -07:00
Andrey Lushnikov
996f97a6c0
browser(firefox): roll Firefox to current beta (#1276)
Review URLs: 
- Fixing request interception; ad69da0f74
- Fixing eval with user input: 381c1df5c6
2020-03-06 18:25:27 -08:00
Dmitry Gozman
29f243056c
browser(firefox): merge Target domain into Browser, rework default context attach (#1259) 2020-03-06 14:58:35 -08:00
Andrey Lushnikov
8c9933e0f5
browser(firefox): move Juggler to top-level (#1254)
Review URL: 5ba06e6d7a

Drive-by: fix re-baseline over r1036
2020-03-05 17:20:07 -08:00
Dmitry Gozman
9d3bff1cf9
browser(firefox): implement Browser.setHTTPCredentials (#1251) 2020-03-05 16:37:44 -08:00
Andrey Lushnikov
b0d037ecfe
browser(firefox): fix flaky permissions in Firefox (#1249)
Review URL: 9bd6e72005

Wait for permissions to propagate to all context pages.

References #720
2020-03-05 14:31:57 -08:00
Andrey Lushnikov
20c326378c
browser(firefox): follow-up with SimpleChannel unification (#1246)
Review URL: 141f30f450

Address all comments in 1bf5b61cbb
2020-03-05 13:16:43 -08:00
Pavel Feldman
2cd727f675
browser(firefox): signal link click (#1236) 2020-03-05 11:59:29 -08:00
Andrey Lushnikov
1bf5b61cbb
browser(firefox): move workers to use SimpleChannel (#1232)
Review URL: 4753d0121f

This patch:
- Moves Workers to FrameTree
- Introduces WorkerData in PageAgent that proxies runtime agent
  in worker to browser process
- Introduces WorkerHandler in PageHandler that handles communicates
  with runtime agent in worker and handles Juggler protocol

As part of this patch, SimpleChannel no longer manages lifetime of
any of its handlers.
2020-03-04 21:18:56 -08:00
Andrey Lushnikov
31278408db
browser(firefox): introduce SimpleChannel (#1209)
Review URL: 6364381adc

Refactor inter-process communication inside Firefox. The goal is
to have a single abstraction that works nicely for all our cross-process
communication needs (browser <-> content, content <-> workers, content
<-> file:// process, e.t.c.)

This is step 1 that eliminates content sessions everywhere.
Step 2 will move workers onto `SimpleChannel` as well.

This is a pre-requisite for #720: with a single `browser <-> content`
communication channel it will be easier to await permission change in tabs.

References #720
2020-03-04 14:33:49 -08:00
Dmitry Gozman
ee9c7f1886
browser(firefox): support BrowserContext.evaluateOnNewDocument (#1135)
70ee31b2d4
2020-02-26 15:40:41 -08:00
Dmitry Gozman
facf2c24fd
browser(firefox): support BrowserContext.setExtraHTTPHeaders (#1111) 2020-02-25 17:24:06 -08:00
Dmitry Gozman
c2ab1e31f7
browser(firefox): misc fixes (#983)
- crash support;
- keydown supports text by committing composition;
- cross-page frame handling;
- security check for node adoption.
2020-02-13 10:46:46 -08:00
Dmitry Gozman
d37b67a833
browser(firefox): do not wait for initial navigation in default context (#937)
0a70be2bc6
2020-02-11 16:25:35 -08:00
Dmitry Gozman
9ea8f49cd1
browser(firefox): attach to all pages in the browser context (#928)
- introduce BrowserContext abstraction;
- attach to all pages from owned browser contexts on creation;
- move page emulation to PageTarget/FrameTree, away from sessions and agents;
- remove explicit enable methods, replaced by Page.ready event;
- pass browser context options on creation.

c73fb4450e
2020-02-11 11:32:37 -08:00
Dmitry Gozman
9f0bbfff2c
browser(firefox): pause page on creation to handle emulation messages (#871)
153a95c23a
2020-02-06 16:07:52 -08:00
Andrey Lushnikov
8c6faab012
browser(firefox): roll firefox to upstream's beta (#876) 2020-02-06 15:21:06 -08:00
Pavel Feldman
6202ff12fd
browser(firefox): use guids for browser contexts, delete contexts on disconnect (#866) 2020-02-06 13:41:25 -08:00
Dmitry Gozman
0cc26c0fe6
browser(firefox): introduce Page.scrollIntoViewIfNeeded (#848)
1cfb6fd4cc
2020-02-05 14:57:30 -08:00
Joel Einbinder
44829d6fdf
browser(firefox): wait for pending accessibility updates (#755)
Should fix some flaky accessibility tests on Firefox for mac.
2020-01-29 18:56:11 -08:00
Pavel Feldman
7af1d12d25 browser(firefox): use unguessable web socket address (#722)
References #705
2020-01-28 14:03:19 -08:00
Pavel Feldman
19da86b4c9 browser(firefox): amend method & postData upon continue (#716) 2020-01-28 13:04:09 -08:00
Joel Einbinder
717159094c browser(firefox): wait for startup before closing the browser (#575) 2020-01-22 19:56:56 -08:00
Dmitry Gozman
1c96d42a4b browser(firefox): support request interception (#572)
10558a7ead
2020-01-22 17:21:25 -08:00
Dmitry Gozman
2520dedb41
browser(firefox): support workers (#526)
a0549a0f64
2020-01-17 16:40:30 -08:00
Dmitry Gozman
b4686f1eb9 browser(firefox): assorted fixes for evaluation and remote objects (#510) 2020-01-16 14:11:33 -08:00
Dmitry Gozman
7785fd8191 browser(firefox): support isolated worlds (#500)
211f1f1bff
2020-01-16 11:52:22 -08:00
Andrey Lushnikov
2387727b42
browser(firefox): improve firefox protocol types (#490)
Review URL: d8f3090d4a
2020-01-14 14:04:03 -08:00
Andrey Lushnikov
e57c9063b6 Revert "Revert "browser(firefox): roll Firefox to 2b50ccdc8ad0c83966285352a875415a858037c2 (#451)""
This reverts commit 350b256722.

Reason: buildbots were failing to compile new FF because their
cbindgen was outdated. This is now fixed on both Mac & Win.
2020-01-11 01:20:39 +01:00
Pavel Feldman
350b256722 Revert "browser(firefox): roll Firefox to 2b50ccdc8ad0c83966285352a875415a858037c2 (#451)"
This reverts commit d3e127a0c1.
2020-01-10 12:19:12 -08:00
Andrey Lushnikov
d3e127a0c1 browser(firefox): roll Firefox to 2b50ccdc8ad0c83966285352a875415a858037c2 (#451)
Review URL: c3a577c46d

With this roll, Firefox has DocumentChannel enabled by default in Desktop Firefox:
- https://phabricator.services.mozilla.com/D57898

DocumentChannel, unlike nsIHttpChannel, doesn't have a `channelId` that we
can use to attribute navigation requests (see
https://github.com/microsoft/playwright/pull/249).

The feature has to be disabled for now in PlayWright with the
`browser.tabs.documentchannel` pref until we figure how to support it.
2020-01-10 10:50:03 -08:00
Joel Einbinder
85985155d0 feat(firefox): pass in a node to getFullAXTree (#388) 2020-01-06 16:32:29 -08:00
Pavel Feldman
b64bd35c23
feat(evaluate): survive null JSON (#351) 2020-01-02 12:13:18 -08:00
Andrey Lushnikov
46483ed009 browser(firefox): support late attach (#282) 2019-12-17 15:07:25 -08:00
Andrey Lushnikov
39357c3f6c fix(devops): use full SHAs in diffs
Different GIT setups export different length of shortsha.
With this, always export full SHA.
2019-12-16 16:17:56 -08:00
Dmitry Gozman
927669b890 feat(firefox): provide navigationId for navigation requests (#249) 2019-12-14 08:21:23 -08:00
Pavel Feldman
4fd241e4ae fix(ff): follow up to the roll, fix permissions 2019-12-13 20:56:49 -08:00
Pavel Feldman
08f0823873 browser(firefox): roll FF to beta ToT (#245) 2019-12-13 16:37:45 -08:00
Dmitry Gozman
4861152766 browser(firefox): instrument document.open load event (#218) 2019-12-11 17:53:46 -08:00
Andrey Lushnikov
20be65b1c9 devops(scripts): export diffs instead of patches
This changes `export.sh` to export diffs instead of patches.
`export.sh` now does not touch working directory, thus not
triggering clean builds and not intefering with an on-going
build.
2019-12-10 15:41:58 -08:00
Pavel Feldman
d7b727df1c browser(firefox): implement new set/clearCookies contract (#83) 2019-11-26 09:00:10 -08:00
Pavel Feldman
a1d71d0de7 feat(csp): support bypass csp on ff (#74) 2019-11-25 15:26:03 -08:00
Pavel Feldman
2e581f1625 feat(emulate): implement emulateMedia color scheme in FF (#71) 2019-11-25 15:00:04 -08:00
Pavel Feldman
eaa5e93b8b feat(filechooser): supported file chooser in FF (#70) 2019-11-25 13:56:39 -08:00
Andrey Lushnikov
b416dd7507 browser(firefox): roll Firefox to 6f8366f5763c2f8bcf2ed83dee659b963e0f75a2
Previous firefox beta was broken on Mac - this isn't.
2019-11-22 19:19:18 -08:00