class Selenium::WebDriver::Keyboard

@api private @see ActionBuilder

Constants

MODIFIERS

Public Class Methods

new(bridge) click to toggle source
# File lib/selenium/webdriver/common/keyboard.rb, line 10
def initialize(bridge)
  @bridge = bridge
end

Public Instance Methods

press(key) click to toggle source

Press a modifier key

@see Selenium::WebDriver::Keys

# File lib/selenium/webdriver/common/keyboard.rb, line 24
def press(key)
  assert_modifier key

  @bridge.sendKeysToActiveElement Keys.encode([key])
end
release(key) click to toggle source

Release a modifier key

@see Selenium::WebDriver::Keys

# File lib/selenium/webdriver/common/keyboard.rb, line 36
def release(key)
  assert_modifier key

  @bridge.sendKeysToActiveElement Keys.encode([key])
end
send_keys(*keys) click to toggle source
# File lib/selenium/webdriver/common/keyboard.rb, line 14
def send_keys(*keys)
  @bridge.sendKeysToActiveElement Keys.encode(keys)
end

Private Instance Methods

assert_modifier(key) click to toggle source
# File lib/selenium/webdriver/common/keyboard.rb, line 46
def assert_modifier(key)
  unless MODIFIERS.include? key
    raise ArgumentError,
      "#{key.inspect} is not a modifier key, expected one of #{MODIFIERS.inspect}"
  end
end