2021年刘海屏MacBook Pro上市后,Tailscale团队收到一堆诡异反馈:软件明明在运行,图标却人间蒸发。用户重启、重装、甚至怀疑人生——其实图标只是被刘海屏吃了。这个设计缺陷困扰了47%的刘海屏用户,直到他们祭出两招解法。
刘海屏:苹果给开发者出的无解题
菜单栏图标被刘海遮挡,苹果没给任何出口。没有溢出区域,不能拖拽排序,系统也不通知用户「你的图标被藏起来了」。一位要求匿名的Tailscale工程师吐槽:「你只能声明『我要当菜单栏应用』,然后系统随便一塞,落到哪算哪。」
用户报bug的句式高度统一:「Tailscale没启动。」团队回复:「启动了,在刘海后面。」循环往复,双方都麻了。
苹果后来推了折中方案:把更多系统图标塞进新版控制中心,再加个「缩放至摄像头下方」的选项——但后者会让屏幕顶栏整体下移,像给Mac强行加了个额头,视觉上很憋屈。第三方工具如Bartender能救场,但多一层依赖就多一层风险。
Tailscale的工程师决定自己想办法。他们发现一个突破口:菜单栏图标虽然不知道自己被刘海吃了,但能感知到「有东西挡住我了」。
通过occlusionState(遮挡状态)接口,Tailscale可以检测图标是否陷入刘海的「无像素幽灵地带」。移不动,那就喊一嗓子——弹窗提示用户:「你的图标被刘海藏起来了,点这里打开主窗口。」
这招有点怪,但管用。至少用户不会再以为软件崩了。
真正的解法:把家搬到桌面
弹窗是创可贴,窗口化应用才是正骨。Tailscale现在推出了完整的macOS窗口界面,不再依赖菜单栏那一亩三分地。
这个改动看似小,实则改写了产品的存在形态。以前Tailscale追求「近乎隐形」,现在承认「有时候你得让用户找得到我」。窗口界面提供完整的网络状态、设备列表、设置入口——所有被刘海吞掉的功能,现在有了备份阵地。
工程师的原话是:「我们有点厌倦了反复解释『它没坏』。」窗口化之后,支持工单里关于「图标消失」的投诉直接归零。
更微妙的是用户行为变化。窗口界面让Tailscale从「后台工具」变成了「偶尔需要查看的前台应用」。有用户在Reddit反馈:「现在我会主动点开看看哪些设备在线,以前菜单栏图标太小,根本懒得点。」
一个设计债务的标本
刘海屏菜单栏问题,本质是苹果把硬件设计债务转嫁给了开发者。 notch(刘海)侵占的是系统级空间,但苹果没有提供对应的系统级解决方案,全靠第三方应用各显神通。
Tailscale的应对策略可以拆解为两层:检测层(occlusionState判断遮挡)和逃逸层(窗口界面提供替代入口)。这不是最优解,最优解是苹果开放菜单栏管理API——但等了四年,没等到。
类似困境不止Tailscale一家。2023年1Password也遭遇过刘海吞图标风波,他们的解法是把图标强制左移,挤进刘海左侧的安全区,结果和其他图标打架。Bartender这类工具一度爆火,直到2024年苹果系统更新导致其兼容性问题,用户数据险些丢失,大家才意识到「依赖第三方菜单栏管理器」本身也是技术债务。
Tailscale的窗口化路线,某种程度上是认命:既然控制不了菜单栏,就降低对它的依赖。这种「防御性设计」在苹果生态里越来越常见——开发者不再假设系统行为稳定,而是为每一种崩溃场景准备逃生舱。
窗口界面现已向所有macOS用户开放。菜单栏图标还在,但不再是唯一入口。那位匿名工程师说,他们内部把弹窗提示的文案改了七版,最后选了一句最平淡的:「Tailscale正在运行,但菜单栏图标可能被遮挡。」
没有抱怨苹果,没有解释技术细节,只是陈述事实。用户一看就懂,问题到此为止。
下一个会被刘海屏逼出窗口化改动的,会是哪家工具类应用?
热门跟贴