- Gem platform attribute value change.
- Add support for 64bit Ruby for the Win32 adapter. PR #136
- Update ffi dependency to ~> 1.15.0. PR #132
- Update ffi dependency to ~> 1.11.0.
- Use Visual Studio 2019 Build Tools for running tests.
- Fix searching locators by hwnd. See more at issue #96.
- Loosen up ffi dependency due to fixed segfault problem. See more at issue #81.
- Fixes #send_keys with special characters. Issue #92.
- Set ffi 1.9.0 as a dependency for now because newer versions are broken. See more at issue #81.
- Add SelectList#select and SelectList#clear.
- Add Table#select and Table#clear.
- Add Table#selected_rows.
- Improve performance of table Row lookups.
- SelectList#options accepts :index and :text (Regexp or String).
- Window#child in ms_uia works for popup windows as well.
- Added #select and #clear into SelectList::SelectListOption for multi-select support
- Removed SelectList#select and SelectList#set
- Added #select, #selected? and #clear to Table::Row for multi-select support
- Removed Table#select and Table#selected?
- Fixed an issue with selecting ListBox items that our outside of the viewable area
- Add Control#help_text to relay ToolTip information
- Add support for Window#spinner
- Fixed an issue with trying to interact with a button after it goes away
- Add support for Window#tab_control
- Add license part of gemspec. Closes #70.
- Added the ability to limit the scope to children only when looking for a control
- Fixed issues with ListBox controls not firing index change events
- Window#send_keys supports now :dash, :slash and :backslash. Closes #64.
- Ability to get and set the text of a multi-line text control that only supports the TextPattern.
- Add some caching to speed up locating controls.
- Fix issue #67 that happens when clicking on controls.
- Add deprecation warning.
- Ability to interact with controls that do not have native window handles (for example WPF applications).
- Add support for :name locator.
- Add support for Window#value_control.
- Add Table#headers.
- Add Table#values.
- Control#exists? uses now uia code.
- ControlType.Document is also considered as a TextField.
- Table#select and Table#selected? use 0-based indexing.
- Table#select supports value too.
- Add support for "[", "]" and "'" characters when using Window#send_keys. Fixes #61.
- Add Control#collapse for collapsing values in collapsable items.
- Add Control#expand for expanding values in expandable items.
- Add Row#cell(s).
- Add Table#cell(s).
- Add Table#row(s).
- Add Window#menu for selecting menu items.
- Fire change events when SelectList selections have been changed.
- Window#child instantiates MsUia adapter Window.
- Add support for PasswordField.
- Show error message when registration of AutoIt dll fails.
- add mouse API with Window#mouse method
- add Mouse#move, #position, #click, #press and #release methods
- support the same mouse API as Win32 adapter
- add Window#dimensions to get coordinates of the window
- add Window#move to move/resize the window
- fix Window#child not to raise any exceptions for cases where window isn't technically a child
- renamed WinFfi adapter to Win32 adapter
- added experimental MsUia adapter
- added support for JRuby
- Window.windows accepts locators too
- added Window#class_names for retrieving internal class names of the window and it's controls
- default locator is :index => 0 when nothing else specified
- Window#send_keys has now syntax similar to WatirSpec (https://github.com/watir/watirspec/blob/master/element_spec.rb#L206-249)
- added TextField#send_keys
- added Window#mouse_move, #mouse_click, #mouse_position, #press_mouse and #release_mouse methods for AutoIt adapter
- use current window's handle (hwnd) in WinFfi::Window#child method
- loading lazily oleacc.dll
- loading lazily uia_dll.rb due to problems on certain Windows XP machines
- Fixed it for Ruby 1.9.2.
- Window#send_keys now accepts only String argument similar to AutoIt's Send function.
- added Table#strings, #select, #selected? methods.
- added Label element support with #value method.
- added #has_focus? and #set_focus methods to controls.
- added possibility to search controls by automation id as :id.
- added #enabled? and #disabled? methods for controls.
- added Window#control and #controls methods for accessing controls generally.
- added SelectList#option method.
- added ListBox element support with #count, #items, #exist?, #selected? and #select methods.
- added Window.windows, #windows, #buttons and #text_fields methods to retrieve collection of elements and use them with Enumerable/Array methods.
- added Window#child method for searching child windows and popups
- added initial support for Radio, Checkbox, SelectList and Table
- allow to search windows by PID
- allow to search windows without text (like empty Notepad window for example).
- added possibility to use block for #click to specify successful clicking condition.
- renamed :ffi adapter to :win_ffi because FFI may be used on other platforms too.
- added Ffi adapter specific method Window#child which searches for child windows and popups
- added yard options for documentation
- added Window#pid method
- added new default adapter for Windows: FFI
- changes for AutoIt adapter:
- added 0-based :index locator for window locators to search for windows with the same criteria.
- renamed text_field and button locator :instance to :index instead.
- :class_name locator is not allowed anymore. Use :class and :index together instead.
- use :value for button locator instead of :text
- most Window, Button and TextField methods wait until the object exists. Use RAutomation::Window.wait_timeout= to set timeout before failing. Default is 60 seconds.
- RAutomation didn't load AutoIt correctly if it wasn't installed before
- using :value locator for buttons instead of :text
- searching only visible windows with some text on them
- Initial release