阅读:5406回复:7
Mozilla 未来新主题开发计划
之前我们已经介绍过了 Mozilla Firefox 主题的现状和未来,提到了未来 Firefox 对新主题会有专门的开发计划,现在 Mozilla 在官方博客也公布了未来新主题的变化和开发计划。
首先,官方提到了为什么要有新的主题系统。这个我们也多次提到了,Firefox 57 到来的时候所有完整主题都将无法使用,只有轻量主题才可以使用。现在轻量主题的使用率和受欢迎程度已经远远超过了完整主题,AMO 已经有超过 40 万款轻量主题。但轻量主题只能简单修改外观,包括提供工具栏的背景图片,少量修改颜色。而完整主题非常强大,可以修改 Firefox 外观的几乎所有方面,但受限于它的复杂度和开发上的不友好,易失效等问题,目前 AMO 上 500 款完整主题只有约 60 款能兼容当前版本的 Firefox。而且只有 0.089% 的用户使用完整主题,相比之下还有 4% 的用户使用轻量主题。 Firefox 的扩展也不具有相应的 JavaScript API 来修改 Firefox 的外观,传统扩展或完整主题要修改就必须通过 UI 内部 DOM 和 CSS 来修改,但会带来复杂度和兼容性问题,因为 Firefox 更新版本时候往往会修改它的内部,这容易导致它们失效。哪怕是将来的的 WebExtensions 也无法访问 UI 的内部结构。所以才需要一套新的解决办法。 接下来就是新的主题系统会是怎么样。新的主题系统会采用轻量主题制作简单的特点,还会融入完整主题里面最常使用的一些功能。主题的核心其实是一个 manifest.json 的文件,在里面可以根据对应的属性填写属性值,来定义颜色,背景图片、图标等。比如下面这样:
在新主题系统当中,首先它会采用 Chrome 浏览器的属性,使得能够兼容现有的 Chrome 浏览器的主题。然后 Mozilla 会在其主题 API 里面扩展更多的属性,使得它能做的更多,这个 WebExtensions 的策略是和相似的。这样可以确保未来 Firefox任何一次更新都不会导致新主题失效。而 Mozilla 也考虑到如果只使用普通 manifest.json 文件是无法达到直接用 CSS 修改同样的效果,为了让主题更强大,他们打算在 manifest 里面增加一个实验性的语法段落,允许开发者直接对 Firefox 的 UI 使用 CSS 来自定义,不过这只能在 Nightly 或 FDE 版本 Firefox 中生效,Beta 和正式版无法生效。类似于下面这样:
最后,Mozilla 还会为主题添加一个 WebExtensions 的 API,总的来说和 manifest.json 功能一样,就是多了一个 JavaScript API,这样附加组件可以实现动态修改主题的功能。例如根据一天的不同时段,或者是根据外部天气来修改主题配色。 新主题具体信息参见工程计划。Mozilla 的目标是在 Firefox 57 到来之前正式发布新主题,并在未来数月尽快进入 Nightly 测试阶段。新主题的 FAQ 参见这里。 https://blog.mozilla.org/addons/2017/02/24/improving-themes-in-firefox/ |
|
|
1楼#
发布于:2017-02-27 20:17
默认主题足够友好就行。兼容chrome其实没必要。
|
|
2楼#
发布于:2017-02-27 20:59
什么时候名字兼容窟窿?
|
|
3楼#
发布于:2017-02-28 16:57
|
|
|
4楼#
发布于:2018-02-23 13:20
没有完整主题用的我快要死了....
|
|
|
5楼#
发布于:2018-02-23 14:22
|
|
|
6楼#
发布于:2018-02-23 15:27
|
|
|
7楼#
发布于:2022-02-05 13:57
|
|
|