mirror of
https://github.com/JetBrains/JetBrainsRuntime.git
synced 2026-01-24 17:30:47 +01:00
JBR-7900 Improve logic of detecting toolkit inside registerShutdownHook
This commit is contained in:
committed by
Nikita Gubarkov
parent
0a0f717e5a
commit
a2d87d8327
@@ -137,6 +137,7 @@ import sun.java2d.ScreenUpdateManager;
|
||||
import sun.java2d.d3d.D3DRenderQueue;
|
||||
import sun.java2d.d3d.D3DScreenUpdateManager;
|
||||
import sun.java2d.opengl.OGLRenderQueue;
|
||||
import sun.java2d.windows.WindowsFlags;
|
||||
import sun.print.PrintJob2D;
|
||||
import sun.util.logging.PlatformLogger;
|
||||
|
||||
@@ -250,7 +251,7 @@ public final class WToolkit extends SunToolkit implements Runnable {
|
||||
private void registerShutdownHook() {
|
||||
Thread shutdown = new Thread(ThreadGroupUtils.getRootThreadGroup(), () -> {
|
||||
// D3D's Java2D Queue Flusher thread needs to be syncronized with shutdown logic
|
||||
if (ScreenUpdateManager.getInstance() instanceof D3DScreenUpdateManager) {
|
||||
if (WindowsFlags.isD3DEnabled()) {
|
||||
D3DRenderQueue.getInstance().flushAndInvokeNow(() -> {
|
||||
shutdown();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user