Automattic / Automattic/simplenote-electron

Cursor Not Visible on Windows 10 High Contrast Mode

Open
#3,051 2 comments 0 reactions 0 assignees View on GitHub
[OS] windows bug
Dominant language
TypeScript
Stars
5.3k
Forks
588
Avg merge
9h 45m
Merged PRs (30d)
4

Description

After a change to the rendering engine a few months ago, the cursor is invisible on the Windows 10 Simplenote app when Windows High Contrast Mode is enabled (LShift+LAlt+PrtSc). Disabling HCM fixes the issue.

This also occurs on the web version in Chromium builds and the solution is changing the `#forced-colors` flag to disabled.

### Expected
Cursor should be visible in the HCM (High Contrast Mode).

### Observed
Cursor is not visible.

### Reproduced
1. Enable High Contrast Mode (LShift+LAlt+PrtSc) on Windows 10
2. Observe the cursor

### Where did you see the bug

It occurs on all versions of Windows 10 (at least since v1903) when enabling High Contrast Mode (LAlt+LShift+PrtScn)
It doesn't occur on Simplenote v. 2.11.0
It occurs on newer versions such as 2.21.0 with the new rendering engine

On Chromium browsers such as Google Chrome and Vivaldi, the solution is setting the `#forced-colors` flag to disabled.

Chromium changed its text rendering engine in 2020, and it became necessary to change the flag with HCM enabled. There's an assumption that Simplenote might now use this engine.

Report from 4552849-zen

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the invisible cursor with Windows 10 High Contrast Mode enabled in Simplenote 2.21.0 and compare it with 2.11.0. Check the Chromium `#forced-colors` behavior and the web version; done means the cursor is visible in HCM without requiring that workaround.

Written by the indexing model from the issue text.

Assessment

Tech stack
electron, typescript
Domain
accessibility, desktop, frontend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.