可以修改硬编码的Firefox JavaScript Ctrl-Tab面板行为吗?

斯蒂金

Firefox +行为源代码中有6个选项卡的硬编码限制:CtrlTab

/**
 * Ctrl-Tab panel
 */
var ctrlTab = {
  maxTabPreviews: 6,
  //...
    for (let i = 0; i < this.maxTabPreviews; i++) {
      previewsContainer.appendChild(this.makePreview(false));
    }
  //...

不是很多 除了从源代码进行完整构建以改变此行为之外,还有其他方法吗?

我不是要寻找一种解决方法或附加组件,例如,它可以显示选项卡的替代列表,我真的很想找出是否存在一种与放置效果基本相同的方法,maxTabPreviews = 10而不必编译自定义版本的火狐浏览器。就像userchrom.css一样,它可以覆盖某些样式元素,但随后可以覆盖某些代码。

斯蒂金

据我所知,下面介绍的警告解决方案对我来说没有任何缺陷,但是YMMV请自担风险。

谢谢harrymc给我的帮助。您的评论说该字符串在Firefox中不存在,使我认为确实不可能将源中的所有.js文件都放在firefox.exe中,因为这样做的目的是缩小该文件的大小。因此,我在应用程序目录中查找了它们的位置,发现它们被压缩在一个omn​​i.ja文件中使用解压缩文件

unzip omni.ja -d omni

给出了一个目录结构,其中包含所有JavaScript / HTML / CSS等omni/chrome/browser/content/browser/browser-ctrlTab.js耶!所以我将文件编辑为使用8而不是6,然后按照使用说明再次压缩

cd omni
zip -qr9XD omni.ja *

但是,生成的文件比原始文件小约2.5倍,因此我认为firefox如今并没有9用作压缩级别0确实

zip -qr0XD omni.ja *

产生的文件大小几乎与原始文件大小相同。使用7zip测试原始omni.ja时会说“警告:有效负载数据结束后还有一些数据”,因此可能是罪魁祸首。

firefox -p为了安全起见,Anwyay用新的omni.ja替换了原来的omni.ja,为了安全起见,我用它来启动新的配置文件,我很高兴看到现在确实有8个选项卡。使用12个选项卡再次重复相同的操作,截图:

在此处输入图片说明

缺点很明显:每次更新后都可能需要重复此过程。但是,除非附加组件可以访问所有内部组件(这是接下来要研究的内容),否则它可能是唯一的方法。改进将是呈现多行而不是一行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章