Skip to content

v0.2.48

Choose a tag to compare

@github-actions github-actions released this 05 Aug 13:30
· 110 commits to main since this release

v0.2.48 — Fix runaway window-focus flicker when a popout terminal is open

Release date: 2026-08-05
Previous version: v0.2.47

TL;DR

Fixes a severe focus flicker storm: with a terminal popped out into a separate
window, opening the new-terminal form in another project could send the two
app windows into a self-sustaining focus ping-pong (15–30Hz title-bar
flashing, effectively freezing the desktop until manual intervention). The
loop ran entirely in the Electron main process, which is why the v0.2.47
renderer-side guard did not catch it.

Highlights

Popout + new-terminal form no longer triggers a focus flicker storm

  • Diagnosed from IME debug logs: the forced IME handoff on form entry blurs
    the main window, which hands OS activation to the open popout. Each
    window's focus-recovery bridge then re-fired the other — a stale focus
    event (processed after activation had already moved to the sibling window)
    turned the webContents.focus() rebind into an HWND activation steal,
    re-arming the sibling's bridge in an endless loop (~10,400 window events
    over 28 seconds in the captured reproduction).
  • The bridge now skips rebinding on stale focus events. A fresh-focus rebind
    targets the already-active window and cannot steal activation, so the loop
    can no longer form. Lock-screen and alt-tab IME recovery paths are
    unaffected — the pending rebind still runs when focus genuinely returns.
  • The main window and popout windows previously carried duplicated copies of
    the bridge; they now share a single implementation so future fixes apply to
    both.

Install / Update

npm i -g clitrigger@0.2.48

Desktop app — pick the right asset:

  • Windows (recommended): CLITrigger-Setup-0.2.48.exe — installer with Start Menu shortcut, uninstaller, and auto-update.
  • Windows (portable): CLITrigger-0.2.48.exe — run directly, no install; no shortcuts and no auto-update (grab new versions manually).
  • macOS: .dmg / Linux: .AppImage

Full commit list

  • b20fbe5 fix(ime): focus-bridge stale 이벤트 가드 — 팝아웃 공존 시 창 간 포커스 강탈 핑퐁 폭주 해소

Related docs

Full Changelog: v0.2.47...v0.2.48