RFR: 8305578: X11GraphicsDevice.pGetBounds() is slow in remote X11 sessions

Maxim Kartashev mkartashev at openjdk.org
Wed Apr 5 08:28:08 UTC 2023


Getting bounds of a `GraphicsDevice` and insets of a screen are fairly frequent operations. When working over the network (remote X session), those can take several *seconds* to complete, introducing repeated freezes even when typing in an editor feels only slightly sluggish.

On the other hand, neither bounds nor insets change very often - if at all - during the lifetime of an application. So caching their values seems like a natural solution to the problem. The caches need to be reset only when there's a possibility of change in the screens configuration.

A similar patch has been living in [JetBrains Runtime](https://github.com/JetBrains/JetBrainsRuntime/) for well over a year.

-------------

Commit messages:
 - 8305578: X11GraphicsDevice.pGetBounds() is slow in remote X11 sessions

Changes: https://git.openjdk.org/jdk/pull/13346/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13346&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8305578
  Stats: 48 lines in 3 files changed: 42 ins; 1 del; 5 mod
  Patch: https://git.openjdk.org/jdk/pull/13346.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13346/head:pull/13346

PR: https://git.openjdk.org/jdk/pull/13346



More information about the client-libs-dev mailing list