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

[macos] Screen Magnifier: Getting java.awt.IllegalComponentStateException when menu item is selected

    XMLWordPrintable

    Details

      Description

      I have enabled Screen Magnifier on Mac OS ( Accessibility -> Zoom ) and Selecting the menu item throws the following exception

      JDK 18 B35 exception
      -------------------------------
      java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
      at java.desktop/java.awt.Component.getLocationOnScreen_NoTreeLock(Component.java:2114)
      at java.desktop/java.awt.Component.getLocationOnScreen(Component.java:2088)
      at java.desktop/sun.lwawt.macosx.CAccessibility$23.call(CAccessibility.java:472)
      at java.desktop/sun.lwawt.macosx.CAccessibility$23.call(CAccessibility.java:470)
      at java.desktop/sun.lwawt.macosx.LWCToolkit$CallableWrapper.run(LWCToolkit.java:698)
      at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:308)
      at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
      at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
      at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
      at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
      at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
      at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747)
      at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
      at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
      at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744)
      at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
      at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
      at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
      at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
      at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)


      Step to Reproduce
      ---------------------------
      1) Enable Screen magnifier on theMac
      System Preference -> Accessibility -> Zoom -> Select ( Enable Hover Text)
      2) Run the SwingSet2 Code by passing the following option
       -Djavax.accessibility.screen_magnifier_present=true
      3) Press "CMD" button and move the mouse pointer on different swing component on SwingSet2.
      4) Click on "Options" menu and select the first menu item. If you see the exception then the bug is reproduced.

      I have attached the screen recording for more information.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              kizune Alexander Zuev
              Reporter:
              landrews Lawrence Andrews
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: