@@ -5,13 +5,14 @@ import com.intellij.openapi.components.service
55import com.intellij.openapi.project.Project
66import com.intellij.ui.components.ActionLink
77import com.intellij.util.ui.JBUI
8+ import kotlinx.coroutines.GlobalScope
9+ import kotlinx.coroutines.launch
810import org.apache.maven.artifact.versioning.ComparableVersion
911import org.digma.intellij.plugin.analytics.AnalyticsService
12+ import org.digma.intellij.plugin.analytics.BackendInfoHolder
1013import org.digma.intellij.plugin.common.Backgroundable
11- import org.digma.intellij.plugin.common.buildVersionRequest
1214import org.digma.intellij.plugin.common.newerThan
1315import org.digma.intellij.plugin.loadstatus.LoadStatusService
14- import org.digma.intellij.plugin.model.rest.version.VersionResponse
1516import org.digma.intellij.plugin.posthog.ActivityMonitor
1617import org.digma.intellij.plugin.posthog.UserActionOrigin
1718import org.digma.intellij.plugin.ui.panels.DigmaResettablePanel
@@ -21,7 +22,6 @@ import java.awt.Dimension
2122import java.awt.GridLayout
2223import java.awt.event.MouseAdapter
2324import java.awt.event.MouseEvent
24- import java.util.concurrent.CountDownLatch
2525import javax.swing.BorderFactory
2626import javax.swing.Box
2727import javax.swing.BoxLayout
@@ -89,7 +89,7 @@ class LoadStatusPanel(val project: Project) : DigmaResettablePanel() {
8989
9090 val closeButton = JButton (" ❌" )
9191
92- closeButton.isVisible = shouldDisplayCloseButton()
92+ closeButton.isVisible = false
9393 closeButton.isOpaque = false
9494 closeButton.isBorderPainted = false
9595 closeButton.isContentAreaFilled = false
@@ -125,21 +125,18 @@ class LoadStatusPanel(val project: Project) : DigmaResettablePanel() {
125125 borderedPanel.add(contentPanel)
126126 borderedPanel.add(Box .createVerticalStrut(2 ))
127127 this .add(borderedPanel)
128+
129+ GlobalScope .launch {
130+ closeButton.isVisible = shouldDisplayCloseButton()
131+ }
128132 }
129133
130134 private fun shouldDisplayCloseButton (): Boolean
131135 {
132- var versionsResp: VersionResponse ? = null
133- val latch = CountDownLatch (1 )
134-
135- Backgroundable .ensurePooledThread {
136- versionsResp = AnalyticsService .getInstance(project).getVersions(buildVersionRequest())
137- latch.countDown()
138- }
139136
140- latch.await()
137+ val version = BackendInfoHolder .getInstance().getAboutLoadIfNull()?.applicationVersion ? : return false
141138
142- val currentBackendVersion = ComparableVersion (versionsResp?.backend?.currentVersion )
139+ val currentBackendVersion = ComparableVersion (version )
143140 val closeButtonBackendVersion = ComparableVersion (" 0.3.25" )
144141 return currentBackendVersion.newerThan(closeButtonBackendVersion)
145142 }
0 commit comments