A work-around for Tree Style Tab breakage on Firefox Nightly caused by mozRequestAnimationFrame removal

This post is aimed at Firefox Nightly users who also use the Tree Style Tab extension. Bug 909154 landed last week. It removed support for the prefixed mozRequestionAnimationFrame function, and broke Tree Style Tab. The GitHub repository that hosts Tree Style Tab’s code has been updated, but that has not yet made it into the latest Tree Style Tab build, which has version number 0.15.2015061300a003855.

Fortunately, it’s fairly easy to modify your installed version of Tree Style Tab to fix this problem. (“Fairly easy”, at least, for the technically-minded users who run Firefox Nightly.)

  • Find the Tree Style Tabs .xpi file. On my Linux machine, it’s at ~/.mozilla/firefox/ndbcibpq.default-1416274259667/extensions/treestyletab@piro.sakura.ne.jp.xpi. Your profile name will not be exactly the same. (In general, you can find your profile with these instructions.)
  • That file is a zip file. Edit the modules/lib/animationManager.js file within that file, and change the two occurrences of mozRequestAnimationFrame to requestAnimationFrame. Save the change.

I did the editing in vim, which was easy because vim has the ability to edit zip files in place. If your editor does not support that, it might work if you unzip the code, edit the file directly, and then rezip, but I haven’t tried that myself. Good luck.

4 Responses to A work-around for Tree Style Tab breakage on Firefox Nightly caused by mozRequestAnimationFrame removal

  1. Emanuel Hoogeveen

    “it might work if you unzip the code, edit the file directly, and then rezip, but I haven’t tried that myself.” It does, yeah. You can also just download the latest version (right click the ‘Add to Firefox’ button on AMO and save link as), edit it, then reinstall it by dragging it onto Firefox or opening it through Firefox.

  2. Jan Steffens

    You can also load the extension directly from a Git clone by creating a file named “extensions/treestyletab@piro.sakura.ne.jp” in your profile which contains the absolute path of the clone.

  3. Worked for me! Thank you for posting this!

  4. I’m happy that once mandatory addon-signing makes its way into the release-branch, applying workarounds will be a thing of the past.