Use keyboard-types::webdriver::send_keys

This improves the quality of KeyboardEvents
sent by WebDriver. Now key, code, location and
modifiers are set according to spec.
CompositionEvents are discarded as servo
does not handle them at all.
This commit is contained in:
Pyfisch 2018-11-11 21:57:45 +01:00
parent b60006ae11
commit 2143657e03
12 changed files with 30 additions and 130 deletions

23
Cargo.lock generated
View file

@ -512,7 +512,7 @@ dependencies = [
"gleam 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
"image 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
@ -549,7 +549,7 @@ dependencies = [
"gfx_traits 0.0.1",
"http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"layout_traits 0.0.1",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"metrics 0.0.1",
@ -943,7 +943,7 @@ name = "embedder_traits"
version = "0.0.1"
dependencies = [
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
@ -1898,11 +1898,12 @@ dependencies = [
[[package]]
name = "keyboard-types"
version = "0.4.2-servo"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
dependencies = [
"bitflags 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
"unicode-segmentation 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
]
[[package]]
@ -2210,7 +2211,7 @@ dependencies = [
"hashglobe 0.1.0",
"hyper 0.12.12 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper_serde 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"mozjs 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
"selectors 0.20.0",
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
@ -3200,7 +3201,7 @@ dependencies = [
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"itertools 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)",
"jstraceable_derive 0.0.1",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@ -3304,7 +3305,7 @@ name = "script_tests"
version = "0.0.1"
dependencies = [
"euclid 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"script 0.0.1",
"servo_url 0.0.1",
]
@ -3324,7 +3325,7 @@ dependencies = [
"hyper 0.12.12 (registry+https://github.com/rust-lang/crates.io-index)",
"hyper_serde 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"libc 0.2.42 (registry+https://github.com/rust-lang/crates.io-index)",
"malloc_size_of 0.0.1",
"malloc_size_of_derive 0.0.1",
@ -3408,7 +3409,7 @@ dependencies = [
"gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
"gleam 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
"glutin 0.18.0 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
"libservo 0.0.1",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
@ -4457,7 +4458,7 @@ dependencies = [
"hyper 0.12.12 (registry+https://github.com/rust-lang/crates.io-index)",
"image 0.19.0 (registry+https://github.com/rust-lang/crates.io-index)",
"ipc-channel 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)",
"keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
"msg 0.0.1",
"net_traits 0.0.1",
@ -4902,7 +4903,7 @@ dependencies = [
"checksum jni-sys 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
"checksum jpeg-decoder 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0dfe27a6c0dabd772d0f9b9f8701c4ca12c4d1eebcadf2be1f6f70396f6a1434"
"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
"checksum keyboard-types 0.4.2-servo (registry+https://github.com/rust-lang/crates.io-index)" = "75082c134a78e0fc2232d2f30bf3dfdea1cd28591846b85a73b4b46cd776b482"
"checksum keyboard-types 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "823bf0e5ec01b80424a318e79a0d1375725281acf311c47543ab3413f704dc25"
"checksum khronos_api 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9ef23fcc4059260c5936f638c9805ebfc87cb172fa6661d130cba7f97d58f55"
"checksum lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c8f31047daa365f19be14b47c29df4f7c3b581832407daabe6ae77397619237d"
"checksum lazycell 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d33a48d0365c96081958cc663eef834975cb1e8d8bea3378513fc72bdbf11e50"