Module: Briar::UIAKeyboard::Numeric

Defined in:
lib/briar/keyboard/uia_numeric_keyboard.rb

Instance Method Summary collapse

Instance Method Details

#is_numeric_keyboard?(opts = {}) ⇒ Boolean

Returns:

  • (Boolean)


7
8
9
10
11
12
13
14
15
16
# File 'lib/briar/keyboard/uia_numeric_keyboard.rb', line 7

def is_numeric_keyboard?(opts={})
  if uia_not_available?
    pending('this feature is nyi')
  end
  default_opts = {:wait_for_keyboard => false}
  opts = default_opts.merge(opts)
  wait_for_keyboard if opts[:wait_for_keyboard]
  res = uia('UIATarget.localTarget().frontMostApp().keyboard().keys().length')['value']
  res == 12
end

#keyboard_send_backspace(opts = {}) ⇒ Object



29
30
31
32
33
34
35
36
37
38
# File 'lib/briar/keyboard/uia_numeric_keyboard.rb', line 29

def keyboard_send_backspace(opts={})
  default_opts = {:wait_for_keyboard => false}
  opts = default_opts.merge(opts)
  wait_for_keyboard if opts[:wait_for_keyboard]
  if is_numeric_keyboard?
    keyboard_send_numeric_backspace
  else
    keyboard_enter_char 'Delete'
  end
end

#keyboard_send_numeric_backspace(opts = {}) ⇒ Object



18
19
20
21
22
23
24
25
26
27
# File 'lib/briar/keyboard/uia_numeric_keyboard.rb', line 18

def keyboard_send_numeric_backspace(opts={})
  default_opts = {:wait_for_keyboard => false}
  opts = default_opts.merge(opts)
  wait_for_keyboard if opts[:wait_for_keyboard]
  if uia_available?
    uia('UIATarget.localTarget().frontMostApp().keyboard().buttons()[0].tap()')
  else
    keyboard_enter_char 'Delete'
  end
end