# RPG 运行态面板右上关闭按钮修复(2026-04-29) ## 背景 RPG 运行态里仍有一批历史手写弹窗,没有统一迁入 `UnifiedModal`。这些弹窗的右上关闭按钮分别散落在角色详情、队伍、背包、地图、NPC 交易、任务日志和奖励面板里,按钮尺寸、层级、点击事件传播和无障碍标识不一致。 用户反馈多个 RPG 模板游戏内面板右上角关闭按钮点击无效。排查后,本次先按最小风险方式修复关闭交互边界,不重构业务面板结构。 ## 落地方案 1. 新增 `PixelCloseButton` 作为 RPG 像素风面板右上关闭按钮的统一组件。 2. 组件内部统一处理: - `event.preventDefault()`; - `event.stopPropagation()`; - 稳定 `z-index`; - 固定移动端友好的点击面积; - `aria-label` 与 `title`。 3. RPG 游戏内旧弹窗的右上关闭按钮统一替换为 `PixelCloseButton`。 4. 保留各面板原本的关闭回调和业务状态清理逻辑,不改变任务、奖励、交易、地图、角色详情等业务行为。 ## 验收 1. 点击游戏内面板右上关闭按钮时,只触发该按钮的关闭回调,不被父层遮罩或面板点击处理吞掉。 2. 队伍、背包、地图、角色详情、角色聊天、NPC 交易 / 赠礼 / 招募、任务日志、任务详情、奖励详情等面板的右上关闭按钮可稳定关闭。 3. 关闭按钮具备可检索的无障碍名称,后续可用自动化测试直接定位。 4. 编码检查、定向测试和类型检查通过。