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 27
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 41
def press(key)
  assert_modifier key

  @bridge.send_keys_to_active_element 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 53
def release(key)
  assert_modifier key

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

Private Instance Methods

assert_modifier(key) click to toggle source
# File lib/selenium/webdriver/common/keyboard.rb, line 63
def assert_modifier(key)
  return if MODIFIERS.include? key

  raise ArgumentError, "#{key.inspect} is not a modifier key, expected one of #{MODIFIERS.inspect}"
end