diff --git a/platform/platform-impl/src/com/intellij/jdkEx/JdkEx.java b/platform/platform-impl/src/com/intellij/jdkEx/JdkEx.java index 6b3a9beda509..2baaf58f8f72 100644 --- a/platform/platform-impl/src/com/intellij/jdkEx/JdkEx.java +++ b/platform/platform-impl/src/com/intellij/jdkEx/JdkEx.java @@ -71,4 +71,18 @@ public class JdkEx { } } } + + public static void setCustomDecorationTitleBarHeight(@NotNull Window window, int height) { + if (SystemInfo.isJetBrainsJvm && SystemInfo.isWindows) { + try { + MethodInvocator invocator = + new MethodInvocator(false, Class.forName("sun.awt.windows.WWindowPeer"), "setCustomDecorationTitleBarHeight", int.class); + if (invocator.isAvailable()) { + invocator.invoke(AWTAccessor.getComponentAccessor().getPeer(window), height); + } + } + catch (ClassNotFoundException ignore) { + } + } + } } diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/CustomHeader.kt b/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/CustomHeader.kt index 4e775697ef98..3b2ad388bca1 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/CustomHeader.kt +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/customFrameDecorations/header/CustomHeader.kt @@ -159,6 +159,7 @@ abstract class CustomHeader(private val window: Window) : JPanel(), Disposable { protected fun updateCustomDecorationHitTestSpots() { val toList = getHitTestSpots().map {it.getRectangleOn(window)}.toList() JdkEx.setCustomDecorationHitTestSpots(window, toList) + JdkEx.setCustomDecorationTitleBarHeight(window, height) } abstract fun getHitTestSpots(): List