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
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
Joel Einbinder
c8067dbcde
fix(test): Disable spellcheck in our textarea tests ( #203 )
2019-12-10 14:53:26 -08:00
Yury Semikhatsky
e8ec7e5118
feat(webkit): pause and configure provisional pages on creation ( #200 )
2019-12-10 15:34:36 -07:00
Pavel Feldman
fe6addc71a
test: rearrange launcher tests more
2019-12-10 14:02:48 -08:00
Pavel Feldman
f37d9bfe95
test: extract chromium-specific connect tests
2019-12-10 13:28:50 -08: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
Pavel Feldman
c61c5b056f
test: group interception tests in interception.spec
2019-12-10 13:11:20 -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
Andrey Lushnikov
d96cd76852
browser(webkit): support keyboard on Mac & GTK ( #196 )
...
Review URL: d360425422
2019-12-10 10:39:40 -08:00
Pavel Feldman
44d6f608ef
feat(webkit): use webkit worlds ( #194 )
2019-12-09 23:24:12 -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
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
Pavel Feldman
1606697c7e
feat(webkit): implement world creation ( #185 )
2019-12-09 15:22:11 -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
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
Dmitry Gozman
c323a3e50b
chore(chromium): move Page to common, implement PageDelegate ( #184 )
2019-12-09 14:08:20 -07:00
Pavel Feldman
122837113b
feat(webkit): use NSEvents for mouse event simulation ( #180 )
2019-12-09 12:20:58 -08: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
Yury Semikhatsky
4f5fd4870c
feat(webkit): implement setPauseOnStart in browser target agent ( #176 )
2019-12-08 16:14:17 -07:00
Dmitry Gozman
f38ab5d80f
chore: reuse BrowserFetcher between browsers ( #177 )
2019-12-08 13:29:03 -08:00
Pavel Feldman
ba4cfe908c
fix(webkit): make headless webview active and focused at all times ( #178 )
2019-12-08 13:22:47 -08:00
Pavel Feldman
51c975b098
chore: group more feature test files
2019-12-08 09:04:07 -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
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
Dmitry Gozman
3fe20ba516
fix(webkit): disable throttling and pass frameId to load/domcontentloaded ( #173 )
2019-12-07 16:35:32 -08:00
Pavel
5274f2bd3c
chore: only test request interception for Chrome & FF
2019-12-06 17:37:45 -08:00
Pavel
1377be2b27
fix: fix new jpeg and png deps
2019-12-06 17:14:08 -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
Yury Semikhatsky
10edb02fb6
feat(webkit): roll to 1016
2019-12-06 16:30:59 -08:00
Pavel
0884e29695
chore: rearrange test spec files
2019-12-06 16:15:47 -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
Pavel
b45ea22660
test: fix element.handle nested frames
2019-12-06 15:11:14 -08:00
Joel Einbinder
e727ee0c81
fix(doc): Make browser_patches/contributing.md more straightforward ( #167 )
2019-12-06 15:56:37 -07: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