From 2a8ca61368e371ee377e70231fecd13d9b6de757 Mon Sep 17 00:00:00 2001 From: Ivan Semenov Date: Sat, 16 Mar 2024 10:31:50 +0100 Subject: [PATCH] [editor-inlay] revalidate and repaint inlay container when inlays are added or removed Without this an inlay could be left stuck at an undefined size/position until the next editor re-layout GitOrigin-RevId: a09883bba23ddf924da97c3c67905aea1067ba58 --- .../com/intellij/openapi/editor/impl/ComponentInlay.kt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/ComponentInlay.kt b/platform/platform-impl/src/com/intellij/openapi/editor/impl/ComponentInlay.kt index 86a2031b0336..8d14ecb12c64 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/ComponentInlay.kt +++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/ComponentInlay.kt @@ -132,6 +132,10 @@ private class ComponentInlaysContainer private constructor(val editor: EditorEx) else -> Unit } remove(renderer.component) + if (!editor.isDisposed) { + revalidate() + repaint() + } return true } @@ -154,6 +158,10 @@ private class ComponentInlaysContainer private constructor(val editor: EditorEx) } else -> Unit } + if (renderer.component.isVisible) { + revalidate() + repaint() + } } override fun invalidate() {