L'accelerazione hardware di Chrome causa l'invisibilità del cursore del compositore dove c'è un onebox di discourse-calendar (Windows 11)

Versione di Discourse
2026.1.0-latest (c7e9cddb06)

Browser
Chrome 143.0.7499.170 (Build ufficiale) 64-bit
(coorte: 144.0.7559.59 rollout)

Sistema operativo
Windows 11 Home
Versione 10.0.26200 (Build 26200)


Riepilogo

Quando l’accelerazione hardware di Chrome è abilitata, si verifica un problema dell’interfaccia utente:

Il cursore di testo nel compositore diventa invisibile (appare bianco su sfondo bianco).
quando i blocchi evento di Discourse Calendar sono stati cotti
Il problema scompare immediatamente quando l’accelerazione hardware viene disabilitata in Chrome.

Ciò suggerisce un problema di rendering GPU/compositor di Chrome che interagisce con gli elementi dell’interfaccia utente di Discourse piuttosto che una pura regressione CSS.


Problemi osservati

:one: Il cursore del compositore diventa invisibile

  • Si verifica sia nei compositori di nuovi argomenti che di risposta.
  • Il cursore appare bianco / si fonde con lo sfondo, rendendo difficile o impossibile vedere la posizione di digitazione.
  • Si verifica in modo intermittente ma riproducibile con l’accelerazione hardware abilitata.

Comportamento degno di nota:

  • L’apertura degli Strumenti per sviluppatori di Chrome fa immediatamente sì che il cursore venga nuovamente renderizzato normalmente.
  • Ciò suggerisce fortemente un ricalcolo del rendering/compositing piuttosto che modifiche di stato o CSS.

:two: I blocchi evento di discourse-calendar non vengono “oneboxati” in modalità sicura

Quando l’accelerazione hardware è abilitata:

  • In /safe-mode, questo comportamento cambia (previsto, poiché i componenti tema sono disabilitati).

Riproduzione

  1. Utilizzare Chrome su Windows 11 con “Usa accelerazione hardware quando disponibile” abilitato
  2. Aprire un sito Discourse con 2026.1.0-latest
  3. Aprire il compositore e iniziare a digitare
  4. Osservare il cursore invisibile/bianco
  5. Inserire o visualizzare i blocchi evento di discourse-calendar

Mancata riproduzione / diagnostica

  • :cross_mark: Non è possibile riprodurre in /safe-mode
  • :cross_mark: Si riproduce ancora in modalità di navigazione in incognito (non correlato alle estensioni)
  • :cross_mark: Nessun CSS personalizzato configurato
  • :white_check_mark: L’apertura degli Strumenti per sviluppatori di Chrome risolve immediatamente il problema del cursore
  • :white_check_mark: La disabilitazione dell’accelerazione hardware di Chrome risolve completamente entrambi i problemi

Percorso:

Chrome → Impostazioni → Sistema → 
[ ] Usa accelerazione hardware quando disponibile

Dopo la disabilitazione:

  • Il cursore viene renderizzato normalmente
  • Gli onebox degli eventi si comportano correttamente
  • Il problema non può essere riprodotto

Note / ipotesi

Questo sembra essere un problema di interazione GPU/compositor di Chrome, potenzialmente coinvolgendo:

  • rendering del cursore negli input di testo / ProseMirror
  • tempistica di ridipintura o livelli di focus
  • calcolo del rendering/layout dell’onebox sotto compositing accelerato

Il fatto che:

  • la modalità sicura modifichi il comportamento,
  • l’apertura degli Strumenti per sviluppatori inneschi una correzione immediata,
  • e l’accelerazione GPU controlli completamente la riproducibilità

suggerisce fortemente un problema di rendering a livello di browser piuttosto che una regressione di Discourse introdotta dai commit recenti.


Approcci di debug suggeriti

Poiché l’apertura degli Strumenti per sviluppatori modifica il comportamento di rendering, potrebbe essere utile:

  • ispezionare utilizzando Strumenti per sviluppatori remoti anziché Strumenti per sviluppatori locali
  • testare con gli Strumenti per sviluppatori aperti dal caricamento iniziale della pagina
  • confrontare il comportamento con --disable-gpu
  • rivedere l’output di chrome://gpu sui sistemi interessati

Elementi chiave da ispezionare quando il problema è attivo:

  • Elementi del compositore:
    • textarea.d-editor-input
    • .d-editor .ProseMirror
  • Rendering del cursore calcolato (caret-color, livelli di compositing)
  • Tempistica di ridipintura del contenitore Onebox

Soluzione alternativa

Per gli utenti interessati su Windows 11:

Disabilitare l’accelerazione hardware di Chrome

Ciò risolve completamente sia il problema del cursore del compositore che il comportamento di oneboxing di discourse-calendar.

1 Mi Piace