@Component
@Tag("iron-a11y-keys-behavior")
public class IronA11yKeysBehavior implements KeyListener {
// ...
}
@Override
public void handleKeyPress(KeyPressEvent event) {
// ...
}
@Override
public void handleKeyRelease(KeyReleaseEvent event) {
// ...
}
@PolymerRegister
@Tag("my-custom-component")
public class MyCustomComponent extends Component {
// ...
}
@DomEvent("keydown")
public static class KeydownEvent extends ComponentEvent<MyCustomComponent> {
public KeydownEvent(MyCustomComponent source, boolean fromClient) {
super(source, fromClient);
}
}
@Push
@Route("example")
public class ExampleView extends VerticalLayout {
@Autowired
public ExampleView(MyCustomComponent component) {
component.addKeyPressListener(IronA11yKeysBehavior.class,
IronA11yKeysBehavior.KeydownEvent.class,
MyCustomComponent::onKeydown);
// ...
}
}
<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-spring-boot-starter</artifactId>
</dependency>