Commit Graph

288 Commits

Author SHA1 Message Date
Yury Semikhatsky
ce1e79fe9f browser(webkit): fix debug compilation and some assertions (#498) 2020-01-15 11:54:36 -08:00
Pavel Feldman
30022a326f browser(webkit): initial windows cut (#497) 2020-01-15 10:48:27 -08:00
Yury Semikhatsky
a662f2fdfd browser(webkit): remove browser context id from target info (#494) 2020-01-14 15:31:43 -08:00
Andrey Lushnikov
2387727b42
browser(firefox): improve firefox protocol types (#490)
Review URL: d8f3090d4a
2020-01-14 14:04:03 -08:00
Yury Semikhatsky
f31d01acbc browser(webkit): notify client about provisional load failures (#483) 2020-01-14 09:50:05 -08:00
Joel Einbinder
21fce85036
fix(webkit): support the readonly attribute (#476)
`readOnlyValue()` was confusingly only the `aria-readonly` value. The real readonly value was determined by reading the `canSetValueAttribute` and `enabled` states.
2020-01-13 17:15:43 -08:00
Yury Semikhatsky
d529ef95d2
browser(webkit): implement Browser.navigate (#473) 2020-01-13 16:35:08 -08:00
Andrey Lushnikov
883005a323
devops: fix firefox win64 upload to CDN (#469) 2020-01-13 13:55:45 -08:00
Andrey Lushnikov
27f32a72e9
devops: migrate to new CDN for browser builds (#467) 2020-01-13 13:27:03 -08:00
Joel Einbinder
678cb1b8f7 fix(webkit): fix modifier keys for mouse events (#460) 2020-01-10 21:20:59 -08:00
Andrey Lushnikov
d5fb264b8c devops: remove --win64 flag from checkout_build_archive_upload.sh
Both `checkout_build_archive_upload.sh` and `upload.sh` scripts now
accept a `firefox-win64` browser instead of an optional `--win64` flag.

This is a preparation before introducing `webkit-wpe` parameter in these
scripts.
2020-01-11 03:15:29 +01:00
Andrey Lushnikov
a8c6bd66cd devops: properly handle double quotes in TG notifications
Since we send JSON, double quotes have to be escaped.
2020-01-11 01:39:22 +01: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
Joel Einbinder
a4f65c4073 fix(webkit): property accessibility values for roledescription and autocomplete (#458) 2020-01-10 15:52:34 -08:00
Andrey Lushnikov
099aa69374 devops: use only first commit line for Telegram notification messages 2020-01-11 00:35:30 +01:00
Yury Semikhatsky
3216e4f024 browser(webkit): make Network.requestId unique cross process (#453) 2020-01-10 12:27:18 -08:00
Pavel Feldman
350b256722 Revert "browser(firefox): roll Firefox to 2b50ccdc8ad0c83966285352a875415a858037c2 (#451)"
This reverts commit d3e127a0c1.
2020-01-10 12:19:12 -08:00
Yury Semikhatsky
138f081777 browser(webkit): make loader and frame id unique per page cross-process (#449) 2020-01-10 10:53:34 -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
24e1a25205 fix(webkit): Emulation.setDeviceMetricsOverride was flaky (#444) 2020-01-09 16:41:57 -08:00
Joel Einbinder
1cbc72ce67
feat(webkit): pass objectId into Page.accessibilitySnapshot (#445) 2020-01-09 15:14:23 -08:00
Pavel Feldman
601f704414
browser(webkit): pass all the tests on WPE (#439) 2020-01-09 13:36:34 -08:00
Andrey Lushnikov
5a69cd0068 devops: properly fetch commit message that triggered new build (#442) 2020-01-09 09:21:49 -08:00
Joel Einbinder
129d8442da
fix(webkit): see the content when emulating mobile on gtk (#436) 2020-01-08 17:20:40 -08:00
Pavel Feldman
e13161c894
browser(webkit): fix geo crash, exit main loop upon close (#435) 2020-01-08 16:46:58 -08:00
Yury Semikhatsky
ff18872fda
chore(scripts): limit number of fetched builds to 3 by default (#398) 2020-01-08 15:30:12 -08:00
Pavel Feldman
065bf5fdb1
browser(webkit): reapply wpe fixes (#423) 2020-01-08 14:35:10 -08:00
Yury Semikhatsky
73b148a0c6
chore: manually increment webkit build number (#430) 2020-01-08 14:03:34 -08:00
Joel Einbinder
86f1f0c952
fix(webkit): scale the view in fixedLayout mode (#395) 2020-01-08 13:57:28 -08:00
Yury Semikhatsky
37dd56ff37
chore(webkit): shorten page proxy id, fix variable naming (#429) 2020-01-08 13:57:22 -08:00
Yury Semikhatsky
f16561d817
browser(webkit): remove InputProcessingObserver (#427) 2020-01-08 12:24:31 -08:00
Pavel Feldman
25dfd61d16
browser(webkit): require explicit interceptRequest flag to intercept requests (#421) 2020-01-08 08:56:58 -08:00
Andrey Lushnikov
db8e75693c devops(bots): include commit title in telegram notifications 2020-01-08 15:45:45 +00:00
Pavel Feldman
85c0cc3ae2
browser(webkit): reapply wpe fixes (#419) 2020-01-07 17:47:19 -08:00
Yury Semikhatsky
8592942cf7 browser(webkit): delete WebPageInspectorTargetProxy (#413) 2020-01-07 16:08:16 -08:00
Pavel Feldman
ec50a8b9dc browser(webkit): make wpe compile (#410) 2020-01-07 15:39:45 -08:00
Yury Semikhatsky
2a2ba713ed browser(webkit): delete BrowserInspectorTargetAgent (#401) 2020-01-07 11:40:25 -08:00
Yury Semikhatsky
11cff970f9
chore(webkit): update license headers (#399) 2020-01-07 10:41:01 -08:00
Yury Semikhatsky
a4919b7e1e
browser(webkit): return page proxy id from Browser.createPage (#393) 2020-01-07 09:50:45 -08:00
Pavel Feldman
edccb57b13
browser(webkit): use 2-clause BSD for WebKit contributions (#397) 2020-01-06 22:16:18 -08:00
Joel Einbinder
85985155d0 feat(firefox): pass in a node to getFullAXTree (#388) 2020-01-06 16:32:29 -08:00
Pavel Feldman
0cc7277053
browser(webkit): roll to ToT 1/6/2020 (#390) 2020-01-06 16:30:38 -08:00
Pavel Feldman
544595f3e1
browser(webkit): treat empty credentials as enabled auth interception (#385) 2020-01-06 14:02:28 -08:00
Yury Semikhatsky
4dc8693624
browser(webkit): introduce Browser.PageProxyID representing WebPageProxy (#375) 2020-01-06 09:06:09 -08:00
Pavel Feldman
ccfb2cb26c
browser(webkit): headless beforeunload dialog handler added (#378) 2020-01-04 21:16:25 -08:00
Yury Semikhatsky
508a7eb016 fix(scripts): do not depend on env in pw_run.sh for debug builds (#336) 2020-01-03 10:10:17 -08:00
Pavel Feldman
f7b1f1e5fb browser(webkit): wire target crashed signal (#363) 2020-01-03 10:07:56 -08:00
Pavel Feldman
1e3140e845
browser(webkit): follow up to bootstrap change, run it in all worlds (#359) 2020-01-02 23:18:05 -08:00
Pavel Feldman
1776495b4c
fix(merge): 1057 undid 1056 :/ (#358) 2020-01-02 22:38:17 -08:00
Pavel Feldman
84e9ef08b1
browser(webkit): implement geolocation overrides (#356) 2020-01-02 16:46:35 -08:00
Joel Einbinder
347123e6cc feat(webkit): emulate fixed layout viewport (#347) 2020-01-02 12:19:21 -08:00
Pavel Feldman
b64bd35c23
feat(evaluate): survive null JSON (#351) 2020-01-02 12:13:18 -08:00
Pavel Feldman
20f404cb42 browser(webkit): support HTTP authentication (#345) 2019-12-30 22:23:01 +01:00
Pavel Feldman
243289cb0d browser(webkit): offline mode implemented (#344)
01e8ed5aa7
2019-12-30 17:46:56 +01:00
Pavel Feldman
9e8196c998
feat(webkit): request interception implemented (#341) 2019-12-29 10:14:09 -08:00
Andrey Lushnikov
b59049f8e8 devops: touch first-run marker files every time
Turns out OSX removes untouched files from tmp every once in a
while if they are not touched.
2019-12-26 21:20:29 +01:00
Andrey Lushnikov
2b4039d77c Revert "feat(scripts): support Debug builds in pw_run.sh (#330)"
This reverts commit 659a30e627.
Reason: this builds Mac Builders.
2019-12-26 20:55:30 +01:00
Yury Semikhatsky
0d6fbb9184
feat(wk): include ownerFrameId in Node description (#337) 2019-12-26 11:09:55 -08:00
Yury Semikhatsky
659a30e627
feat(scripts): support Debug builds in pw_run.sh (#330) 2019-12-23 13:20:04 -08:00
Joel Einbinder
8929a1f08a touch events on mac (#324) 2019-12-23 13:12:56 -08:00
Andrey Lushnikov
c9c97de729
browser(webkit): stop building with --touch-enable (#317)
Turns out we can't build with touch on Mac yet. Disable for now.
2019-12-19 17:59:33 -08:00
Joel Einbinder
b746733306 browser(webkit): drop undefined values instead of serailizing them as null (#316) 2019-12-19 16:45:21 -08:00
Yury Semikhatsky
d105f182fc browser(webkit): rebase WebKit on r253791 (#315) 2019-12-19 16:15:02 -08:00
Yury Semikhatsky
ff604f75b7
chore(wk): remove Input.goBack from protocol (#313) 2019-12-19 16:51:44 -07:00
Joel Einbinder
a1dd75ec32 rebase on new webkit (#301) 2019-12-19 15:07:19 -08:00
Yury Semikhatsky
82f6e61295 feat(wk): validate url before navigation and return error (#292) 2019-12-18 14:37:12 -08:00
Pavel Feldman
0d7701c730 fix(wkgtk): invoke resize callback when resize is a noop (#291) 2019-12-18 14:54:51 -07:00
Yury Semikhatsky
f854b09879 browser(webkit): support referrer parameter in Page.navigate (#285) 2019-12-17 16:26:19 -08:00
Andrey Lushnikov
46483ed009 browser(firefox): support late attach (#282) 2019-12-17 15:07:25 -08:00
Andrey Lushnikov
4bb3c41faa
docs(devops): document building firefox on Linux 2019-12-17 11:09:49 -08:00
Yury Semikhatsky
3cea9a1717
feat(webkit): implement DOM.describeNode for retrieving content frame (#275) 2019-12-17 11:39:59 -07:00
Yury Semikhatsky
68a03c2e84
fix(webkit): mac build (#267) 2019-12-16 17:58:04 -07:00
Yury Semikhatsky
6d404b0827
feat(webkit): support runBeforeUnload parameter in Target.close (#265) 2019-12-16 17:28:14 -07:00
Yury Semikhatsky
8baac0bc85 browser(webkit): mac build (#262) 2019-12-16 16:22:36 -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
Yury Semikhatsky
6b9f475217
fix(webkit): report stopped loading in subframes, force context on failure (#259) 2019-12-16 15:22:45 -07:00
Andrey Lushnikov
5be580b88e
docs(buildbots): document preventing macbook sleep 2019-12-16 11:56:09 -08:00
Yury Semikhatsky
02fa4dd7ca fix: balance ref/unref calls for the default data manager (#256) 2019-12-16 10:05:52 -08:00
Yury Semikhatsky
ffd45a3783 fix(webkit): use HashMap traits that allow 0 as key (#255) 2019-12-16 09:51:43 -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
Andrey Lushnikov
9fa7e4f530 devops: fetch remote before exporting 2019-12-13 17:26:08 -08:00
Pavel Feldman
b1820bff85 fix(webkit): fix WK/Mac compile 2019-12-13 17:10:16 -08:00
Pavel Feldman
08f0823873 browser(firefox): roll FF to beta ToT (#245) 2019-12-13 16:37:45 -08:00
Yury Semikhatsky
08fc20c78e browser(webkit): add Browser.setIgnoreCertificateErrors to the protocol (#242) 2019-12-13 15:04:58 -08:00
Pavel Feldman
cb659bc8ba browser(webkit): rebaseline webkit on new master (#240) 2019-12-13 14:35:03 -08:00
Pavel Feldman
738502b0f0
fix(resize): wait for the ack when resizing gtk (#230) 2019-12-12 17:49:48 -08:00
Andrey Lushnikov
ea1decbeee devops: document fix for firefox build from launchctl 2019-12-12 15:59:17 -08:00
Yury Semikhatsky
af94e7a8c9 fix(webkit): keep developer extras enabled when changing page preferences (#229)
* fix(webkit): keep developer extras enabled when changing page preferences

* incorporate Pavel's changes to enable inspector eval when js is disabled
2019-12-12 12:01:22 -08:00
Pavel Feldman
37cacb12f5
fix(webkit): open URL passed in the command line (#221) 2019-12-12 10:23:25 -08:00
Dmitry Gozman
4474369dac feat(webkit): instrument frameAttached (#226) 2019-12-12 10:14:04 -08:00
Pavel Feldman
6b57f67bda
fix(webkit): implement headless popups (#220) 2019-12-11 20:18:42 -08:00
Andrey Lushnikov
b76266d874 devops: fix windows buildbot polling 2019-12-11 18:21:20 -08:00
Andrey Lushnikov
33864888d9
devops: document git autocrlf fix on windows 2019-12-11 18:17:25 -08:00
Dmitry Gozman
4861152766 browser(firefox): instrument document.open load event (#218) 2019-12-11 17:53:46 -08:00
Andrey Lushnikov
9e381a9d50 devops(firefox): move packaging to archive.sh 2019-12-11 16:56:49 -08:00
Andrey Lushnikov
d86c51b293 devops: report all buildbot failures 2019-12-11 14:21:47 -08:00
Andrey Lushnikov
eea77346c0
docs(devops): update buildbots readme 2019-12-11 14:06:41 -08:00
Andrey Lushnikov
aa6775f593 chore: fix devops readme 2019-12-11 14:04:18 -08:00
Andrey Lushnikov
8295e6577e chore: rename devops docs to README.md 2019-12-11 14:01:58 -08:00
Andrey Lushnikov
0e03c44c01 devops: unify reporting messages 2019-12-10 18:43:16 -08:00
Andrey Lushnikov
f2a4467166 devops: fix checkout_build_archive_upload.sh script 2019-12-10 18:23:50 -08:00
Pavel Feldman
30fb7b025f
feat(webkit): implement bypass csp (#206) 2019-12-10 17:54:27 -08:00
Andrey Lushnikov
7f5e52b97a devops: teach buildbots to report their status 2019-12-10 17:46:43 -08:00
Pavel Feldman
44d944c18b feat(webkit): use proper default context in gtk minibrowser (#205) 2019-12-10 17:23:59 -07: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
Andrey Lushnikov
d96cd76852
browser(webkit): support keyboard on Mac & GTK (#196)
Review URL: d360425422
2019-12-10 10:39:40 -08:00
Pavel Feldman
5ab6514633 feat(webkit): run bootstrap script in all worlds (#193) 2019-12-09 23:17:33 -08:00
Pavel Feldman
102b47ddf9
feat(webkit): implement node adoption (#190) 2019-12-09 17:01:11 -08:00
Pavel Feldman
1606697c7e
feat(webkit): implement world creation (#185) 2019-12-09 15:22:11 -08:00
Andrey Lushnikov
cb92cd0d5c devops: teach {firefox,webkit}/build.sh to build current branch
The check for the proper branch has moved to
`checkout_build_archive_upload.sh` script.
2019-12-09 14:38:23 -08:00
Andrey Lushnikov
b6e518399c devops: properly extract remote url while running export checks
Turns out `git rmeote get-url` resolves the `insteadOf` substitutions
and ends up with a different URL.

This patch bypasses these substitutions to properly validate
remote url.
2019-12-09 14:06:55 -08:00
Pavel Feldman
122837113b
feat(webkit): use NSEvents for mouse event simulation (#180) 2019-12-09 12:20:58 -08:00
Yury Semikhatsky
4f5fd4870c
feat(webkit): implement setPauseOnStart in browser target agent (#176) 2019-12-08 16:14:17 -07:00
Pavel Feldman
ba4cfe908c
fix(webkit): make headless webview active and focused at all times (#178) 2019-12-08 13:22:47 -08:00
Yury Semikhatsky
9249ccbc77
feat(webkit): extend TargetInfo with information about related targets (#174) 2019-12-07 18:15:31 -07:00
Dmitry Gozman
3fe20ba516 fix(webkit): disable throttling and pass frameId to load/domcontentloaded (#173) 2019-12-07 16:35:32 -08:00
Yury Semikhatsky
6294f0248a feat(webkit): disable back-forward cache when inspector client is connected (#170) 2019-12-06 15:26:50 -08:00
Joel Einbinder
e727ee0c81 fix(doc): Make browser_patches/contributing.md more straightforward (#167) 2019-12-06 15:56:37 -07:00
Pavel Feldman
2c185e3ead feat(webkit): move quads to float space (#162) 2019-12-05 17:57:21 -08:00
Pavel Feldman
69d2d81c05 feat(webkit): emulate background and device scale (#157) 2019-12-05 14:44:35 -08:00
Andrey Lushnikov
ed39499cea
rebaseline(webkit): rebaseline webkit atop of @131efe8ad (#154)
Review URL: 36a589c93d
2019-12-05 14:01:25 -08:00
Pavel Feldman
4106091870
fix: release webview upon page.close (#147) 2019-12-04 23:28:47 -08:00
Yury Semikhatsky
5432d16052 feat(backend): add go back/forward commands to Page (#143) 2019-12-04 18:14:34 -08:00
Andrey Lushnikov
d54939f861
feat(osx): implement clicks on WebKit (#142)
Review URL: 5a76cd676a

This implements mouse events on WebKit-Mac. This uses a similar
approach to the GTK port, creating a NativeWebMouseEvent without
a backing native event and dispatching it to WebPageProxy.

WebKit WebDriver implementation takes a different approach where they
employ `[nswindow sendEvent:]` method. Unfortunately for us, it's
quite challenging to make this method work for the headless mode
on OSX.

For future reference: chromium has a nice
"event_generator_delegate_mac.mm" that dispatches events right into
`NSResponder`. This approach didn't work as well for us here.
2019-12-04 18:02:39 -08:00
Pavel Feldman
46a46d8da1
feat(webkit): respect default context in gtk (#141) 2019-12-04 17:07:28 -08:00
Pavel Feldman
e358b47f76
feat(dialogs): implement dialogs in WebKit + headless (#132) 2019-12-04 11:36:33 -08:00
Pavel Feldman
ffb6d0fa84
feat(webkit): sort out execution contexts (#131) 2019-12-04 10:42:45 -08:00
Pavel Feldman
c370327b4d
feat(webkit): emulate mac viewport emulation (#130) 2019-12-03 17:10:45 -08:00
Pavel Feldman
01b321d014
feat(webkit): implement headless on Mac (#128) 2019-12-03 14:10:01 -08:00
Yury Semikhatsky
99f9b11be8 chore(scripts): ignore untracked files during patch export (#124) 2019-12-03 10:47:48 -08:00
Yury Semikhatsky
9cb0c95f5d feat(webkit): implement setJavaScriptEnabled in WebKit (#123) 2019-12-03 10:21:24 -08:00
Pavel Feldman
b3f55716ab feat(webkit): implement browser contexts on Mac, cookies everywhere (#120)
Review URL: e7d7316e21
2019-12-02 15:37:05 -08:00
Yury Semikhatsky
8cf8eec3a0 chore(scripts): ignore untracked files and print custom checkout path in logs (#117) 2019-12-02 12:58:44 -08:00
Pavel Feldman
d70133b232
feat(webkit): implement file chooser interception (#97) 2019-11-27 08:47:37 -08:00
Andrey Lushnikov
1c40eb0b28
browser(webkit): implement features in WebKit (#89)
This patch adds:
- JSDialogs to webkit
- Accessibility

As a drive-by, it fixes all license headers for the files we added to
WebKit.
2019-11-26 14:09:12 -08:00
Pavel Feldman
d7b727df1c browser(firefox): implement new set/clearCookies contract (#83) 2019-11-26 09:00:10 -08:00
Andrey Lushnikov
e3a8c2d033 devops: fix check_cdn.sh to be PWD-independent 2019-11-25 18:14:04 -08:00
Andrey Lushnikov
ab6e358c4d devops: safety checks for buildbot scripts 2019-11-25 17:58:08 -08:00
Andrey Lushnikov
13282c9ac5 devops: teach check_cdn to accept browser 2019-11-25 17:58:08 -08:00
Andrey Lushnikov
a13556c27c devops: fix buildbot-windows.sh 2019-11-25 17:11:36 -08:00
Andrey Lushnikov
2887312330 devops: fix win buildbot 2019-11-25 17:02:19 -08:00
Andrey Lushnikov
d756f616f5 devops: build continuosly if needed 2019-11-25 16:06:18 -08:00
Andrey Lushnikov
3866a00ad5 devops: fix win64 ffox build 2019-11-25 15:57:52 -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
Andrey Lushnikov
860915b9da devops: fix firefox win64 build 2019-11-25 14:01:39 -08:00
Pavel Feldman
eaa5e93b8b feat(filechooser): supported file chooser in FF (#70) 2019-11-25 13:56:39 -08:00
Andrey Lushnikov
2914f9a1f1 devops: fix prepare_checkout with custom checkout path 2019-11-23 16:22:04 -08:00
Andrey Lushnikov
efa5a559ef devops(webkit): teach pw_run.sh to work with local custom checkout 2019-11-23 00:00:03 -08:00