Skip to content

Rendering glitches when a workspace is stopped while ssh connection is alive #98

@fioan89

Description

@fioan89

This issue reproduces with Toolbox 2.6.1. Steps to reproduce:

  1. Open up Toolbox
  2. Connect to a running workspace
  3. Hit Stop from the hamburger menu
  4. Click somewhere else on the desktop to hide the Toolbox widget.

After a few seconds click on the Toolbox icon. Flickers start to appear, and Toolbox refuses to open. A restart for Toolbox is needed to fix the flickerings.

2.6.1.40902 81495 2025-04-26 01:30:17.653 INFO  -EventQueue-0 TrayWidget                Show widget request. Descriptor info: null
2.6.1.40902 81495 2025-04-26 01:30:17.653 INFO  -EventQueue-0 TrayWidget                Creating new widget
2.6.1.40902 81495 2025-04-26 01:30:17.653 INFO  -EventQueue-0 ComposeWindowManager      Show window request. Window: Toolbox, type: WINDOW
2.6.1.40902 81495 2025-04-26 01:30:17.704 INFO  cher-worker-9 DiskUsageManagerImpl      Calculating directory size at /Users/ifaur/Library/Caches/JetBrains/Toolbox/download
2.6.1.40902 81495 2025-04-26 01:30:17.705 INFO  -EventQueue-0 DialogHostKt              Received dialog: null
2.6.1.40902 81495 2025-04-26 01:30:17.705 INFO  cher-worker-9 DiskUsageManagerImpl      Calculating directory size at /Users/ifaur/Library/Caches/JetBrains/Toolbox/download done: 556 MB
2.6.1.40902 81495 2025-04-26 01:30:17.710 INFO  cher-worker-9 ApplicationManagerImpl    Refreshing feed on window open
2.6.1.40902 81495 2025-04-26 01:30:17.739 ERROR -EventQueue-0 ComposeWindowsService     Unhandled exception in a window 'Toolbox': java.lang.ClassCastException: class com.jetbrains.toolbox.api.remoteDev.states.EnvironmentDescription$General cannot be cast to class com.jetbrains.toolbox.api.remoteDev.states.EnvironmentDescription$Error (com.jetbrains.toolbox.api.remoteDev.states.EnvironmentDescription$General and com.jetbrains.toolbox.api.remoteDev.states.EnvironmentDescription$Error are in unnamed module of loader java.net.URLClassLoader @1e643faf)
	at com.jetbrains.toolbox.ui.views.GatewayEnvironmentViewKt$GatewayEnvironmentView$1$2$3$1.invokeSuspend(GatewayEnvironmentView.kt:383)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2$1.invoke(FlushCoroutineDispatcher.skiko.kt:62)
	at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2$1.invoke(FlushCoroutineDispatcher.skiko.kt:57)
	at androidx.compose.ui.platform.FlushCoroutineDispatcher.performRun(FlushCoroutineDispatcher.skiko.kt:105)
	at androidx.compose.ui.platform.FlushCoroutineDispatcher.access$performRun(FlushCoroutineDispatcher.skiko.kt:35)
	at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2.invokeSuspend(FlushCoroutineDispatcher.skiko.kt:57)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Screen.Recording.2025-04-26.at.01.22.56.mov

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    pFad - Phonifier reborn

    Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

    Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy