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

updateCursorImmediately() for embedded frames is slow, XToolkit

    XMLWordPrintable

    Details

    • Subcomponent:
    • CPU:
      x86
    • OS:
      linux

      Description

      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()

        Attachments

          Activity

            People

            Assignee:
            Unassigned Unassigned
            Reporter:
            art Artem Ananiev
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Imported:
              Indexed: