Linux input click freeze, UI not refreshing - cc-switch
Quick fix
Upgrade to cc-switch v3.13.0 or later. It sets WEBKIT_DISABLE_COMPOSITING_MODE=1 at startup and applies a window focus fix.
Symptom
Section titled “Symptom”在 Linux 下使用 cc-switch v3.11.1 时,点击任意输入框后应用会卡死(必现)。
另外会偶发自动拉起浏览器并打开 `https://github.com/farion1231/cc-switch`。When using cc-switch v3.11.1 on Linux, clicking any input field freezes the application (reproducible every time). Additionally, the browser is occasionally launched automatically and opens `https://github.com/farion1231/cc-switch`.
This issue is concentrated on Linux desktop environments (Debian 13 XFCE/KDE, Ubuntu 22.04/24.04, reported on both X11 and Wayland, including Docker/kasmweb containers). Clicking any input field freezes the GUI and the interface stops refreshing; only repeatedly resizing the window triggers a repaint. The maintainer attributes it to rendering compatibility between Tauri 2 / WebKitGTK and the system environment (an upstream issue). Manually setting WEBKIT_DISABLE_COMPOSITING_MODE=1, WEBKIT_DISABLE_DMABUF_RENDERER=1, or upgrading WebKitGTK did not work for some users. v3.13.0 applies a systematic fix (sets WEBKIT_DISABLE_COMPOSITING_MODE=1 at startup, runs a focus fix on all window re-show paths, removes data-tauri-drag-region on Linux), officially confirmed as fixed. #1667 is a related variant: v3.12.2/v3.12.3 did not auto-refresh the UI, and rolling back to v3.11.1 made it disappear. Note that one user reported that in a 3.14.1 Ubuntu 22.04 Docker environment "any edit freezes the app", so the issue may still recur in some environments after upgrading, which contradicts the official conclusion.
#2489 is a same-symptom variant on Windows (the main window never appears at all, rather than freezing): when logged in with the built-in Windows Administrator account, Evergreen WebView2 initialization fails and the msedgewebview2.exe child process is never spawned. This is a different root cause from the Linux WebKitGTK rendering problem and is fixed differently (see FAQ).
Upgrade cc-switch to v3.13.0 or later. Starting from v3.13.0 the app automatically sets WEBKIT_DISABLE_COMPOSITING_MODE=1 at launch, runs a focus fix (linux_fix::nudge_main_window) on every window show path (startup, deeplink, single_instance, tray show), and removes data-tauri-drag-region on Linux to avoid Wayland issues. The maintainer confirmed in #1667 that this version fixes the Linux UI responsiveness problem.
If it still freezes after upgrading, enable "Linux native title bar" in the settings and try again (the maintainer's suggestion in #1290).
Temporary workaround: after the GUI freezes, repeatedly resize the window to force the UI to repaint (it freezes again once you stop resizing; emergency use only).
If the deb package still has issues, try building it locally as an AppImage (a user verified the AppImage works on xubuntu 24.04).
If none of the above works, you can switch to the CLI version cc-switch-cli (https://github.com/SaladDay/cc-switch-cli), recommended by the maintainer.
Affected Versions
Section titled “Affected Versions”Source Issues
Section titled “Source Issues”This page is distilled from 3 real issues
- I already launched with WEBKIT_DISABLE_COMPOSITING_MODE=1 set, why does it still freeze?
- Multiple users (including some who also set WEBKIT_DISABLE_DMABUF_RENDERER=1 and upgraded WebKitGTK to 2.50.4) reported that setting this environment variable manually did not help. The effective fix is upgrading to v3.13.0+, where the app sets the variable internally along with the window focus fix.
- What exactly did v3.13.0 fix?
- It sets WEBKIT_DISABLE_COMPOSITING_MODE=1 at startup; adds linux_fix::nudge_main_window, which runs a focus fix on every window re-show path (startup, deeplink, single_instance, tray show); and removes data-tauri-drag-region on Linux to avoid Wayland issues.
- Is there a temporary way to make the UI refresh after it freezes?
- Repeatedly resizing the window makes the UI repaint on each resize, but it freezes again once you stop. This is only an emergency workaround; upgrading is recommended.
- On Windows the tray icon is fine but the main window won't open. Is this the same problem?
- No, the root cause is different. Investigation in #2489 confirmed: when logged in with the built-in Windows Administrator account, Evergreen WebView2's CreateCoreWebView2EnvironmentWithOptions initialization fails and the WebView2 child process is never spawned. Solutions: set the registry value HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\FilterAdministratorToken = 1 and reboot; or point the WEBVIEW2_BROWSER_EXECUTABLE_FOLDER environment variable to a Fixed Version WebView2 path; or log in with a regular administrator account instead.
- My WebView2 Runtime was deleted by mistake. What should I do?
- Some users reported that accidentally deleting WebView2 also causes the main window to fail to open. Reinstalling the Microsoft Edge WebView2 Runtime fixes it.
Related problems
Section titled “Related problems”This is an unofficial community wiki with no affiliation to the cc-switch authors or the project itself. Its content is compiled from the project's public GitHub issues. This site distributes no software.