Skip to content

Aggressive window refresh loop and focus-stealing on Windows #19

Description

@ZFordDev

Description

A user reported an aggressive refresh loop after installing Glint. The application rapidly toggles between active and inactive states, causing heavy window flicker and stealing focus.

Reproduction & Environment Details

  • App Version: v1.0.1
  • OS: Windows 10 (Primary suspect) or Windows 11
  • Hardware Profile: Legacy desktop hardware (Dell Optiplex SFF, ~8th Gen Intel CPU or older, DDR4 RAM, potential dedicated low-profile GPU)
  • Status: Unconfirmed / Needs reproduction

Step 1: Reproduction Strategy

Because the report contains hardware and OS uncertainties, we should systematically isolate the behavior:

  1. Virtual Machine Testing:
  • Spin up a clean Windows 10 VM (v22H2) and test v1.0.1 release build.
  • Spin up a clean Windows 11 VM (v23H2/v24H2) and test v1.0.1 release build.
  1. Graphics/Hardware Acceleration:
  • Test with hardware acceleration enabled vs. disabled (to account for older integrated iGPUs/low-profile GPUs).
  1. Focus & Event Triggers:
  • Check auto-update logic, interval polling, or tray-icon focus handlers that might be continuously triggering win.focus() or window re-renders.

Potential Root Causes to Inspect

  • Focus Loops: An explicit focus call (e.g., win.show() or win.focus()) bound to an aggressive interval or event listener (e.g., auto-updater, webview ping, network status polling).
  • GPU Rendering / Hardware Acceleration: Older GPU drivers failing to handle hardware acceleration or window transparency/effects (e.g., acrylic/blur behind), triggering a constant fallback redraw loop.
  • Electron / Framework Window State: Event listener collision between blur and focus events causing infinite toggling.

Needed Action

  • Attempt VM reproduction on Windows 10.
  • Verify if disabling GPU hardware acceleration mitigates the flashing on low-spec environments.
  • Reply to user requesting a log output or specific GPU/OS build if reproducible steps cannot be found.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions