# Chrome 硬件加速导致在有 discourse-calendar onebox 的地方（Windows 11）出现合成器光标不可见

**URL:** <https://meta.discourse.org/t/chrome-hardware-acceleration-causes-composer-caret-invisibility-where-there-is-a-discourse-calendar-onebox-windows-11/393809>\
**Category:** General\
**Tags:** composer, events\
**Created:** [2026年一月19日 16:46 UTC](https://meta.discourse.org/t/chrome-hardware-acceleration-causes-composer-caret-invisibility-where-there-is-a-discourse-calendar-onebox-windows-11/393809 "2026-01-19T16:46:21Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![Ethsim2](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ethsim2/32/522255_2.png) [@Ethsim2](https://meta.discourse.org/u/Ethsim2)\
**Post date:** [2026年一月19日 16:46 UTC](https://meta.discourse.org/t/chrome-hardware-acceleration-causes-composer-caret-invisibility-where-there-is-a-discourse-calendar-onebox-windows-11/393809/1 "2026-01-19T16:46:21Z")

</div>

**Discourse 版本**  
`2026.1.0-latest` (`c7e9cddb06`)

**浏览器**  
Chrome `143.0.7499.170` (官方版本) 64 位  
(cohort: `144.0.7559.59` rollout)

**操作系统**  
Windows 11 Home  
版本 `10.0.26200` (Build `26200`)

* * *

## 摘要

当 **启用 Chrome 硬件加速** 时，会出现 UI 问题：  
在 **Discourse 日历事件块被解析** 后， **编辑器中的文本光标变得不可见** （在白色背景上显示为白色）。  
禁用 Chrome 中的 **硬件加速** 后，问题会立即消失。

这表明是 **Chrome GPU/合成器渲染问题** 与 Discourse UI 元素发生交互，而不是纯粹的 CSS 回归。

* * *

## 观察到的问题

### 1️⃣ 编辑器光标变得不可见

- 在新建主题和回复编辑器中都会发生。
- 光标显示为白色/与背景融合，使得难以或无法看到输入位置。
- 启用硬件加速时，间歇性但可重现。

**值得注意的行为：**

- 立即打开 Chrome 开发者工具 (DevTools) 会使光标恢复正常渲染。
- 这强烈表明是渲染/合成重计算，而不是状态或 CSS 更改。

### 2️⃣ discourse-calendar 事件块在安全模式下无法正确显示（onebox）

启用硬件加速时：

- 在 `/safe-mode` 中，此行为会改变（意料之中，因为主题组件被禁用）。

* * *

## 复现步骤

1. 在 Windows 11 上使用 Chrome，并 **启用“可用时使用图形加速”**
2. 打开运行 `2026.1.0-latest` 的 Discourse 站点
3. 打开编辑器并开始输入
4. 观察到不可见/白色的光标
5. 插入或查看 discourse-calendar 事件块

* * *

## 不复现/诊断

- ❌ 在 `/safe-mode` 中 **无法复现**
- ❌ 在隐身模式下 **仍然复现** （与扩展无关）
- ❌ **未配置自定义 CSS**
- ✅ **立即打开 Chrome 开发者工具即可修复光标问题**
- ✅ **完全禁用 Chrome 硬件加速可解决这两个问题**

路径：

```plaintext
Chrome → 设置 → 系统 → 
[] 可用时使用图形加速

```

禁用后：

- 光标正常渲染
- 事件 onebox 行为正确
- 无法复现问题

* * *

## 备注/假设

这似乎是 **Chrome GPU/合成器交互问题** ，可能涉及：

- 文本输入/ProseMirror 中的光标渲染
- 重绘时序或焦点层
- 在加速合成下的 onebox 渲染/布局计算

以下事实强烈表明这是一个浏览器级别的渲染问题，而不是最近提交引入的 Discourse 回归：

- 安全模式会改变行为
- 打开开发者工具会触发即时更正
- GPU 加速完全控制了可复现性

* * *

## 建议的调试方法

由于打开开发者工具会改变渲染行为，可能有帮助的是：

- 使用 **远程开发者工具** 进行检查，而不是本地开发者工具
- 从初始页面加载开始就打开开发者工具进行测试
- 使用 `--disable-gpu` 比较行为
- 查看受影响系统上的 `chrome://gpu` 输出

在问题激活时需要检查的关键元素：

- 编辑器元素：
  - `textarea.d-editor-input`
  - `.d-editor .ProseMirror`

- 计算出的光标渲染（`caret-color`、合成层）
- Onebox 容器重绘时序

* * *

## 解决方法

对于受影响的 Windows 11 用户：

> **禁用 Chrome 硬件加速**

这完全解决了编辑器光标问题和 discourse-calendar oneboxing 行为。

---

_[View the full topic](https://meta.discourse.org/t/chrome-hardware-acceleration-causes-composer-caret-invisibility-where-there-is-a-discourse-calendar-onebox-windows-11/393809)._
