Commit graph

374 commits

Author SHA1 Message Date
Pavel Feldman 0fab90be79
feat(evaluate): survive null JSON in WK and FF (#352) 2020-01-02 15:06:28 -08:00
Arjun Attam 682e2be15f fix: allow email type in input for fill action (#353) 2020-01-02 14:10:01 -08:00
Pavel Feldman 6a04e1f026 feat(offline+auth): enable those in webkit, make them a part of the core API (#346) 2019-12-30 23:09:54 +01:00
Pavel Feldman 654fa22cc7 feat(webkit): enable request interception (#343) 2019-12-30 23:05:28 +01:00
Yury Semikhatsky f56ff07f19
fix(wk): support ElementHandle.ownerFrame (#338) 2019-12-26 14:05:46 -08:00
Yury Semikhatsky 845c0af42f
chore: avoid downcast of delegate to <Browser>Page (#334) 2019-12-23 12:10:07 -08:00
Yury Semikhatsky 27ddb017e2
chore: rename CR/FF/WKFrameManager to CR/FF/WKPage (#333) 2019-12-23 11:39:57 -08:00
Yury Semikhatsky c301623e9e
chore(wk): get rid of targetSymbol (#332) 2019-12-23 11:10:37 -08:00
Yury Semikhatsky 6e0bb2585e
fix(wk): wait for bootstrap scripts command response (#328) 2019-12-23 10:40:34 -08:00
Pavel Feldman 4638019902
feat(api): use good old inheritance instead of feature detection (#329) 2019-12-21 09:03:52 -08:00
Pavel Feldman 0ffc9fd4f5 docs: more iterations on the docs 2019-12-20 20:28:35 -08:00
Pavel Feldman 8f480a3987 docs: more docs update (#327) 2019-12-20 16:57:21 -08:00
Yury Semikhatsky 701b5db452 fix(wk): make evaluateOnNewDocument work with PSON (#326) 2019-12-20 16:16:32 -08:00
Dmitry Gozman 735d3eeed7
feat(navigation): introduce waitForNavigationIfNeeded (#310)
This one waits for current navigation to finish, matching by url if asked.
If there is no current navigation or current navigation/url does not match,
it waits for the next matching one.
2019-12-20 15:32:30 -08:00
Pavel d094c602a7 doc: even more documentation fixes 2019-12-20 15:32:03 -08:00
Dmitry Gozman 92ef4c173e fix: async stacks should work now (#325) 2019-12-20 15:31:20 -08:00
Dmitry Gozman 56a48559c2
fix(setContent): call window.stop() before setting new content (#323)
This ensures that previous loading activity is suppressed and all network requests are canceled.
2019-12-20 15:30:12 -08:00
Pavel 2673ea90d9 doc: more documentation fixes 2019-12-20 15:26:18 -08:00
Pavel Feldman 9cfa404c87
feat: trim down url matching (#322) 2019-12-20 14:38:54 -08:00
Yury Semikhatsky 6b60b510b3 test: make fixture tests pass in all browsers (#321) 2019-12-20 14:10:13 -08:00
Pavel Feldman ad22a46fde
feat: move permissions back into the context (#320) 2019-12-20 13:07:14 -08:00
Dmitry Gozman dd6ba432ab
chore: update index.d.ts and index.js (#318) 2019-12-20 12:44:15 -08:00
Pavel Feldman a4cb386b70 chore: fix page import 2019-12-19 22:09:21 -08:00
Pavel Feldman 536c50db78 docs: started working on the api.md (2) 2019-12-19 20:14:19 -08:00
Pavel ae86a0be17 docs: started working on the api.md 2019-12-19 18:03:52 -08:00
Pavel c7d205d416 chore: rename the world (3) 2019-12-19 17:03:27 -08:00
Pavel b20e87d9d0 chore: rename the world (2) 2019-12-19 16:53:24 -08:00
Pavel 91c309797d chore: rename the world 2019-12-19 16:46:42 -08:00
Dmitry Gozman 12ac458614 fix(elementhandle): contentFrame and ownerFrame work in various scenarios (#311)
Drive-by: use evaluateInUtility for various utility evals.
2019-12-19 15:19:22 -08:00
Dmitry Gozman 7e90292834 fix(networkidle): make it (almost) work with setContent (#307) 2019-12-19 15:07:57 -08:00
Pavel Feldman 331f0e603a feat: introduce BrowserServer (#308) 2019-12-19 14:51:49 -08:00
Dmitry Gozman b378bc7f6c
feature(evaluate): support cross-context element handles (#295) 2019-12-19 11:44:07 -08:00
Pavel Feldman 4ef9f84ab5
chore: simplify the launcher routine (#306) 2019-12-19 10:21:26 -08:00
Dmitry Gozman c172a7e7e0 feature: $wait similar to waitForFunction, but taking a selector (#303) 2019-12-18 18:11:02 -08:00
Pavel Feldman d570fc7809
feat: further strip the browser api (#304) 2019-12-18 18:07:11 -08:00
Dmitry Gozman 3669dad243 feat(urlmatch): support url matching in waitForNavigation (#300) 2019-12-18 18:03:02 -08:00
Yury Semikhatsky ff474b88e0 fix(wk): call setViewport on the new session (#302) 2019-12-18 17:37:27 -08:00
Pavel Feldman 0e3328218d feat(context): remove the notion of incognito context (#299) 2019-12-18 16:44:02 -08:00
Yury Semikhatsky da051a72a8 fix: strip off hash from request urls (#297) 2019-12-18 16:27:20 -08:00
Pavel Feldman b5e9086576 chore: remove browser from the api (#296) 2019-12-18 16:23:05 -08:00
Dmitry Gozman 9afd35d3a1
feature(waitfor): waitFor visible or any by default (#284) 2019-12-18 14:28:16 -08:00
Pavel 1c3ff0bd52 fix(ff): await for configuration promises 2019-12-18 14:00:35 -08:00
Dmitry Gozman 7750db97fe
api: remove ExecutionContext from api (#290)
In the current state, it is superseeded by Frame and JSHandle.
2019-12-18 13:51:45 -08:00
Pavel Feldman 6d0dfd0abf
feat(context): start moving overrides to the context level 2019-12-18 12:23:33 -08:00
Dmitry Gozman 0f8333ba89
feature(filechooser): move waitForFileChooser to common waitForEvent (#281) 2019-12-17 17:34:32 -08:00
Andrey Lushnikov 533d058ea6
fix(firefox): support late attachment and skip a few failing tests (#283) 2019-12-17 17:33:06 -08:00
Yury Semikhatsky 83833f61c1
feat(webkit): support referrer parameter in Page.navigate (#286)
* add test for reference-policy: no-referrer
2019-12-17 18:19:35 -07:00
Dmitry Gozman fd927000ea feature: update api around selectors (#280)
- Selector is again a string.
- Most methods taking selector also accept waitFor option.
- Available waitFor options are: 'visible', 'hidden', 'any' === true, false === undefined.
- waitForXPath is removed.
- waitForSelector is replaced by $(selector, { waitFor: true }).
2019-12-17 14:30:02 -08:00
Dmitry Gozman 75ae9bfeee
feature(waitFor): use URLMatch to match request/response, waitForEvent for generic (#278) 2019-12-17 14:00:39 -08:00
Dmitry Gozman 24eb6d8671
chore: simplify extra http headers handling across browsers (#274) 2019-12-17 11:31:52 -08:00
Dmitry Gozman 916158656c
chore: unify reload/goBack/goForward across browsers (#273) 2019-12-17 11:28:09 -08:00
Yury Semikhatsky e851a27350
feat(webkit): implement ElementHandle.contentFrame (#276) 2019-12-17 12:21:53 -07:00
Dmitry Gozman 5a60a96410 chore: reuse navigation methods between browsers (#271) 2019-12-16 22:02:33 -08:00
Dmitry Gozman 48be99a56e feat(selectors): add id selectors (#270) 2019-12-16 20:49:18 -08:00
Yury Semikhatsky 974f82073f feat(webkit): allow to run beforeunload when closing page (#264) 2019-12-16 17:33:36 -08:00
Yury Semikhatsky bfb8df29bb
feat(webkit): reload page after updating user agent (#268) 2019-12-16 18:29:40 -07:00
Dmitry Gozman 03e2336d49 chore: various cleanup (#266) 2019-12-16 16:43:28 -08:00
Dmitry Gozman f9f7d5c55a feature(navigation): implement networkilde0 and networkidle2 (#263) 2019-12-16 16:32:04 -08:00
Dmitry Gozman 4b7a017456
chore: introduce FrameManager to be reused between browsers (#261) 2019-12-16 15:56:11 -08:00
Pavel Feldman df95b9ddb4 feat(waitFor): allow actions to wait for selector; make visible requirement default (#254) 2019-12-14 20:13:22 -07:00
Pavel Feldman a9568af21d
feat: create FF default profile prefs dynamically (#250) 2019-12-14 11:55:21 -08:00
Dmitry Gozman 09bf6b1906 fix(navigation): expect navigation on navigation request (#248) 2019-12-14 08:20:51 -08:00
Yury Semikhatsky f539afa2a7
feat(webkit): support ignoreHTTPSErrors launcher option (#243)
Also roll webkit to 1036
2019-12-13 22:46:27 -07:00
Pavel Feldman 0b5c0a76ab feat(webkit): support emulating color scheme (#247) 2019-12-13 17:34:02 -08:00
Dmitry Gozman dd2ce94de9
fix(navigation): waitForNavigation to pick up aborted navigation (#244) 2019-12-13 16:35:10 -08:00
Pavel Feldman 32fa26be97
feat: roll chromium to ToT (#241) 2019-12-13 14:57:46 -08:00
Pavel cde81aaf5a fix: account for linux treatment of canceled requests 2019-12-13 14:06:00 -08:00
Pavel aaa8f88f3c fix: rename files on case-sensitive fs 2019-12-13 13:57:11 -08:00
Pavel Feldman 046d015782 chore: unify transports, serialize events with acks (#239) 2019-12-13 14:53:49 -07:00
Dmitry Gozman 39fb556f27 fix(webkit): detect expected/aborted navigations based on network requests (#238) 2019-12-13 13:03:52 -08:00
Dmitry Gozman f8426fdf95
chore: move frame id to Frame, remove unused events (#235) 2019-12-13 10:52:33 -08:00
Pavel Feldman bae8cd3fae
chrome: co-locate transport types (#236) 2019-12-12 21:30:49 -08:00
Dmitry Gozman 97c50c22ab chore: inherit FrameExecutionContext from ExecutionContext (#234) 2019-12-12 21:11:52 -08:00
Pavel Feldman 5822de844a chore: rename common files to start with lower case 2019-12-12 20:55:29 -08:00
Pavel Feldman 5377f7a2d8 lint: eslint fixes 2019-12-12 20:21:29 -08:00
Pavel Feldman c7cf4886ea api: s/createIncognitoBrowserContext/newContext/ 2019-12-12 20:14:50 -08:00
Dmitry Gozman 90f0b8c2b0
fix(firefox): setContent to properly listen for lifecycle events (#219) 2019-12-12 20:11:33 -08:00
Andrey Lushnikov ee1f4784c6
feat(firefox): implement browser.firefox.wsEndpoint() (#233)
This lets us pass the fixtures test for browser shutdown.
2019-12-12 18:40:48 -08:00
Dmitry Gozman 28cf2595fb fix: follow up with process launcher (#232) 2019-12-12 17:55:54 -08:00
Dmitry Gozman d378a8d3fc chore: reuse processLauncher between browsers (#231)
Drive-by: improve test runner to always exit and kill browsers
2019-12-12 17:52:13 -08:00
Dmitry Gozman 39fa313535 chore: merge DOMWorldDelegate and PageDelegate (#228) 2019-12-12 17:51:05 -08:00
Dmitry Gozman 3b202fb4b8 fix(webkit): handle frameAttached event (#227) 2019-12-12 17:50:37 -08:00
Dmitry Gozman 59b0900321
feat(selectors): introduce zs selector engine (#214) 2019-12-12 09:02:37 -08:00
Dmitry Gozman 3c7181a545 fix(webkit): fix ordering of provisional messages relative to the rest (#225) 2019-12-12 09:59:08 -07:00
Pavel Feldman cca2659578 test: update console tests (#223) 2019-12-12 08:58:37 -08:00
Pavel Feldman 19cac9a0c1 test: rebaseline wk/mac network tests 2019-12-11 19:32:07 -08:00
Pavel Feldman 7c7c13e89d fix(webkit): fix a couple of navigation tests (#217) 2019-12-11 17:46:26 -08:00
Pavel Feldman 6440323003 fix(webkit): wait for main response on subresource-free goto (#216) 2019-12-11 16:19:37 -08:00
Pavel Feldman 4824a25cc6
fix(csp): fix some of the csp tests (#211) 2019-12-11 13:51:03 -08:00
Dmitry Gozman b70eebc4b2 chore: merge PageDelegate, FrameDelegate and ScreenshotterDelegate (#213) 2019-12-11 13:36:41 -07:00
Yury Semikhatsky ce21019c7d fix(webkit): make sure each message is dispatch in separate task (#212) 2019-12-11 12:06:11 -08:00
Pavel Feldman 357e175964 fix(webkit): fullPage screenshot w/o viewport (#210) 2019-12-11 11:26:34 -08:00
Dmitry Gozman 58336d3eb9 chore: get rid of <Browser> templating (#209) 2019-12-11 07:18:43 -08:00
Dmitry Gozman 57acdfd860 chore: reuse LifecycleWatcher between browsers (#208) 2019-12-11 07:17:32 -08:00
Pavel Feldman e42e361d20
feat(webkit): use new bypass csp method (#207) 2019-12-10 19:26:13 -08:00
Pavel 3146d47de8 fix(compile): include debugError in webkit/FrameManager 2019-12-10 16:34:06 -08:00
Pavel Feldman 8c548ed9e9
feat(webkit): implement page.exposeFunction (#195) 2019-12-10 15:17:42 -08:00
Dmitry Gozman 5ffb710d7d
chore: reuse BrowserContext across browsers (#201) 2019-12-10 15:13:56 -08:00
Joel Einbinder 0af3b9dfc8 feat(webkit): page.on('popup') (#202) 2019-12-10 15:07:00 -08:00
Yury Semikhatsky e8ec7e5118
feat(webkit): pause and configure provisional pages on creation (#200) 2019-12-10 15:34:36 -07:00
Andrey Lushnikov 329b34e894
feat: implement mac keyboard (#197)
This list contains all of the default keyboard shortcuts for macos, and the Objective-C selector that they trigger on the [NSStandardKeyBindingResponding](https://developer.apple.com/documentation/appkit/nsstandardkeybindingresponding/3005237-moveleft?language=objc). We need these for basic keyboard functionality like ArrowUp and ArrowDown to work on WebKit for mac. For other browsers on mac, the same list can be used to enable better mac keyboard emulation.

The list was made by constructing NSEvents on a mac and seeing what selectors they triggered on an NSTextView. The conversion from NSEvents to DOM codes was done partially by hand as the code that does this conversion lives across many files in WebKit. There may be some errors or missing commands, but in general this should be a more faithful mac keyboard emulation than what we do in Chromium currently.

Notably absent from the list are Cut, Copy, Paste, Paste Special, Undo, and Redo. They are handled in a slightly different way.
2019-12-10 13:22:01 -08:00
Yury Semikhatsky c9bc103a00 chore(webkit): remove url from Connection (#199) 2019-12-10 13:11:55 -08:00
Dmitry Gozman f1f9dc166b
chore: remove unneeded files, reuse events between browsers, no implicit any (#191) 2019-12-10 11:15:14 -08:00
Pavel Feldman 44d6f608ef feat(webkit): use webkit worlds (#194) 2019-12-09 23:24:12 -08:00
Dmitry Gozman b4c89ca0f9
chore: unify frame lifecycle events between browsers (#172) 2019-12-09 16:34:42 -08:00
Dmitry Gozman e5a85e4e67
chore(webkit): migrate to common Page (#189) 2019-12-09 15:45:32 -08:00
Dmitry Gozman 640646b794
chore(firefox): migrate to common Page (#188) 2019-12-09 14:53:17 -08:00
Joel Einbinder e3f34bd69a
fix(fill): throw when the element isn't fillable (#160)
An element is fillable if its:
- In dom
- Not display:none or visibility:hidden
- textarea or input or contenteditable

if textarea or input it must also be
- not readOnly
- not disabled

#133
2019-12-09 14:51:19 -08:00
Yury Semikhatsky 37540179de chore(webkit): pass session to Target constructor (#187) 2019-12-09 14:41:20 -08:00
Dmitry Gozman c323a3e50b chore(chromium): move Page to common, implement PageDelegate (#184) 2019-12-09 14:08:20 -07:00
Yury Semikhatsky f9d5a18d05 chore(webkit): remove unused fields from Target (#183) 2019-12-09 12:13:19 -08:00
Dmitry Gozman 88aea0a886
fix: fix races in didClose and didDisconnect across browsers (#182)
Also merge initialize and swapSessionOnNavigation in webkit.
2019-12-09 10:16:30 -08:00
Dmitry Gozman b3817aab2a chore(webkit): remove most session usages from Page (#181)
These are moved to FrameManager, so that we can reuse Page between browsers.
2019-12-09 10:48:54 -07:00
Pavel Feldman f5cd742b79
test: rebaseline some click tests (#179) 2019-12-08 17:17:49 -08:00
Dmitry Gozman f38ab5d80f chore: reuse BrowserFetcher between browsers (#177) 2019-12-08 13:29:03 -08:00
Dmitry Gozman 0d0f6b7d03 fix(webkit): improve target swap handling (#175)
- Fix "page closed twice" race.
- Do not fire 'disconnected' on swapped out sessions.
- Use a different error for commands sent to swapped out targets.
  This allows callers to detect this situation and retry/throw/catch.
- Restore more state on swap: extra http headers, user agent, emulated media.
2019-12-07 16:58:23 -08:00
Yury Semikhatsky 02e29219fd fix(webkit): make go back/forard return null on error (#171) 2019-12-06 16:38:23 -08:00
Dmitry Gozman 5ab0faab93 chore: remove most usages of session from firefox Page (#169) 2019-12-06 17:34:27 -07:00
Pavel 0884e29695 chore: rearrange test spec files 2019-12-06 16:15:47 -08:00
Pavel b45ea22660 test: fix element.handle nested frames 2019-12-06 15:11:14 -08:00
Pavel bcb62de4b2 fix(test): make click tests pass everywhere 2019-12-06 14:48:41 -08:00
Dmitry Gozman 14f078308d
chore: remove some usage of client from Page (#163)
This brings us closer to reusing Page between browsers.
2019-12-06 13:36:47 -08:00
Pavel 349ce22565 lint: follow up with lints 2019-12-06 12:04:11 -08:00
Pavel Feldman bb1888c86e feat(screenshots): make them work everywhere (#164) 2019-12-06 11:33:24 -08:00
Joel Einbinder 39b22b41c5
feat: make JSHandle generic (#140)
This makes it so that JSHandles and ElementHandles are aware of what types they point to. As a fun bonus, `$eval('input')` knows its going to get an HTMLInputElement.

Most of this patch is casting things where previously we just assumed ElementHandles held the right kind of node. This gets us closer to being able to turn on `noImplicityAny` as well.

#6
2019-12-05 16:26:09 -08:00
Dmitry Gozman e992c7fa7d chore: unify screenshot handling between browsers, introduce Screenshotter everywhere (#156) 2019-12-05 14:48:39 -08:00
Yury Semikhatsky b84d3c6cbe chore: do not accumulate protocol messages for debugging (#150) 2019-12-05 14:13:17 -08:00
Dmitry Gozman 51ca756efe
chore: encapsulate target business in Browser class (#151)
Page and BrowserContext are now closer to be reused between browsers.
2019-12-05 14:11:48 -08:00
Pavel Feldman 2d77760f01
chore: move tests around after targets extraction (#153) 2019-12-05 13:15:17 -08:00
Joel Einbinder 4478c653fd fix(install): generate new protocol.d.ts when browsers are downloaded (#149) 2019-12-05 12:21:55 -07:00
Dmitry Gozman d4f0084f67
chore: move element coordinates handling to common (#139)
Browser now implement boundingBox(), contentQuads() and layoutViewport().
2019-12-05 09:54:50 -08:00
Dmitry Gozman 3f554b3273 fix: handle failures of adoptElementHandle (#134)
There is no way to trigger this issue through the api just yet, but there will be
once we support handles as selectors.
2019-12-05 09:45:36 -07:00
Yury Semikhatsky 25af050bd4 feat(webkit): add page back/forward commands (#144) 2019-12-05 08:32:52 -08:00
Yury Semikhatsky b5af3cac11 fix(install): print version of the browser being downloaded (#146) 2019-12-05 08:30:58 -08:00
Joel Einbinder 9f603c49fb
feat: easy download (#56) 2019-12-04 17:58:38 -08:00
Pavel Feldman e1c4eaae28
chore: make targets chromium feature (#137) 2019-12-04 16:12:43 -08:00
Yury Semikhatsky 3305363f2a
fix(webkit): pass --headless only on Mac (#135) 2019-12-04 17:08:35 -07:00
Dmitry Gozman fc5898892b
feat(selectors): support optional "visible" property in all selectors (#129) 2019-12-04 13:11:10 -08:00
Joel Einbinder 492f539310
chore(firefox): lint against the juggler protocol (#94) 2019-12-04 10:33:29 -08:00
Pavel Feldman 01b321d014
feat(webkit): implement headless on Mac (#128) 2019-12-03 14:10:01 -08:00
Dmitry Gozman e124d44a55 chore: rework wait task to accept arbitrary task on dom world (#126) 2019-12-03 11:51:41 -07:00
Yury Semikhatsky ba54ad46b3 feat(page): add Page.setJavaScriptEnabled for WebKit (#125) 2019-12-03 10:47:02 -08:00
Dmitry Gozman 6b3c2632e7
feat(selectors): support various selectors in waitFor methods (#122) 2019-12-03 10:43:13 -08:00
Dmitry Gozman bb1433a143
feat(selectors): support various kinds of selectors (#118)
This adds support for generic "engine=body [>> engine=body]*" selector syntax
and auto-detects simple css or xpath.
2019-12-02 17:33:44 -08:00
Pavel Feldman 505c9e3660 test: uncomment more cookies tests 2019-12-02 17:02:33 -08:00
Pavel Feldman 8989da6c16 fix(cookies): follow up to make all platform tests pass 2019-12-02 16:48:38 -08:00
Pavel Feldman 040f93faa2 feat(cookies): implement cookies across the board (#121) 2019-12-02 16:36:46 -08:00
Yury Semikhatsky 2ca2a4cb18 feat(launcher): throw on browser launch failure, default args (#119) 2019-12-02 16:17:53 -08:00
Dmitry Gozman ffaf7326ab
chore: put remoteObject directly on JSHandle (#113) 2019-12-02 13:12:28 -08:00
Dmitry Gozman 113ffd6808
chore: reuse ConsoleMessage between browsers (#116) 2019-12-02 13:01:01 -08:00
Dmitry Gozman b6c892842b
feat(screenshot): multiple element screenshots are now taken sequentially (#114)
This makes multiple element screenshots to not fight for the page viewport
by putting viewport manipulation under screenshot task queue.

Drive-by: encapsulated all screenshot logic in Screenshotter.
2019-12-02 10:53:58 -08:00
Dmitry Gozman 76ab83f581 chore: reuse Dialog between browsers (#115) 2019-12-02 11:53:23 -07:00
Dmitry Gozman 8efd258e40
chore: encapsulate dom-related logic to DOMWorld, part 1 (#112) 2019-11-28 12:50:52 -08:00
Pavel Feldman 336338c97e
test: fix webkit tests (#111) 2019-11-27 16:23:46 -08:00
Dmitry Gozman 961556a596
chore: cleanup multiple definitions and types (#109) 2019-11-27 16:03:51 -08:00
Dmitry Gozman c3393039b0
chore: reuse ElementHandle between browsers (#108) 2019-11-27 16:02:31 -08:00
Dmitry Gozman b596f36bad chore: separate common part of ElementHandle from chromium-specific (#106) 2019-11-27 14:26:46 -08:00
Pavel Feldman 56b4f009ac chore: refactor the file chooser api (#107) 2019-11-27 14:26:30 -08:00
Pavel Feldman cf9c4d153a feat(webkit): implement file chooser interception (frontend) (#98) 2019-11-27 13:50:24 -08:00
Pavel Feldman 1a1732407f chore: follow up to the execution context changes (#104) 2019-11-27 13:31:13 -08:00
Dmitry Gozman b2c31b7317
chore: reuse network Request and Response between browsers (#101) 2019-11-27 12:44:12 -08:00
Dmitry Gozman 490db5bc18
chore: reuse JSHandle between browsers (#103) 2019-11-27 12:41:26 -08:00
Dmitry Gozman 06ba0f7a7f
chore: reuse ExecutionContext between browsers (#102) 2019-11-27 12:39:53 -08:00
Dmitry Gozman dfc5592910
chore: reuse Frame between browsers (#100) 2019-11-27 12:38:26 -08:00
Joel Einbinder 49f8963bf1
feat(webkit): dialogs (#75) 2019-11-27 12:24:52 -08:00
Pavel Feldman 72b1bb783b
feat(chromium): roll chromium to r719491, lint, test (#99) 2019-11-26 22:53:34 -08:00
Dmitry Gozman 35c27bfa45 chore: remove Frame dependecies on the chromium-specific things (#95) 2019-11-26 16:19:43 -08:00
Dmitry Gozman c48b39345a chore: merge DOMWorld into Frame (#93)
This allows us to reuse Frame between browsers.
2019-11-26 15:37:25 -08:00
Pavel Feldman cc41377fe2 chore: move emulateTimeZone and setGeolocation to Overrides (#92) 2019-11-26 15:13:49 -08:00
Pavel Feldman c7a07ea2a8 chore: move more unsupported apis to interception (#91) 2019-11-26 15:01:27 -08:00
Pavel Feldman 0494c4c04e
chore: export FileChooser api for the dashboard (#90) 2019-11-26 14:31:09 -08:00
Pavel Feldman 64d3e83ddf
chrome(filechooser): align file chooser implementations (#88) 2019-11-26 14:29:21 -08:00
Pavel Feldman a4e24c718b
feat(cookies): move cookie management to BrowserContext (#82) 2019-11-26 11:23:13 -08:00
Dmitry Gozman 3decf1f996
chore: move waitFor methods from DOMWorld to Frame (#87)
This almost removes the DOMWorld, so we can unify them across the browsers.
2019-11-26 11:16:20 -08:00
Pavel Feldman 2eb653740a feat(headful): remove bringToFront (#84) 2019-11-26 11:00:54 -08:00
Dmitry Gozman 6e78e12d90
chore: move meaningful methods with a single callsite from DOMWorld to Frame (#68) 2019-11-26 08:57:53 -08:00
Pavel Feldman 991f4a9072
docs: fix the docs validator (#86) 2019-11-26 08:52:47 -08:00
Pavel Feldman 66d3dd8626
lint: fixes (#85) 2019-11-26 08:19:02 -08:00
Dmitry Gozman 0db3101013 chore: reuse waitForSelectorOrXPath between browsers (#81) 2019-11-26 07:55:34 -08:00
Dmitry Gozman cefebb3938 chore: use types for eval functions in webkit (#79) 2019-11-26 07:53:48 -08:00
Dmitry Gozman 432116ba80 chore: move Mouse to common input with RawMouseImpl per vendor (#73) 2019-11-26 07:52:55 -08:00
Dmitry Gozman cc9b58878b
chore: reuse WaitTask between browsers (#67) 2019-11-25 20:28:34 -08:00
Dmitry Gozman 72b252e5e9
chore: make WaitTask not depend on DOMWorld (#66)
This opens up opportunity for reuse.
2019-11-25 16:55:03 -08:00
Dmitry Gozman 371394ff2f
chore: use eval types in firefox (#77) 2019-11-25 16:42:37 -08:00
Pavel Feldman a1d71d0de7 feat(csp): support bypass csp on ff (#74) 2019-11-25 15:26:03 -08:00
Dmitry Gozman 038e24c089
chore: common types for evaluate functions (#72) 2019-11-25 15:06:52 -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
Dmitry Gozman d5ad3960c3 chore: move Keyboard to common, with RawKeyboardImpl per vendor (#69) 2019-11-25 11:19:20 -08:00
Dmitry Gozman 025c1fc7bc feat(engines): introduce xpath engine, switch $x to use it (#64) 2019-11-22 17:27:09 -08:00
Pavel Feldman 3190044c00 feat(firefox): implemented *.fill (#63) 2019-11-22 16:55:35 -08:00
Pavel Feldman c4c8d498bd chore: reuse input code across vendors (#62) 2019-11-22 16:47:50 -08:00
Yury Semikhatsky ef847b1941 fix(page): support multiple bootstrap scripts (#59) 2019-11-22 16:25:36 -08:00
Dmitry Gozman 7c69f8c457 feat(engines): move querySelectorAll to css engine (#61) 2019-11-22 16:21:30 -08:00
Dmitry Gozman a9cd015fdb
feat(engines): introduce a css selector engine and a way to query it (#50) 2019-11-22 15:36:17 -08:00
Pavel Feldman ef464e447f
feat(input): dblclick/trippleclick feature parity (#60) 2019-11-22 14:46:34 -08:00
Yury Semikhatsky 37a9c17d3e fix (#58) 2019-11-22 14:04:04 -08:00
Yury Semikhatsky ac01262c88
feat(page): support Page.evaluateOnNewDocument for WebKit (#55) 2019-11-22 13:14:07 -08:00
Dmitry Gozman e04910501b
feat(select): use ElementHandle instead of 'id=foo' when choosing options (#54) 2019-11-22 11:54:49 -08:00
Pavel Feldman b66b005b1f chore: move wsEndpoint and browser target APIs to features/ (#52) 2019-11-22 11:25:53 -08:00