Yury Semikhatsky
4de14e7d2c
feat(webkit): roll to r1673 ( #15276 )
2022-06-30 12:07:33 -07:00
Dmitry Gozman
0254cd3be7
fix(firefox): launch races ( #15259 )
...
Potential fixes to avoid startup races:
- Wait for "juggler listening" message.
- Make sure `transport.onclose` is called when connecting to the transport after the actual pipe closure.
2022-06-30 10:58:22 -07:00
Max Schmitt
71fc53bbf8
fix(matchers): toHaveClass on SVG elements ( #15267 )
...
Fixes #15260
2022-06-30 07:01:26 -07:00
Ross Wollman
9cafab382b
docs: clarify use of browser.close ( #15255 )
2022-06-29 18:41:21 -07:00
Dmitry Gozman
ff2647cfa3
fix(network): remove races from sizes calculation ( #15208 )
...
- Do not resolve raw headers upon `loadingFinished`, since they may still come later in
`responseReceivedExtraInfo`.
- Introduce separate promises for `encodedBodySize`, `transferSize` and `responseHeadersSize`.
- Make sure we resolve each of them either with data available
from the browser, or a fallback calculation.
- Set raw response headers for redirects on WebKit.
- Do not stall on cached responses in Chromium, they have erroneously set `hasExtraInfo` flag.
- Use `transferSize` that is available in Firefox protocol.
2022-06-29 18:11:22 -07:00
Max Schmitt
b3c31f5b13
fix: do not throw on removeListener without listener ( #15224 )
...
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-29 13:53:13 +02:00
Playwright Service
b554344907
feat(chromium-tip-of-tree): roll to r1019 ( #15172 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-29 13:29:28 +02:00
Dmitry Gozman
8220ab1379
feat(firefox): roll ff 1328 and ff-beta 1330 ( #15185 )
2022-06-29 03:04:46 -07:00
Max Schmitt
e34fa4feeb
fix(evaluate): fallback to toJSON if it exists when serializing ( #15188 )
...
* fix(evaluate): fallback to toJSON if it exists when serializing
* fix test in ff
* window.performance test
2022-06-29 08:07:32 +02:00
Pavel Feldman
6a8d835145
chore: allow updating har while routing ( #15197 )
2022-06-28 15:09:36 -07:00
Sébastien Règne
f43fe4855d
docs: fix route.fallback typo ( #15173 )
2022-06-28 13:46:54 -07:00
Max Schmitt
aa1e736f3f
chore: print response body when browser download failed ( #15101 )
2022-06-28 18:19:31 +02:00
Pavel Feldman
8c590cb2af
chore: undeprecate sync headers() ( #15152 )
2022-06-27 10:34:32 -07:00
Playwright Service
fab12c70f7
feat(chromium): roll to r1012 ( #15111 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-06-27 10:01:10 +02:00
Dmitry Gozman
660516d22a
fix(network): make allHeaders wait until all headers are available ( #15094 )
...
fix(network): make allHeaders wait until all header are available
Before, calling `allHeaders()` from `page.on('request')` would yield
provisional headers instead.
With these changes:
- In Firefox, all headers are available immediately.
- In Chromium, all headers are available upon requestWillBeSentExtraInfo.
- In WebKit, all headers are available upon responseReceived.
- In all browsers, intercepted requests use "provisional" headers
as all headers, since there is no network stack to change the headers.
Drive-by: migrated Chromium to `hasExtraInfo` flags that simplifies
the logic quite a bit.
2022-06-24 13:51:09 -07:00
Dmitry Gozman
2f11807552
fix(click): no element should intercept events over the target frame ( #15043 )
...
When target element is inside a non-main frame, there could be an
overlay in some of the parent frames that intercepts pointer events.
However, we never detected this case.
2022-06-24 13:17:25 -07:00
Pavel Feldman
ae6f48c4b8
fix(route): match against updated url while chaining ( #15112 )
2022-06-24 10:48:16 -07:00
Stuart Lang
eba2bdffb9
docs: fix typo: surved -> served ( #15105 )
2022-06-24 15:06:57 +02:00
Pavel Feldman
7bd72716f9
feat(har): introduce the slim mode ( #15053 )
2022-06-22 14:44:12 -07:00
Dmitry Gozman
033c250f6d
fix(har): remove types/har.d.ts, update har.ts per spec ( #15046 )
...
Drive-by: typo fix in `notFound` option name.
2022-06-22 12:16:29 -07:00
Playwright Service
01abff2090
feat(chromium-tip-of-tree): roll to r1017 ( #15008 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-22 19:38:38 +02:00
Max Schmitt
fb441faab1
fix: request/response events with backgroundPages ( #15032 )
2022-06-22 17:23:51 +02:00
Pavel Feldman
9525bedc1f
feat(har): re-add routeFromHAR ( #15024 )
2022-06-21 22:12:37 -07:00
Playwright Service
da17490972
feat(webkit): roll to r1668 ( #15012 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-21 17:22:09 -07:00
Playwright Service
c0c1ada9fe
feat(webkit): roll to r1667 ( #14960 )
2022-06-21 14:04:52 -07:00
Dmitry Gozman
6af6fab84a
fix(har): internal redirect in renderer-initiated navigations ( #15000 )
...
fix(har): internal redirect in renderer-initiated navigations
2022-06-21 11:01:01 -07:00
Max Schmitt
3a61938628
chore: mark 1.24-next ( #14857 )
2022-06-21 19:32:15 +02:00
Tommi Finnilä
6b1bd6ec16
fix: Add Ubuntu 22.04 deps for arm64 ( #15007 )
2022-06-21 13:51:19 +02:00
Elias Sørensen
6ca18b3bb8
chore: support Pop!_OS 22.04 versioning ( #14859 )
...
Co-authored-by: Elias Sorensen <elias.soerensen@usercentrics.com>
2022-06-21 03:02:48 -07:00
Ross Wollman
0f8114f6a8
docs: replace serviceWorkers workaround ( #14902 )
2022-06-20 19:31:19 -07:00
Pavel Feldman
5e6b493bc9
doc(har): add more details into the har doc ( #14998 )
2022-06-20 17:54:39 -07:00
Dmitry Gozman
bff90b5abb
fix(chromium): disable back-forward cache ( #14996 )
...
Otherwise, back/forward navigation does not intercept requests.
2022-06-20 17:27:45 -07:00
Pavel Feldman
883e4d449a
test(har): add more har tests ( #14997 )
2022-06-20 17:22:32 -07:00
Pavel Feldman
aaafb77036
feat(har): disambiguate using matching headers ( #14995 )
2022-06-20 16:41:53 -07:00
Pavel Feldman
b5524aa756
chore(har): brush up post data serialization ( #14994 )
2022-06-20 15:29:13 -07:00
Dmitry Gozman
e3da3ebfa4
feat(har): do not expose HAR types, remove HARResponse fulfill ( #14992 )
2022-06-20 15:19:54 -07:00
Pavel Feldman
eb87966441
feat(har): disambiguate requests by post data ( #14993 )
2022-06-20 14:14:40 -07:00
Ross Wollman
c3bbf8963d
test: installation test for CDN failover ( #14963 )
2022-06-20 11:24:23 -07:00
Pavel Feldman
920f1d52fc
chore: allow routing by uncompressed har ( #14987 )
2022-06-20 11:07:53 -07:00
Pavel Feldman
e5372c3421
chore: move har router into local utils ( #14967 )
2022-06-18 20:24:55 -07:00
Yury Semikhatsky
ed6b14f0f4
fix(har): restart redirected navigation ( #14939 )
2022-06-17 21:17:30 -07:00
Pavel Feldman
030e7d211c
chore(har): allow replaying from zip har ( #14962 )
2022-06-17 16:11:22 -07:00
Max Schmitt
822b86d8a4
chore: add CDN download fallbacks ( #14933 )
2022-06-17 11:47:32 -07:00
Playwright Service
466d50e3e3
feat(chromium): roll to r1011 ( #14948 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-17 18:41:06 +02:00
dependabot[bot]
36c9abfb2e
chore(deps): bump jpeg-js from 0.4.3 to 0.4.4 in /packages/playwright-core/bundles/utils ( #14942 )
...
* chore(deps): bump jpeg-js in /packages/playwright-core/bundles/utils
Bumps [jpeg-js](https://github.com/eugeneware/jpeg-js ) from 0.4.3 to 0.4.4.
- [Release notes](https://github.com/eugeneware/jpeg-js/releases )
- [Commits](https://github.com/eugeneware/jpeg-js/compare/v0.4.3...v0.4.4 )
---
updated-dependencies:
- dependency-name: jpeg-js
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
* license
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-17 18:40:20 +02:00
Pavel Feldman
e9069bef6b
fix(body): fetch body explicitly for prefetched scripts ( #14941 )
2022-06-16 22:07:43 -07:00
Pavel Feldman
be64e9ce66
chore(har): attach resources for .zip hars ( #14938 )
2022-06-16 18:27:25 -07:00
Pavel Feldman
245c33a5d4
feat(har): allow storing content as separate files ( #14934 )
2022-06-16 16:33:32 -07:00
Yury Semikhatsky
2bdb0998bd
feat(cli): block-service-workers option ( #14931 )
2022-06-16 16:03:35 -07:00
Playwright Service
c17dbe3ab3
feat(chromium-tip-of-tree): roll to r1016 ( #14912 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-16 19:36:37 +02:00
Dmitry Gozman
cddf3293cf
docs: mention chaining in locator.filter ( #14920 )
2022-06-16 10:05:30 -07:00
Dmitry Gozman
cdb862767f
fix(page): "load" event should fire before "waitForLoadState" resolves ( #14897 )
...
Currently, `loadstate` and `load` are two separate events in the protocol,
and are fired in this order. As a result, `waitForLoadState()` sometimes
resolves before the `'load'` event is fired, which is unexpected.
Also fixes a flaky test that assumed `load` event comes after `domcontentloaded`
for the empty page, which is not always a case in Chromium.
2022-06-16 09:35:53 -07:00
Yury Semikhatsky
79378dd1eb
fix: add pw:api logging to har router ( #14903 )
2022-06-16 07:48:57 -07:00
Yury Semikhatsky
c349c1d57f
feat: newContext.har ( #14892 )
...
Replaced {Page,BrowserContext}.(un)routeFromHar with browser.newContext.har.
2022-06-15 16:35:44 -07:00
Pavel Feldman
225ab68d1c
fix(test): fix the route test ( #14890 )
2022-06-15 16:15:45 -07:00
Pavel Feldman
b8fece7204
chore: allow joining async handlers ( #14893 )
2022-06-15 15:27:31 -07:00
Yury Semikhatsky
df63ae9dce
docs: update strict routeFromHar default value ( #14886 )
2022-06-15 09:32:40 -07:00
Pavel Feldman
464cbb7457
feat(chromium): allow attaching to other targets as to pages ( #14873 )
2022-06-15 09:31:32 -07:00
Yury Semikhatsky
259c8d64a5
feat: Page.routeFromHar ( #14870 )
2022-06-15 08:41:46 -07:00
Dmitry Gozman
06c8d8e31c
chore: use channels types instead of a copy in server ( #14874 )
...
This is to avoid duplicating types for no reason.
2022-06-14 22:02:15 -07:00
Yury Semikhatsky
e00a26a11d
feat(route): fulfill with HARResponse ( #14865 )
2022-06-14 15:07:22 -07:00
Playwright Service
c8283cf9de
feat(chromium): roll to r1010 ( #14863 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-14 23:18:03 +02:00
Playwright Service
81eaf764fc
feat(webkit): roll to r1666 ( #14868 )
2022-06-14 13:57:57 -07:00
Dmitry Gozman
e640f553b5
fix(connectOverCDP): make sure downloads work in default context ( #14864 )
2022-06-14 12:36:35 -07:00
Pavel Feldman
48f98673ef
chore: remove stray fallback overrides check
2022-06-13 18:06:01 -07:00
Pavel Feldman
9cf068ad06
feat(fallback): allow falling back w/ overrides ( #14849 )
2022-06-13 17:56:16 -07:00
Ross Wollman
3974d1b359
revert( #14797 ): fix(test runner): collect artifacts when calling browser.close() ( #14846 )
...
Revert "fix(test runner): collect artifacts when calling `browser.close()` (#14797 )"
This reverts commit c7a28ac7e9 .
Looks like it broke a bunch of tracing tests:
* Good: https://github.com/microsoft/playwright/runs/6838098316?check_suite_focus=true
* First Bad: https://github.com/microsoft/playwright/runs/6838104691?check_suite_focus=true
* Still bad on HEAD (88664c39c9 ): https://github.com/microsoft/playwright/runs/6868333846?check_suite_focus=true
2022-06-13 17:20:59 -07:00
Andrew Branch
26e22c9a89
fix(types): compilation error in TypeScript 4.8 ( #14847 )
2022-06-13 16:39:55 -07:00
Ross Wollman
61536098be
docs: fix serviceWorkers formatting ( #14845 )
2022-06-13 15:18:24 -07:00
Pavel Feldman
dcdd3c3cdb
feat(route): explicitly fall back to the next handler ( #14834 )
2022-06-13 12:30:51 -07:00
Playwright Service
939e1877fb
feat(webkit): roll to r1663 ( #14775 )
2022-06-13 11:19:44 -07:00
Playwright Service
dbc90b23ea
feat(chromium-tip-of-tree): roll to r1015 ( #14832 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-13 19:35:26 +02:00
Max Schmitt
48b48ee8e8
chore: hide Buffer deprecation warning during tests ( #14767 )
2022-06-13 19:31:30 +02:00
Pavel Feldman
c7b3f4646f
fix(strict): escape css class names when generating selectors ( #14810 )
2022-06-12 09:39:30 -07:00
Pavel Feldman
76abb3a5be
chore: unify tab generation ( #14802 )
2022-06-10 17:34:31 -07:00
Dmitry Gozman
7c0bff15ca
feat(fulfill): improve fulfilling from har ( #14789 )
...
- `har` option is now an object `{ path, fallback }`.
- Allows falling back to `abort()`, `continue()` or throwing.
- Matches based on url + method.
- Follows redirects in the HAR file.
- Nice error/stack when throwing.
- Tests.
2022-06-10 14:26:45 -07:00
Dmitry Gozman
c7a28ac7e9
fix(test runner): collect artifacts when calling browser.close() ( #14797 )
...
Previously, we only collected artifacts on context closure.
However, in serial mode it is possible to close the browser instead.
2022-06-10 14:11:34 -07:00
Dmitry Gozman
868e00253f
feat(har): store textual content without base64 encoding ( #14772 )
2022-06-10 14:10:52 -07:00
Pavel Feldman
7a568a2952
feat(route): chain routes ( #14771 )
2022-06-10 09:06:39 -07:00
Playwright Service
a98394033c
feat(chromium-tip-of-tree): roll to r1014 ( #14742 )
...
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-10 15:59:49 +02:00
Dmitry Gozman
6822d03f0b
fix(cli): default to no timeout ( #14769 )
2022-06-09 21:07:57 -07:00
Max Schmitt
a2e8c17fbf
chore: fix WK ubuntu 22 deps on Docker ( #14770 )
2022-06-10 00:00:05 +02:00
Max Schmitt
3853014fa7
chore: add ubuntu 22 support ( #14588 )
2022-06-09 13:20:18 +02:00
Playwright Service
d5e5a28c31
feat(webkit): roll to r1659 ( #14727 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-09 10:07:09 +02:00
Dmitry Gozman
e975aef961
feat(route): fulfill from har ( #14720 )
...
feat(route): fulfill from har
This allows to use pre-recorded HAR file to fulfill routes.
2022-06-08 20:29:03 -07:00
Ross Wollman
85d03714d9
feat: add allow/block serviceWorkers option ( #14714 )
...
Adds cross-browser support for easily allowing/blocking Service Workers via a Context option.
Includes plumbing for Playwright Test's `use`.
Resolves #14522 .
Relates #1090 .
Supercedes #14321 .
2022-06-08 18:27:51 -04:00
Ross Wollman
fccee89b41
feat: add Response.fromServiceWorker flag ( #14715 )
...
Resolves #14666 .
Relates #1090 .
Supercedes #14321 .
2022-06-08 17:34:19 -04:00
Dmitry Gozman
176ab7e48b
chore: make LocalUtils easily available on the client ( #14717 )
...
Instead of plumbing it around, expose it through Connection.
2022-06-08 13:22:05 -07:00
Dmitry Gozman
6c739eb345
feat(cli): option to record har ( #14696 )
...
`npx playwright open --save-har=file.har` produces a HAR file that
can be later inspected or used for mocks.
`--save-har-glob="**/*.{png,woff2}"` option can be used to
produce a smaller har that only contains entries matching the glob.
2022-06-08 10:59:50 -07:00
Yury Semikhatsky
7f026dd64c
feat(webkit): roll to r1658 ( #14709 )
...
Language override behavior changed upstream in WebKit/WebKit@039ebd9
New logic is closer to the actual behavior of WebKit on macOS, meaning that when the user changes system language the actual locale changes according to some weird OS rules:
ru-RU => navigator.language === 'ru'
fr-CH => navigator.language === 'fr-FR'
es-MX => navigator.language === 'es-MX'
Our locale emulation is aligned with that, so setting locale to fr-CH will result in fr-FR etc.
2022-06-08 10:16:49 -07:00
Dmitry Gozman
fdcdd58d7f
feat(har): introduce urlFilter ( #14693 )
...
This is a glob or regex pattern that filters entries recorder in the HAR.
2022-06-07 18:09:47 -07:00
Playwright Service
c1a489ee4e
feat(firefox-beta): roll to r1329 ( #14612 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-07 17:42:31 +02:00
Playwright Service
712ad4ec12
feat(firefox): roll to r1327 ( #14614 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-06-07 17:42:08 +02:00
Playwright Service
cf2c6ee81d
feat(chromium): roll to r1009 ( #14620 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-07 17:38:13 +02:00
Pavel Feldman
ca2afaaebd
chore: update babel ( #14646 )
2022-06-06 15:49:31 -07:00
Sébastien Règne
4c2fc6b6eb
feat(browser): add Browser.BrowserType() method ( #14468 )
2022-06-06 09:46:08 -07:00
Max Schmitt
ee0782b538
fix: hide DeprecationWarning of fd-slicer ( #14638 )
2022-06-04 17:49:35 +02:00
Playwright Service
c7eabf659b
feat(firefox-beta): roll to r1328 ( #14602 )
2022-06-03 16:35:58 -07:00
Playwright Service
67ac3d31bf
feat(firefox): roll to r1326 ( #14604 )
2022-06-03 16:34:27 -07:00
Dmitry Gozman
40bfdb0f4e
fix(codegen): use name attribute for frame elements ( #14609 )
2022-06-02 21:14:01 -07:00
Ross Wollman
978854b859
chore: move multi-select assertion to toHaveValues ( #14595 )
...
Follow-up to e0a87e52d7
2022-06-02 16:01:34 -04:00
Elijah
dbc2494e54
fix: sanitize URLs with vbscript: ( #14325 )
...
fix: sanitize URLs with vbscript:
The vbscript: protocols can be used to run scripts in much the same way as the javascript: protocol. This PR adds in validation for those aforementioned protocols in snapshotterInjected.ts and snapshotRenderer.ts.
2022-06-02 12:25:59 -07:00
Playwright Service
321db57e96
feat(chromium-tip-of-tree): roll to r1012 ( #14581 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-02 18:23:52 +02:00
Ross Wollman
e0a87e52d7
feat: support multi-select/combo box with toHaveValue ( #14555 )
2022-06-02 12:10:28 -04:00
Dmitry Gozman
d00efa0dfe
feat(expect): add ignoreCase option to toHaveText and toContainText ( #14534 )
2022-06-02 05:52:53 -07:00
Playwright Service
82f8af3ff6
feat(chromium-tip-of-tree): roll to r1011 ( #14515 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-02 13:53:56 +02:00
Dmitry Gozman
c4581e54c0
fix(click): detect iframe overlays that cover target element ( #13876 )
...
This restores the old hit target check, in addition to the new
hit target interceptor.
This way, we got some coverage for iframes and other quirky cases,
but keep the bullet-proof hit target check in place.
2022-06-01 15:23:41 -07:00
Dmitry Gozman
dbcf039717
chore: remove experimental types ( #14560 )
2022-06-01 15:22:43 -07:00
Playwright Service
c53676e605
feat(firefox): roll to r1325 ( #14512 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-06-01 01:39:28 -07:00
Playwright Service
ad42dac56f
feat(firefox-beta): roll to r1327 ( #14507 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-31 05:46:53 -07:00
Playwright Service
f087e39c01
feat(chromium): roll to r1008 ( #14448 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-05-30 15:04:05 +02:00
Yury Semikhatsky
abced7223c
fix: filechooser interception in OOPIFs ( #14432 )
2022-05-27 13:04:58 -07:00
Playwright Service
962d933c78
feat(chromium-tip-of-tree): roll to r1010 ( #14446 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-27 21:49:19 +02:00
Pavel Feldman
6efb1ec40c
fix(ts): export types explicitly ( #14428 )
2022-05-26 13:09:32 -07:00
Ross Wollman
cfc9aa64a6
chore: produce meaningful bundle notice diffs ( #14396 )
2022-05-24 22:19:54 -07:00
Pavel Feldman
2fab2c1ca1
fix(tracing): invalidate non-stalling evaluates on crash ( #14392 )
2022-05-24 14:02:32 -07:00
Playwright Service
c12a9077d5
feat(chromium): roll to r1007 ( #14307 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-24 11:26:20 +03:00
Max Schmitt
e02e5e66f0
chore: bump TypeScript to 4.6 ( #14358 )
2022-05-23 22:59:33 +03:00
Playwright Service
ae37decd73
feat(webkit): roll to r1648 ( #14318 )
2022-05-23 09:08:57 -07:00
Pavel Feldman
a1324bd935
fix(route): support route w/ async handler & times ( #14317 )
2022-05-21 21:55:46 -07:00
Pavel Feldman
b92163176d
chore: render titles on all matching nodes ( #14316 )
2022-05-20 22:09:10 -07:00
Ross Wollman
fbb364c1cd
fix: page.locator.focus() and page.locator(…).type(…) ( #14267 )
...
Fixes focus and blur management when `page.locator(…).focus()` and `page.locator(…).type(…)` are used which was regressed by 7a5b070 (#13510 ).
#13510 relied on an implicit assumption that this (conditional) [`blur`](7a5b070e95/packages/playwright-core/src/server/injected/injectedScript.ts (L672) ) call would always be followed by a call that resulted in a newly focused element via this [`focus`](7a5b070e95/packages/playwright-core/src/server/injected/injectedScript.ts (L674) ) call.
However, some elements are [not focusable](https://html.spec.whatwg.org/multipage/interaction.html#focusable-area ), so we were blurring incorrectly, and losing focus that we should have maintained.
Two regression tests were added that pass on the commit prior to 7a5b070e95 (and match manual testing/expectations):
* `page.locator(…).focus()`: _keeps focus on element when attempting to focus a non-focusable element_
* `page.locator(…).type(…)`: _should type repeatedly in input in shadow dom_
Additionally, a third test (_should type repeatedly in input in shadow dom_) was added to check the invariant from #13510 that states:
> This affects [contenteditable] elements, but not input elements.
and allows us to introduce the targeted fix (contenteditble check before blur) without breaking FF again.
And _should type repeatedly in contenteditable in shadow dom with nested elements_ was added to ensure the above fix works with nest contenteditble detection.
Fixes #14254 .
2022-05-19 14:31:56 -07:00
Andrey Lushnikov
9a73dfe773
feat(chromium-tip-of-tree): roll Chromium TOT to 1008 ( #14279 )
2022-05-19 09:29:44 -07:00
github-actions[bot]
d6780c5b29
feat(chromium-tip-of-tree): roll to r1007 ( #14225 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Andrey Lushnikov <aslushnikov@gmail.com>
2022-05-19 07:10:18 -07:00
Pavel Feldman
d5ea1b38f0
fix(recorder): remove waitForNavigation from codegen ( #14166 )
2022-05-18 10:02:09 -07:00
Pavel Feldman
b5beeab98b
fix(click): climb the hit target hierarchy to anchor ( #14235 )
...
fix(click): climb the hit target hierarcchy to anchor
2022-05-18 10:01:34 -07:00
Pavel Feldman
fe0afd6b5c
fix(toHaveProperty): serialize falsy arguments as well ( #14232 )
2022-05-17 14:44:12 -07:00
Max Schmitt
9256de5f48
chore: fix wrong toHaveScreenshot defaults in docs ( #14200 )
2022-05-16 22:26:23 +03:00
github-actions[bot]
f1307f4a4d
feat(chromium): roll to r1006 ( #14192 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-16 10:56:38 -07:00
Andrey Lushnikov
f7adbd83ee
chore: cut v1.22.0 ( #14098 )
2022-05-12 11:12:01 -07:00
Dmitry Gozman
f6712ec43a
fix(tracing): workaround chromium scrollTop slowness ( #14114 )
...
References #14037 .
We used to query and save all non-zero `scrollTop`/`scrollLeft` to restore the page perfectly. However, this became very slow with Chromium v100 regression (see issue).
This change only queries and stores `scrollTop`/`scrollLeft` for elements that are ancestors of the action target. The resulting snapshot does not perfectly recreate the original screen, but should be good enough to inspect the action.
2022-05-12 10:55:29 -07:00
Dmitry Gozman
0e2855348c
feat(locators): remove layout locators ( #14129 )
2022-05-12 18:50:19 +01:00
Max Schmitt
2844623109
docs: add route class -> networking guide reference ( #14092 )
2022-05-11 16:07:00 +01:00
Dmitry Gozman
b753ff8686
chore: split injected utils into proper files ( #14093 )
2022-05-11 13:49:12 +01:00
Pavel Feldman
c99ca17199
chore: disable AvoidUnnecessaryBeforeUnloadCheckSync on chromium ( #14080 )
2022-05-10 14:55:44 -07:00
Dmitry Gozman
ba0cfaeb2d
fix(chromium): work around about:blank issue on Chromium ( #14068 )
...
fix(chromium): work around about:blank issue on Chromium
We don't receive the `loaderId` which translates to `newDocumentId`,
so we expect the same-document navigation. Instead, we can wait
for any new-document navigation as a workaround, only for `about:blank`.
This also reverts commit f0f65fa247 .
2022-05-10 20:32:19 +01:00
github-actions[bot]
653373a75a
feat(chromium-tip-of-tree): roll to r1005 ( #14064 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-10 10:05:15 -07:00
github-actions[bot]
8a517c6d82
feat(webkit): roll to r1641 ( #14061 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-10 07:41:46 -07:00
Andrey Lushnikov
3ba1ea5c39
fix: support installing dependencies on non-ubuntu. ( #14010 )
...
We should not fast-return if someone tries to run
`npx playwright install-deps` on Debian.
Instead, we should warn users, fallback to Ubuntu 20.04 dependencies,
and proceed.
2022-05-10 04:05:39 -07:00
Pavel Feldman
cf89a36181
chore: serialize circular objects ( #14045 )
2022-05-09 18:51:53 -07:00
Pavel Feldman
f0f65fa247
Revert "feat(chromium): roll to r1005 ( #13999 )"
...
This reverts commit 56b3bca8db .
2022-05-09 18:28:39 -07:00
Pavel Feldman
e55f7bd896
feat(bindings): best-effort serialize circular structures ( #14008 )
2022-05-09 15:07:04 -07:00
Max Schmitt
04fafcabd8
fix: leaking server side objects ( #13991 )
2022-05-09 17:34:00 +01:00
github-actions[bot]
56b3bca8db
feat(chromium): roll to r1005 ( #13999 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Max Schmitt <max@schmitt.mx>
2022-05-09 15:52:00 +01:00
Pavel Feldman
a052211dbf
chore: do not reset internal bindings for reuse ( #14019 )
2022-05-09 07:44:20 -07:00
github-actions[bot]
f4dc067a49
feat(chromium-tip-of-tree): roll to r1004 ( #13966 )
...
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2022-05-09 15:12:47 +01:00
Dmitry Gozman
6931d89eaf
feat(locators): rename locator.that to locator.filter ( #14025 )
2022-05-08 21:59:40 +01:00
Dmitry Gozman
64cd55089a
chore: role selectors non-experimental ( #14021 )
2022-05-08 11:07:01 +01:00
Dmitry Gozman
c3cf7ee4a7
feat(layout locators): remove maxDistance option ( #14013 )
2022-05-08 07:18:16 +01:00
Pavel Feldman
5c9e7f48e0
fix(debug): do not pause on internal calls, update ct docs ( #14018 )
2022-05-07 19:56:25 -07:00