# fix\(desktop\): stop blocking the renderer during topology polling · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/0427a89a55ffeeb4bf5e2620d75bd23c13a351a3)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 0427a89a55ffeeb4bf5e2620d75bd23c13a351a3

Requested commit: 0427a89a55ffeeb4bf5e2620d75bd23c13a351a3

Commit: 0427a89a55ffeeb4bf5e2620d75bd23c13a351a3

Tree: fe67cb0a5b570aacd5d0e881161e69b4ef128818

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
fix(desktop): stop blocking the renderer during topology polling

Every 3 s topology poll and every composer render called sendSync for the
local-environment bootstraps and enabled flag, so a busy main process froze
the renderer while typing (#12689).

The preload now reads each value synchronously once for the first paint and
caches it. The enabled flag only changes through a setter that relaunches the
app, so the startup value stays correct. Bootstraps are refreshed by a new
async bridge method over ipcRenderer.invoke on the same channel; the platform
poll awaits it before reading the primary and secondary topology, so a
WSL/secondary backend appearing, disappearing or changing still reaches the
UI within one poll.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

```

## Parents

- [2669a8beb0adeaa80d2de238086610d906c242c4](https://git.cafe/pingdotgg/t3code/commit/2669a8beb0adeaa80d2de238086610d906c242c4?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/0427a89a55ffeeb4bf5e2620d75bd23c13a351a3?format=markdown)
