in benchmarks/intellij/src/main/kotlin/com/jetbrains/compose/LifecycleListener.kt [74:92]
suspend fun stressTestToolWindows(toolWindows: List<ToolWindow>) {
while (performanceDialog.isPaused().not()) {
val visiblePanelsCount = toolWindows.count { it.isVisible }
delay(200)
doMeasure("$visiblePanelsCount panels")
delay(200)
toolWindows.forEach {
if (Random.nextBoolean()) {
if (it.isVisible.not()) {
it.show()
}
} else {
if (it.isVisible) {
it.hide()
}
}
}
}
}