Class InputImpl

java.lang.Object
io.webfolder.cdp.command.InputImpl
All Implemented Interfaces:
Input

public class InputImpl
extends java.lang.Object
implements Input
  • Constructor Summary

    Constructors 
    Constructor Description
    InputImpl​(SessionInvocationHandler handler)  
  • Method Summary

    Modifier and Type Method Description
    void dispatchKeyEvent​(KeyEventType type)
    Dispatches a key event to the page.
    void dispatchKeyEvent​(KeyEventType type, java.lang.Integer modifiers, java.lang.Double timestamp, java.lang.String text, java.lang.String unmodifiedText, java.lang.String keyIdentifier, java.lang.String code, java.lang.String key, java.lang.Integer windowsVirtualKeyCode, java.lang.Integer nativeVirtualKeyCode, java.lang.Boolean autoRepeat, java.lang.Boolean isKeypad, java.lang.Boolean isSystemKey, java.lang.Integer location)
    Dispatches a key event to the page.
    void dispatchMouseEvent​(MouseEventType type, java.lang.Double x, java.lang.Double y)
    Dispatches a mouse event to the page.
    void dispatchMouseEvent​(MouseEventType type, java.lang.Double x, java.lang.Double y, java.lang.Integer modifiers, java.lang.Double timestamp, MouseButton button, java.lang.Integer buttons, java.lang.Integer clickCount, java.lang.Double deltaX, java.lang.Double deltaY, PointerType pointerType)
    Dispatches a mouse event to the page.
    void dispatchTouchEvent​(TouchEventType type, java.util.List<TouchPoint> touchPoints)
    Dispatches a touch event to the page.
    void dispatchTouchEvent​(TouchEventType type, java.util.List<TouchPoint> touchPoints, java.lang.Integer modifiers, java.lang.Double timestamp)
    Dispatches a touch event to the page.
    void emulateTouchFromMouseEvent​(MouseEventType type, java.lang.Integer x, java.lang.Integer y, MouseButton button)
    Emulates touch event from the mouse event parameters.
    void emulateTouchFromMouseEvent​(MouseEventType type, java.lang.Integer x, java.lang.Integer y, MouseButton button, java.lang.Double timestamp, java.lang.Double deltaX, java.lang.Double deltaY, java.lang.Integer modifiers, java.lang.Integer clickCount)
    Emulates touch event from the mouse event parameters.
    void insertText​(java.lang.String text)
    This method emulates inserting text that doesn't come from a key press, for example an emoji keyboard or an IME.
    void setIgnoreInputEvents​(java.lang.Boolean ignore)
    Ignores input events (useful while auditing page).
    void synthesizePinchGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double scaleFactor)
    Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
    void synthesizePinchGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double scaleFactor, java.lang.Integer relativeSpeed, GestureSourceType gestureSourceType)
    Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
    void synthesizeScrollGesture​(java.lang.Double x, java.lang.Double y)
    Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
    void synthesizeScrollGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double xDistance, java.lang.Double yDistance, java.lang.Double xOverscroll, java.lang.Double yOverscroll, java.lang.Boolean preventFling, java.lang.Integer speed, GestureSourceType gestureSourceType, java.lang.Integer repeatCount, java.lang.Integer repeatDelayMs, java.lang.String interactionMarkerName)
    Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
    void synthesizeTapGesture​(java.lang.Double x, java.lang.Double y)
    Synthesizes a tap gesture over a time period by issuing appropriate touch events.
    void synthesizeTapGesture​(java.lang.Double x, java.lang.Double y, java.lang.Integer duration, java.lang.Integer tapCount, GestureSourceType gestureSourceType)
    Synthesizes a tap gesture over a time period by issuing appropriate touch events.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • dispatchKeyEvent

      public void dispatchKeyEvent​(KeyEventType type, java.lang.Integer modifiers, java.lang.Double timestamp, java.lang.String text, java.lang.String unmodifiedText, java.lang.String keyIdentifier, java.lang.String code, java.lang.String key, java.lang.Integer windowsVirtualKeyCode, java.lang.Integer nativeVirtualKeyCode, java.lang.Boolean autoRepeat, java.lang.Boolean isKeypad, java.lang.Boolean isSystemKey, java.lang.Integer location)
      Description copied from interface: Input
      Dispatches a key event to the page.
      Specified by:
      dispatchKeyEvent in interface Input
      Parameters:
      type - Type of the key event.
      modifiers - Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
      timestamp - Time at which the event occurred.
      text - Text as generated by processing a virtual key code with a keyboard layout. Not needed for for `keyUp` and `rawKeyDown` events (default: "")
      unmodifiedText - Text that would have been generated by the keyboard if no modifiers were pressed (except for shift). Useful for shortcut (accelerator) key handling (default: "").
      keyIdentifier - Unique key identifier (e.g., 'U+0041') (default: "").
      code - Unique DOM defined string value for each physical key (e.g., 'KeyA') (default: "").
      key - Unique DOM defined string value describing the meaning of the key in the context of active modifiers, keyboard layout, etc (e.g., 'AltGr') (default: "").
      windowsVirtualKeyCode - Windows virtual key code (default: 0).
      nativeVirtualKeyCode - Native virtual key code (default: 0).
      autoRepeat - Whether the event was generated from auto repeat (default: false).
      isKeypad - Whether the event was generated from the keypad (default: false).
      isSystemKey - Whether the event was a system key event (default: false).
      location - Whether the event was from the left or right side of the keyboard. 1=Left, 2=Right (default: 0).
    • insertText

      public void insertText​(java.lang.String text)
      Description copied from interface: Input
      This method emulates inserting text that doesn't come from a key press, for example an emoji keyboard or an IME.
      Specified by:
      insertText in interface Input
      Parameters:
      text - The text to insert.
    • dispatchMouseEvent

      public void dispatchMouseEvent​(MouseEventType type, java.lang.Double x, java.lang.Double y, java.lang.Integer modifiers, java.lang.Double timestamp, MouseButton button, java.lang.Integer buttons, java.lang.Integer clickCount, java.lang.Double deltaX, java.lang.Double deltaY, PointerType pointerType)
      Description copied from interface: Input
      Dispatches a mouse event to the page.
      Specified by:
      dispatchMouseEvent in interface Input
      Parameters:
      type - Type of the mouse event.
      x - X coordinate of the event relative to the main frame's viewport in CSS pixels.
      y - Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
      modifiers - Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
      timestamp - Time at which the event occurred.
      button - Mouse button (default: "none").
      buttons - A number indicating which buttons are pressed on the mouse when a mouse event is triggered. Left=1, Right=2, Middle=4, Back=8, Forward=16, None=0.
      clickCount - Number of times the mouse button was clicked (default: 0).
      deltaX - X delta in CSS pixels for mouse wheel event (default: 0).
      deltaY - Y delta in CSS pixels for mouse wheel event (default: 0).
      pointerType - Pointer type (default: "mouse").
    • dispatchTouchEvent

      public void dispatchTouchEvent​(TouchEventType type, java.util.List<TouchPoint> touchPoints, java.lang.Integer modifiers, java.lang.Double timestamp)
      Description copied from interface: Input
      Dispatches a touch event to the page.
      Specified by:
      dispatchTouchEvent in interface Input
      Parameters:
      type - Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while TouchStart and TouchMove must contains at least one.
      touchPoints - Active touch points on the touch device. One event per any changed point (compared to previous touch event in a sequence) is generated, emulating pressing/moving/releasing points one by one.
      modifiers - Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
      timestamp - Time at which the event occurred.
    • emulateTouchFromMouseEvent

      public void emulateTouchFromMouseEvent​(MouseEventType type, java.lang.Integer x, java.lang.Integer y, MouseButton button, java.lang.Double timestamp, java.lang.Double deltaX, java.lang.Double deltaY, java.lang.Integer modifiers, java.lang.Integer clickCount)
      Description copied from interface: Input
      Emulates touch event from the mouse event parameters.
      Specified by:
      emulateTouchFromMouseEvent in interface Input
      Parameters:
      type - Type of the mouse event.
      x - X coordinate of the mouse pointer in DIP.
      y - Y coordinate of the mouse pointer in DIP.
      button - Mouse button. Only "none", "left", "right" are supported.
      timestamp - Time at which the event occurred (default: current time).
      deltaX - X delta in DIP for mouse wheel event (default: 0).
      deltaY - Y delta in DIP for mouse wheel event (default: 0).
      modifiers - Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
      clickCount - Number of times the mouse button was clicked (default: 0).
    • setIgnoreInputEvents

      public void setIgnoreInputEvents​(java.lang.Boolean ignore)
      Description copied from interface: Input
      Ignores input events (useful while auditing page).
      Specified by:
      setIgnoreInputEvents in interface Input
      Parameters:
      ignore - Ignores input events processing when set to true.
    • synthesizePinchGesture

      public void synthesizePinchGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double scaleFactor, java.lang.Integer relativeSpeed, GestureSourceType gestureSourceType)
      Description copied from interface: Input
      Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizePinchGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.
      scaleFactor - Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
      relativeSpeed - Relative pointer speed in pixels per second (default: 800).
      gestureSourceType - Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
    • synthesizeScrollGesture

      public void synthesizeScrollGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double xDistance, java.lang.Double yDistance, java.lang.Double xOverscroll, java.lang.Double yOverscroll, java.lang.Boolean preventFling, java.lang.Integer speed, GestureSourceType gestureSourceType, java.lang.Integer repeatCount, java.lang.Integer repeatDelayMs, java.lang.String interactionMarkerName)
      Description copied from interface: Input
      Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizeScrollGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.
      xDistance - The distance to scroll along the X axis (positive to scroll left).
      yDistance - The distance to scroll along the Y axis (positive to scroll up).
      xOverscroll - The number of additional pixels to scroll back along the X axis, in addition to the given distance.
      yOverscroll - The number of additional pixels to scroll back along the Y axis, in addition to the given distance.
      preventFling - Prevent fling (default: true).
      speed - Swipe speed in pixels per second (default: 800).
      gestureSourceType - Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
      repeatCount - The number of times to repeat the gesture (default: 0).
      repeatDelayMs - The number of milliseconds delay between each repeat. (default: 250).
      interactionMarkerName - The name of the interaction markers to generate, if not empty (default: "").
    • synthesizeTapGesture

      public void synthesizeTapGesture​(java.lang.Double x, java.lang.Double y, java.lang.Integer duration, java.lang.Integer tapCount, GestureSourceType gestureSourceType)
      Description copied from interface: Input
      Synthesizes a tap gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizeTapGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.
      duration - Duration between touchdown and touchup events in ms (default: 50).
      tapCount - Number of times to perform the tap (e.g. 2 for double tap, default: 1).
      gestureSourceType - Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type).
    • dispatchKeyEvent

      public void dispatchKeyEvent​(KeyEventType type)
      Description copied from interface: Input
      Dispatches a key event to the page.
      Specified by:
      dispatchKeyEvent in interface Input
      Parameters:
      type - Type of the key event.
    • dispatchMouseEvent

      public void dispatchMouseEvent​(MouseEventType type, java.lang.Double x, java.lang.Double y)
      Description copied from interface: Input
      Dispatches a mouse event to the page.
      Specified by:
      dispatchMouseEvent in interface Input
      Parameters:
      type - Type of the mouse event.
      x - X coordinate of the event relative to the main frame's viewport in CSS pixels.
      y - Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
    • dispatchTouchEvent

      public void dispatchTouchEvent​(TouchEventType type, java.util.List<TouchPoint> touchPoints)
      Description copied from interface: Input
      Dispatches a touch event to the page.
      Specified by:
      dispatchTouchEvent in interface Input
      Parameters:
      type - Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while TouchStart and TouchMove must contains at least one.
      touchPoints - Active touch points on the touch device. One event per any changed point (compared to previous touch event in a sequence) is generated, emulating pressing/moving/releasing points one by one.
    • emulateTouchFromMouseEvent

      public void emulateTouchFromMouseEvent​(MouseEventType type, java.lang.Integer x, java.lang.Integer y, MouseButton button)
      Description copied from interface: Input
      Emulates touch event from the mouse event parameters.
      Specified by:
      emulateTouchFromMouseEvent in interface Input
      Parameters:
      type - Type of the mouse event.
      x - X coordinate of the mouse pointer in DIP.
      y - Y coordinate of the mouse pointer in DIP.
      button - Mouse button. Only "none", "left", "right" are supported.
    • synthesizePinchGesture

      public void synthesizePinchGesture​(java.lang.Double x, java.lang.Double y, java.lang.Double scaleFactor)
      Description copied from interface: Input
      Synthesizes a pinch gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizePinchGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.
      scaleFactor - Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
    • synthesizeScrollGesture

      public void synthesizeScrollGesture​(java.lang.Double x, java.lang.Double y)
      Description copied from interface: Input
      Synthesizes a scroll gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizeScrollGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.
    • synthesizeTapGesture

      public void synthesizeTapGesture​(java.lang.Double x, java.lang.Double y)
      Description copied from interface: Input
      Synthesizes a tap gesture over a time period by issuing appropriate touch events.
      Specified by:
      synthesizeTapGesture in interface Input
      Parameters:
      x - X coordinate of the start of the gesture in CSS pixels.
      y - Y coordinate of the start of the gesture in CSS pixels.