Permalink
Commits on Dec 2, 2016
  1. fix #1736 Changing implementation of interface wrappers to avoid leaks

    If an object for which an interface wrapper has been created is never
    disposed through its $dispose method, the garbage collector can never
    collect it because the corresponding interface keeps a reference to it.
    
    For example, assuming the x.Y class impements the x.IY interface,
    the following code creates a leak:
    
     for (var i = 0; i < 100000; i++) {
        var myObj = new x.Y();
        myObj.$interface("x.IY");
        // The leak would not appear if myObj was disposed like this:
        // myObj.$dipsose();
     }
    
    This commit avoids creating a leak in such a case by using a WeakMap
    in the interface in order to keep a reference to the underlying object
    without preventing the garbage collector from collecting the underlying
    object and interface wrapper if there is no other reference to them
    anywhere.
    (in case the browser does not support WeakMap, an equivalent alternative
    implementation is used)
    
    AT-1602
    PTR 12602212
    divdavem committed on GitHub Dec 2, 2016
Commits on Nov 29, 2016
  1. feat #1734 Injecting DomEventWrapper in TextInput:onclick

    Before this commit, the onclick event handler of the TextInput-based
    widgets did not receive any event object. This commit makes sure a
    DomEventWrapper object is passed to the event handler, as it is done
    in other widgets.
    
    PTR 11315120
    AT-1344
    close #1734
    divdavem committed on GitHub Nov 29, 2016
Commits on Nov 24, 2016
  1. feat/test #1733 Updating Firefox to version 50 (from 48) for tests on…

    … travis
    
    close #1733
    divdavem committed on GitHub Nov 24, 2016
  2. fix/test #1732 Removing specific versions of Chrome and Firefox in te…

    …st config
    
    This avoids having to update the repository for each new version of those
    browsers.
    
    close #1732
    divdavem committed on GitHub Nov 24, 2016
Commits on Nov 23, 2016
  1. feat #1731 Adding the focusableWhenDisabled parameter on aria:Button …

    …widgets
    
    Blind users often navigate in a page with tab, which means they cannot
    notice disabled widgets, which are not focusable.
    When those widgets are essential to understand the page, this is a problem,
    especially for buttons. This commit allows important buttons to be
    focusable when they are disabled, by setting the focusableWhenDisabled
    parameter to true.
    
    AT-1593
    close #1731
    divdavem committed on GitHub Nov 23, 2016
  2. feat #1724 Raising an event when a new parent is added in the 'aria:p…

    …arent' property of a node
    
    This commit adds a new global `aria-parent-metadata-added` event
    in `aria.utils.Json` which notifies that a new parent has been added
    in the `aria:parent` property of a node of the datamodel.
    
    This can help detecting potential memory leak issues with `aria:parent`
    properties being added in the datamodel, but never removed.
    
    close #1713 
    close #1724
    vcarle committed with divdavem Nov 23, 2016
Commits on Nov 21, 2016
  1. feat #1730 Adding a focusable element at the top of the TabPanel widget

    This focusable element is only added when waiAria is true, and has the
    same aria-labelledby attribute as the root element of the tab panel,
    so that, when focusing the tab panel, the title of the currently selected
    tab is read by screen readers.
    
    AT-1580
    close #1730
    divdavem committed on GitHub Nov 21, 2016
Commits on Nov 17, 2016
  1. fix/test #1729 Fixed test.aria.utils.accessibility.AccessibilityJawsT…

    …estCase (#1729)
    
    In some testing environments, the screen reader has to read multiple things, so it's better to wait longer so that everything is read properly.
    
    close #1729
    ymeine committed on GitHub Nov 17, 2016
  2. fix #1728 Short months in Thai were not set properly (#1728)

    PTR 12371609
    fbasso committed on GitHub Nov 17, 2016
  3. Revert "feat #1721 WAI-ARIA - ActionWidget - Implement aria-hidden (w…

    …aiLabelHidden)" (#1727)
    
    This reverts commit c250e2f.
    
    It seems that the change was actually not necessary.
    
    close #1727
    ymeine committed on GitHub Nov 17, 2016
  4. fix #1726 - WAI-ARIA - DatePicker - Date was read even with keystroke…

    …s not changing text (#1726)
    
    An internal variable was not properly used to implement the feature, the fix was trivial. Test has been enhanced to check this use case.
    
    close #1726
    ymeine committed on GitHub Nov 17, 2016
  5. fix #1725 Removing role="button" and adding a tabindex on dropdown icons

    This commit removes the role="button" attribute and adds a tabindex on the
    dropdown icon of the widgets which extend DropDownTextInput (DatePicker,
    MultiSelect...), so that those icons are not included in the list of
    buttons displayed by screen readers and become focusable by tab.
    
    AT-1582
    divdavem committed on GitHub Nov 17, 2016
Commits on Nov 10, 2016
  1. feat #1723 WAI-ARIA - Processing Indicator - Implement processing ind…

    …icators (#1723)
    
    Now processing indicators - on elements and sections - can be accessible, the loading message being repeated every X seconds (by default 2) and the elements under the indicator being hidden the time it is active.
    
    AT-1540
    
    close #1723
    ymeine committed on GitHub Nov 10, 2016
Commits on Nov 9, 2016
  1. feat #1721 WAI-ARIA - ActionWidget - Implement aria-hidden (waiLabelH…

    …idden) (#1721)
    
    Now it is possible to set waiLabelHidden for all ActionWidget based widgets, in order to put the attribute aria-hidden around their actual (visual) label element.
    
    AT-1571
    PTR 12373188
    
    close #1721
    ymeine committed on GitHub Nov 9, 2016
Commits on Nov 7, 2016
  1. fix #1722 Removing the "tab" role for @aria:Tab

    Blind users do not like the "tab" role because, just as the "application"
    role, it prevents them from using their navigation shortcuts. This commit
    simply removes the role attribute for tabs, and also adds the href
    attribute on the anchors so that tabs are recognized as links.
    divdavem committed on GitHub Nov 7, 2016
Commits on Oct 25, 2016
  1. fix #1719 Skip updating manually hidden dialogs on viewport resize

    If a dialog is manually hidden (by setting its display CSS property
    to "none" and by updating the corresponding isOpen boolean on the
    popup object), its size will no longer be updated on viewport resize.
    This avoids setting the size of the popup to 0 (as offsetWidth
    and offsetHeight can return 0 for elements which are not visible on the
    screen).
    
    AT-1558
    PTR 12308453
    divdavem committed on GitHub Oct 25, 2016
Commits on Oct 24, 2016
  1. refactor #1718 aria.utils.Bridge now uses aria.utils.FrameATLoader

    aria.utils.Bridge now relies on aria.utils.FrameATLoader to load Aria
    Templates in the popup window instead of relying on its own implementation
    (which reduces duplication in the framework).
    
    There is now a new crossDomain option in aria.utils.FrameATLoader
    to use document.write instead of loading FrameATLoaderHTML.html, which
    makes FrameATLoader work in case Aria Templates is loaded from a different
    origin (such as cdn.ariatemplates.com).
    However, when this option is set to true, changing the hash in the popup
    causes issues on Firefox 3 and 11, so it is false by default.
    
    Calls to document.write to load a script, are now removed, as these
    calls can be blocked on Chrome in some cases, as documented in the
    following document:
    https://developers.google.com/web/updates/2016/08/removing-document-write
    
    This commit fixes BridgeTestCase on IE 9.
    It also fixes the crash which occured when closing Aria Templates debug
    tools (due to an endless recursive call).
    
    close #1718
    divdavem committed on GitHub Oct 24, 2016
Commits on Oct 20, 2016
  1. feat #1717 Using CORS instead of Flash by default for cross-domain re…

    …quests
    
    Now that CORS is largely implemented in browsers, this commit changes the
    default implementation of cross-domain requests to use CORS instead of
    the Flash-based implementation.
    
    The Flash-based implementation can still be re-enabled by calling the
    aria.core.IO.updateTransports method in the following way:
    
      aria.core.IO.updateTransports({
         'crossDomain' : 'aria.core.transport.XDR'
      });
    
    Note that this change is NOT backward compatible. Applications relying on
    the Flash-based implementation of cross-domain requests should use the
    above lines of code or migrate to CORS.
    divdavem committed on GitHub Oct 20, 2016
Commits on Oct 14, 2016
  1. 1.7.23

    divdavem committed Oct 14, 2016
  2. fix/test #1716 Fixing LinkDisabledTestCase on IE 8 (by making it a ro…

    …bot test)
    
    Now that aria:Link widgets really have the disabled attribute when they
    are disabled, it seems IE 8 raises an error when aria.utils.SynEvent
    tries to click on them. This commit fixes this issue by using the robot
    implementation of SynEvent (aria.jsunit.SynEvent) instead of
    aria.utils.SynEvent.
    
    close #1716
    divdavem committed on GitHub Oct 14, 2016
Commits on Oct 13, 2016
  1. fix #1715 Fixed test.aria.utils.domNavigationManager.DomNavigationMan…

    …agerRobotTestCase for IE 7, 8, 9 (#1715)
    
    Was using the method "focus" instead of triggering a user click.
    
    Also improved a bit the test.EnhancedRobotBase class to accept both id or element as input for some functions.
    
    close #1715
    ymeine committed on GitHub Oct 13, 2016
  2. feat/test #1714 Excluding failing tests

    This commit creates a list of failing tests (for each browser), which will
    be excluded during the release campaign until they are individually
    investigated and fixed.
    
    close #1714
    divdavem committed on GitHub Oct 13, 2016
Commits on Oct 11, 2016
  1. fix #1710 Fixed test.aria.widgets.wai.popup.dialog.titleTag.DialogTit…

    …leTagJawsTestCase
    
    The dialog did not use properly the new utility to hide other elements: it was using wrong reference elements.
    
    Also improved the aria.utils.DomNavigationManager by not touching elements whose hidden state is managed by other entities (i.e. which have a aria-hidden without a registered request counter).
    
    close #1710
    ymeine committed with divdavem Oct 11, 2016
  2. fix #1709 Fixed aria.utils.DomNavigationManager for IE 7, 8, 9

    Because of various API or syntax incompatibilities.
    
    close #1709
    ymeine committed with divdavem Oct 11, 2016
  3. fix/test #1712 Improving reliability of DataModelOnChangeRobotTestCase

    This commit improves the reliability of DataModelOnChangeRobotTestCase by
    waiting for the focus and adding a pause after typing.
    This fixes the test on Safari with robot-server.
    
    close #1712
    divdavem committed on GitHub Oct 11, 2016
  4. fix/test #1711 Slowing down BindableRobotTestCase to make it more rel…

    …iable
    
    Depending on how fast the robot implementation is,
    test.aria.html.textarea.bind.BindableRobotTestCase and
    test.aria.html.textinput.bind.BindableRobotTestCase could fail in case the
    keys are typed quicker than the delay we use to simulate the type event.
    This commit adds some pause between each character so that the corresponding
    type events do not combine several letters together.
    Especially, this commit fixes both tests with the robot-server on Safari.
    
    close #1711
    divdavem committed on GitHub Oct 11, 2016
Commits on Oct 10, 2016
  1. fix/test #1708 Using Firefox instead of PhantomJS to run TooltipRobot…

    …TestCase on travis-ci
    
    Using Firefox instead of PhantomJS to run TooltipRobotTestCase on travis-ci
    as TooltipRobotTestCase often fails on PhantomJS (for an unknown reason).
    
    close #1708
    divdavem committed on GitHub Oct 10, 2016
  2. fix/test #1707 test.aria.core.CSSPrefixTestCase

    This commit fixes CSSPrefixTestCase on Firefox 49 by changing the order
    in which prefixes are tested. Moz is now tested before Webkit, so that,
    on Firefox, Moz is chosen rather than Webkit (now that both seem to be
    supported on Firefox).
    
    close #1707
    divdavem committed on GitHub Oct 10, 2016
  3. fix/test #1704 Disabling ViewportHugeShrinkTestCase

    test.aria.widgets.container.dialog.viewportResize.ViewportHugeShrinkTestCase
    was present in the repository without being part of a test suite, and has
    not been run during the release test campaign for a long time.
    It fails in all browsers except PhantomJS, but PhantomJS is known not to
    properly handle the size of the viewport (and this test is related to it).
    
    More investigation should be done on this test to either fix it or remove
    it.
    
    close #1704
    divdavem committed on GitHub Oct 10, 2016
Commits on Oct 7, 2016
  1. fix #1703 Removing alert when logging after aria.core.Log is disposed

    When aria.core.Log is disposed, the previous code was replacing the error
    logging function by a function which displayed the error using alert.
    The alert could sometimes be triggered during the tests in IE 7 and
    blocked the following tests. This commit replaces it with logs on the
    console.
    divdavem committed on GitHub Oct 7, 2016
  2. feat #1698 Moved aria.popup.PopupNavigationManager to aria.utils.DomN…

    …avigationManager
    
    close #1698
    ymeine committed Oct 4, 2016
  3. feat #1698 Improved the PopupNavigationManager & added a aria-hidden …

    …manager
    
    Also:
    
    - added a utility function to add click steps in JAWS tests
    - added aria-hidden attributes on elements of the test runner 'test/test.htm', for safety and consistency
    - fixed the implementation and the tests of aria.utils.Array.reduce
    
    close #1698
    ymeine committed Oct 3, 2016
  4. fix/test #1702 Reducing the number of phantomjs instances on travis

    This increases the stability of the travis build.
    
    close #1702
    divdavem committed on GitHub Oct 7, 2016
Commits on Oct 6, 2016
  1. feat/test #1701 Updating attester (2.5.3)

    close #1701
    divdavem committed on GitHub Oct 6, 2016
  2. refactor #1696 Cleaned a bit the code and mostly the tests, in order …

    …to use the new utilities
    
    close #1696
    ymeine committed Sep 30, 2016