Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8171808

Performance problems in dialogs with large tables when JAB activated

    Details

      Backports

        Description


        Performance problems observed in dialogs with large tables when JAB is
        activated.

        JAWS creates huge performance problems in dialogs with large table menu
        operations. The problem can reproduced without JAWS with the JavaFerret as
        well, if the AccessibilityEvent "TrackState PropertyEvent" is activated. It
        seems, that the JAB causes the problem.

        A demo application was provided that demonstrates the problem. The demo
        application contains a table with a total of 1500 entries, which are loaded
        in portions of 100, when a data field of the entry is required. This is
        usually the case, when the entries in the table are scrolled in the visible
        area. The loading of the entries is logged in the bottom section of the demo
        application. Start the demo application with running JAWS or running
        JavaFerret with activated "TrackStatePropertyEvent". You can observe in the
        logging field of the bottom scection, that the entries of the table are
        loaded step by step, only when the Alt key in the menu is used. The Focus
        doesn¿t have to be inside the table.
         
        The result is a huge performance problem. When you switch to the menu via alt
        key, for the user seems as if the window "freezes" by this initial loading.

        To replicate the problem, follow these steps:

        1) Enable JAB using the command below.

        c:Program FilesJavajdk1.7.0_111bin>jabswitch -enable
        The Java Access Bridge has been enabled.

        2) Start JAWS screen reader and confirm it's running.
        In my case, I use a 64-bit OS and hence have installed the 64-bit version of
        JAWS

        NOTE: It is easiest to match your version of Java with the version of JAWS.
        It is feasible to run a 32-bit Java with a 64-bit version of JAWS if you
        copy WindowsAccessBridge-64.dll from a 64-bit jre installation to the
        C:WindowsSystem32 directory.

        3) Start demo application using the following command.

        c:testJAB performance>"c:Program Files (x86)Javajdk1.7.0_111binjava
        " -jar <Demo>.jar

        4) Ensure JAWS screen reader reads the application description text in
        addition to the title bar description. If you mismatch your JRE version with
        your JAWS version, the result is that JAWS will only read the text in the
        window title bar.

        5) Once JAWS starts to read the application description text, click on the
        application with the mouse and then press the ALT key.  

        6) You should observe that multiple pages of table entries are loaded and you
        may notice a performance issue with JAWS screen reader. During the loading,
        key commands such as the right and left arrows do not work as expected.

        In the bottom section of the application, you should notice multiple entries
        as several pages of the table are loaded.
          
        NOTE: support observed an issue with JAWS screen reader in only some of the
        tests performed. When the test system had low load, the performance issue
        was not as noticeable.


          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  mcherkas Mikhail Cherkasov (Inactive)
                  Reporter:
                  shadowbug Shadow Bug
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: