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

updateCursorImmediately() for embedded frames is slow, XToolkit

XMLWordPrintable

    • x86
    • linux

      There is significant performance difference between application with a number of Swing JTable cells when running in a standalone JFrame or in (J)Applet. After some investigation, the root cause was found:

      BasicTableUI.paintCell->CellRendererPane.paintComponent->Container.validate->Component.updateCursorImmediatly->GlobalCursorManager.updateCursorImmediatly()->_updateCursor....

      updateCursorImmediately() takes about 20% of EDT calls which is pretty inefficient. However, when running inside an applet, it takes up to 50% of the time because of the next call:

      XEmbeddedFramePeer.getLocationOnScreen()->XBaseWindow.toGlobal()->XEmbeddedFramePeer.getAbsoluteX/Y()->XlibUtil.translateCoordinates()

            Unassigned Unassigned
            art Artem Ananiev (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Imported:
              Indexed: