Archive for the ‘Mozilla’ Category

Using the Windows Media Player Plugin


Firstly, from IRC it appears that newer versions of WMP no longer include the Netscape plugin. The stuff here seems to be just the plugin files – should come in handy. Thanks to… err, whoever told me about it on IRC. (Sorry)

Second, hacking the WMP plugin to handle types it doesn’t want to admit it can handle:

  1. First, make a copy of npdsplay.dll somewhere that gets scanned. The source is in C:\Program Files\Windows Media Player by default, I think. I like to copy to %appdata%\Mozilla\plugins since that sticks around across installs (and dist/bin folders in clobber builds, whatever) and gets picked up by all Mozilly browser thingies. Hack the copy so nothing happens to the real plugin ;).
  2. Grab resource hacker (or Visual Studio / MSDev / whatever). Look at the Version Info section. The interesting items are…
    • FileExtents is a pipe-separated list of file extensions. Not sure if it’s all that relevant… :p
    • FileOpenName seems to be a pipe-delimited list of descriptions to show in File -> Open dialog boxes. Not sure who uses plugins that way.
    • MIMEType is the key – it’s a pipe-delimited list of MIME types to accept.
    • See devedge for more interesting info.
  3. So, edit the lists (try to keep the three in synch, since they’re the columns in about:plugins I think).
  4. Save, and kill pluginreg.dat (in %appdata%\Mozilla\Firefox).
  5. Marvel at the new updated about:plugins

Hopefully this will help someone.

Findbar as an Extension


Combining the two previous posts 🙂 Trying to figure out how to put stuff here though, since it appears that the blog won’t take data: URIs. For now, just copy the link and replace everything up to and including /data-uri/ with data:. I’m hoping to somehow insert JS on the page later to automatically transform the link on the browser side…

The XPI is here.

Yes, that just made this a 3k blog post. Yes that made this page slow to load. Until I find some place better to post stuff like this, please live with it.

Getting ChatZilla/XULRunner to Use Extensions


I’m using Chatzilla on XULRunner for IRC (via the instructions here. I wanted to get DOM Inspector to work though… so here’s some stuff I needed to get CZ to even understand extensions. (The DOMi-specific stuff will be in the next post.)

As I was using my own 1.8-branch XULRunner, RTFS helped. In the application ini file (cz.ini), create a new section, [XRE]. In that, set EnableExtensionManager=true. After that, make an appropriate chrome://branding/locale/ file for the brandShortName entity. Done.

This causes the extension stuff to happen, and they can just go in /extensions/ in the profile, or /extensions/ in the app dir. Just like Firefox and Tbird, yay. Now to figure out how to get it to show EM… 😀

FindBar in Chatzilla on XULRunner


Managed to get Chatzilla on XULRunner to work (somewhat) with the find bar, instead of the find dialog box. It’s a totally hacky implementation, and it sucks. But it gets me FAYT, which is all I care about at this point. It would be much, much nicer if I can just get find box + old FAYT.

The code is here – replace /chrome/xr/overlay.xul in the CZ package from rdmsoft with it. Also available on pastebin in case doesn’t like my data: URI.

Still need a better way to hook <browser> creation, and import the findbar XUL better – as it is the colours on Mac will be wrong….

Oh, and appearently findbar / FAYT was apprearently not in Chatzilla by design. That’s fine with me – needing to know where you’re focusing and stuff would indeed make it crappy for normal end users; I’m just glad I don’t seem to be one of them.


Multi-line strings in Javascript


For reference in case I lose it later. Thanks to E4X, we can now have multi-line strings similar to HEREDOC syntax (although quite a bit more verbose):

  var string = (<r><![CDATA[

     The text string goes here.  Since this is a XML CDATA section,
     stuff like <> work fine too, even if definitely invalid XML.


This syntax works fine on Greasemonkey too (trunk, 2005-10-ish, GM 0.6.3). Should be useful, especially in combination with stuff like the add CSS “pattern”…

I can’t believe how much pain it is to try to get raw text in here… This is just a bit silly. Basically had to go turn off the WYSIWYG editor cocmpletely. I guess I should try doing things in an external editor instead…