Yury Semikhatsky
9154f4b6e0
feat(webktt): explicitly enable Playwright domain on start ( #2315 )
2020-05-21 08:44:57 -07:00
Pavel Feldman
f9b437a49e
chore: pull common functionality into the BrowserTypeBase ( #2312 )
2020-05-20 16:30:04 -07:00
Pavel Feldman
aa0d844c76
chore: introduce utility script for evaluate helpers ( #2306 )
2020-05-20 15:55:33 -07:00
Pavel Feldman
e558f0516b
chore: print the launch error message to console ( #2304 )
2020-05-20 00:10:10 -07:00
Dmitry Gozman
8957c86837
feat(debug): add source maps to evaluates in debug mode ( #2267 )
...
When PLAYWRIGHT_DEBUG_UI is set, we try to find the source
of the function in the current file and source map it.
2020-05-19 08:40:45 -07:00
Pavel Feldman
2bd427ad1d
feat(exposeBinding): a more powerful exposeFunction with source attribution ( #2263 )
2020-05-18 14:28:06 -07:00
Pavel Feldman
99b7aaace8
chore: refactor injected script harness ( #2259 )
2020-05-15 15:21:49 -07:00
Andrey Lushnikov
e035bf3b33
fix: update webkit version ( #2250 )
...
Fix #2245
2020-05-14 16:47:18 -07:00
Dmitry Gozman
63cc126805
fix(webkit): do not swallow init errors ( #2242 )
...
This is a speculative fix to the following issue from the bots:
NON-TEST ERROR #0 : UNHANDLED ERROR
TypeError: Cannot read property 'url' of undefined
at WKPage._onTargetCreated (/Users/runner/runners/2.169.1/work/playwright/playwright/src/webkit/wkPage.ts:274:12)
at process._tickCallback (internal/process/next_tick.js:68:7)
I assume that _initializeSession did swallow an error, so we erroneously
consider Page to be fully initialized (and having main frame).
2020-05-14 15:43:23 -07:00
Dmitry Gozman
e8e761f77f
chore: use internal BrowserOptions to unify browsers ( #2230 )
2020-05-14 13:22:33 -07:00
Dmitry Gozman
650d73445c
fix(actions): do not wait for the created popups ( #2219 )
...
Since we are recommending Promise.all pattern anyway, this special
logic just adds to the possibility of timeout if something goes wrong.
For example, Firefox sometimes send Page.willOpenNewWindowAsynchronously
later than the new target arrives and input action just hangs.
2020-05-13 17:20:33 -07:00
Pavel Feldman
f63ea3ffd2
feat(downloads): expose suggested filename ( #2062 )
2020-05-12 19:23:08 -07:00
Dmitry Gozman
072dcba94a
api(viewport): do not allow isMobile and deviceScaleFactor for null viewports ( #2190 )
...
Also make sure we do not alter viewport when passed null.
2020-05-12 18:31:17 -07:00
Dmitry Gozman
ae8d97cdf9
feat(persistent context): ensure initial about:blank ( #2161 )
...
We declare only the initial about:blank to be a supported usecase, so that
we can support options for the default context in the future.
2020-05-10 15:23:53 -07:00
Dmitry Gozman
33ebe66ad4
fix(webkit): allow contenttype with charset in interception ( #2108 )
2020-05-04 21:49:54 -07:00
Pavel Feldman
f6210ae996
fix(webkit): click moving targets on windows ( #2101 )
2020-05-04 16:30:19 -07:00
Yury Semikhatsky
03ca297890
fix(webkit): make click work with cross-process _blank target ( #2083 )
2020-05-02 10:57:33 -07:00
Pavel Feldman
f8bea85c88
feat(webkit): disable pause on click ( #2077 )
2020-05-01 12:59:18 -07:00
Pavel Feldman
c55db6d315
browser(webkit): roll webkit to 1213 ( #2045 )
2020-04-29 18:40:18 -07:00
Yury Semikhatsky
78b44ed2a0
fix: report new window downloads ( #2019 )
2020-04-29 18:36:24 -07:00
Pavel Feldman
c01e554edd
test: add more pausing tests ( #2040 )
2020-04-29 16:17:03 -07:00
Pavel Feldman
534857269b
fix(console): respect repeat count in webkit ( #2032 )
2020-04-29 12:13:57 -07:00
Dmitry Gozman
b11d7f15bb
feat(input): retry when hit target check fails, prepare for page pause ( #2020 )
2020-04-29 11:05:23 -07:00
Yury Semikhatsky
7c9762fae9
fix: support blob downloads ( #1954 )
2020-04-23 20:04:19 -07:00
Pavel Feldman
5b085fdf03
feat(logger): introduce context-level logger ( #1896 )
2020-04-20 23:24:53 -07:00
Yury Semikhatsky
fb45c75b98
feat(webkit): simulate device orientation events ( #1852 )
2020-04-20 14:43:44 -07:00
Dmitry Gozman
d1a95518be
chore: remove old TODOs, add a test ( #1879 )
2020-04-20 13:01:06 -07:00
Dmitry Gozman
649f37f885
fix(pageerror): report correct error message and stack ( #1862 )
...
The error stack matches the browser format.
2020-04-20 11:37:02 -07:00
Pavel Feldman
1f43ae692f
feat(logging): introduce logger sink api ( #1861 )
2020-04-20 07:52:26 -07:00
Yury Semikhatsky
c359116a3b
fix: create _defaultContext only in persistent mode ( #1854 )
2020-04-18 19:58:11 -07:00
Dmitry Gozman
55b4bc99bd
feat(actions): requery the element when it was detached during the action ( #1853 )
2020-04-18 18:29:31 -07:00
Dmitry Gozman
f5942295d4
feat(api): wait for popups and downloads when performing actions ( #1744 )
2020-04-16 13:09:24 -07:00
Joel Einbinder
036f9e50fa
fix(webkit): allow fufilling requests to redirects ( #1830 )
2020-04-16 12:36:00 -07:00
Dmitry Gozman
5e18378df7
fix(webkit): do not access mainFrame when initialization has failed ( #1825 )
2020-04-16 10:59:27 -07:00
Pavel Feldman
2280126344
api(setInputFiles): introduce page/frame helpers, document, break compat ( #1818 )
2020-04-16 10:25:28 -07:00
Dmitry Gozman
ba36860d79
feat(api): page.unroute to remove routes ( #1813 )
2020-04-15 19:55:22 -07:00
Andrey Lushnikov
0ba823dd6f
feat: introduce page.on('crash') event ( #1782 )
...
Currently, whenever the page crashes, it emits an `'error'` event.
Error event is a special type of event in node.js; if unhandled,
it crashes the process.
Instead of emitting `'error'` event, this patch switches to emitting
`'crash'` event. Playwright users are free to handle the event
however they like, or just to ignore it.
2020-04-15 00:04:35 -07:00
Dmitry Gozman
2e6f544342
chore(webkit): stop using windowOpen signal to determine initial empty page ( #1776 )
2020-04-14 14:51:23 -07:00
Pavel Feldman
368e1cc49b
chore(input): refactor keyboard layout, extract pure layout ( #1681 )
2020-04-11 00:24:17 -07:00
Pavel Feldman
3584205086
fix(chromium): associate navigation requests with navigations ( #1724 )
2020-04-09 19:03:06 -07:00
Pavel Feldman
3dc14eddaf
fix(colorScheme): make light scheme default on all browsers ( #1668 )
2020-04-06 19:49:33 -07:00
Joel Einbinder
b7d0c32338
fix(browser): wait for the pipe to disconnect in browser.close ( #1652 )
...
With WebKit, sometimes the process closes before the stdio is streams are closed. I explicitly wait for the browser disconnect event now when closing.
2020-04-03 16:34:07 -07:00
Dmitry Gozman
ea16e55ba3
fix(lint): import errors ( #1649 )
2020-04-02 20:30:52 -07:00
Pavel Feldman
75571e8eb8
feat(downloads): support downloads on cr and wk ( #1632 )
2020-04-02 17:56:14 -07:00
Joel Einbinder
3d6d9db44a
fix: wait for the process to close when closing the browser ( #1629 )
2020-04-02 16:57:12 -07:00
Pavel Feldman
e241c1bef8
chore: remove web mode ( #1625 )
2020-04-01 14:42:47 -07:00
Pavel Feldman
48516ed7ed
feat(websocket): use proxy web socket on chromium ( #1573 )
2020-03-27 15:18:34 -07:00
Pavel Feldman
00cb4e370f
chore: move transport to object messages ( #1567 )
2020-03-26 23:30:55 -07:00
Dmitry Gozman
60942d0af5
chore(selectors): move selectors logic to selectors.ts ( #1536 )
...
This encapsulates selectors logic in one place, in a preparation for more complex scenarios like main-world selectors or piercing frames.
Note: we had `Page.fill should wait for visible visibilty` test, but we do not actually wait for visible in page.fill(). It happened to pass due to lucky evaluation order.
References #1316 .
2020-03-25 14:08:46 -07:00
Pavel Feldman
c0c9b7f137
test: make debugp collect IO (take 2) ( #1493 )
2020-03-23 15:08:02 -07:00