<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shane&#039;s blog &#187; Mozilla</title>
	<atom:link href="http://blog.shamess.info/category/internet/mozilla/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.shamess.info</link>
	<description>Personal blog of Shane Preece. Occaisional politics and tech minddump.</description>
	<lastBuildDate>Wed, 18 Jan 2012 10:28:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Firefox 3.5b4: Storing data for offline use fuxxored.</title>
		<link>http://blog.shamess.info/2009/05/05/firefox-3-5b4-storing-data-for-offline-use-fuxxored/</link>
		<comments>http://blog.shamess.info/2009/05/05/firefox-3-5b4-storing-data-for-offline-use-fuxxored/#comments</comments>
		<pubDate>Tue, 05 May 2009 19:21:25 +0000</pubDate>
		<dc:creator>Shane</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[buggy]]></category>
		<category><![CDATA[google gears]]></category>

		<guid isPermaLink="false">http://blog.shamess.info/?p=633</guid>
		<description><![CDATA[For me at least anyway, and I&#8217;ve only tried it on two WordPress installations running bleeding edge 2.8. I get this message, click allow, and then all pages work once. Caching on the first load. Then, if I refresh the &#8230; <a href="http://blog.shamess.info/2009/05/05/firefox-3-5b4-storing-data-for-offline-use-fuxxored/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_692" class="wp-caption aligncenter" style="width: 469px"><img class="size-full wp-image-692 " title="firefox-save-offline-broken" src="http://blog.shamess.info/wp-content/uploads/2009/06/firefox-save-offline-broken.png" alt="Good idea, that doesn't work." width="459" height="155" /><p class="wp-caption-text">Good idea, that doesn&#39;t work.</p></div>
<p>For me at least anyway, and I&#8217;ve only tried it on two WordPress installations running bleeding edge 2.8. I get this message, click allow, and then all pages work once. Caching on the first load.</p>
<p>Then, if I refresh the page, or go back to it later, everything loads without the style sheet and JavaScript &#8211; the cached stuff. To fix it, I had to go into Options &gt; Advance &gt; Network and then remove my websites from the list.</p>
<p>I guess they&#8217;re for some reason competing with Google Gears, which makes little sense. Why compete? Why not just advertise Gears? They do exactly the same thing from what I can see.</p>
<p><strong>Update:</strong> A lot of people are getting here to find out how to use Gears in the Firefox beta. You can use all your extensions (even if Firefox says they&#8217;re not compatible) by <a href="http://lifehacker.com/355973/">editing a single option</a>. Of course, if you do that you could end up crashing Firefox or something, but you can just start in safe mode and disable it again.</p>
<ul>
<blockquote>
<li>Type <code>about:config</code> into Firefox&#8217;s address bar and click the &#8220;I&#8217;ll be careful, I promise!&#8221; button.</li>
<li>Right-click anywhere. Choose New&gt;Boolean. Make the name of your new config value <code>extensions.checkCompatibility</code> and set it to <code>false</code>.</li>
<li>Make another new boolean pair called <code>extensions.checkUpdateSecurity</code> and set the value to <code>false</code>.</li>
<li>Restart Firefox.</li>
</blockquote>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.shamess.info/2009/05/05/firefox-3-5b4-storing-data-for-offline-use-fuxxored/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Really quick run down of storing and retrieving data in Firefox</title>
		<link>http://blog.shamess.info/2009/03/29/storing-and-retrieving-data-in-firefox/</link>
		<comments>http://blog.shamess.info/2009/03/29/storing-and-retrieving-data-in-firefox/#comments</comments>
		<pubDate>Sun, 29 Mar 2009 21:03:58 +0000</pubDate>
		<dc:creator>Shane</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[firefox extension development]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://blog.shamess.info/?p=581</guid>
		<description><![CDATA[Last time I quickly ran through how to add a button to your Firefox bar by making your own extension, but all it did was open a cruddy, static alert box. In an effort to remind myself how to manage &#8230; <a href="http://blog.shamess.info/2009/03/29/storing-and-retrieving-data-in-firefox/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Last time I quickly ran through how to <a href="http://blog.shamess.info/2009/03/23/adding-a-button-to-the-firefox-toolbar/">add a button to your Firefox bar by making your own extension</a>, but all it did was open a cruddy, static alert box.</p>
<p>In an effort to remind myself how to manage preferences, I&#8217;m going to make it so the user can decide what text should be alerted.</p>
<p>First we&#8217;ll be needing to add some kind of options dialogue box. For now, I&#8217;m just going to add a pane to the options window. We need to make another overlay for the preferences in that case. Create a new text file called <em>prefs.xul</em>. Doing that is explained pretty well in the <a href="http://www.rietta.com/firefox/Tutorial/prefs.html#frontend">pane creation section</a> of the Rietta tutorial.</p>
<p>That website it clearly out of date though, since it says this:</p>
<blockquote><p>If you did not know what          you want to merge with, the DOM Inspector is your best tool          for looking through browser code and finding element IDs.</p></blockquote>
<p>Which is no longer true; Firefox doesn&#8217;t ship with that DOM Inspector anymore. So, I&#8217;ve really no idea how to find the DOM element ID&#8217;s I&#8217;m supposed to be merging with.</p>
<p>Rietta do a good job of explaining <a href="http://www.rietta.com/firefox/Tutorial/prefs.html#elements">how to link preferences with the inputs</a> too. They don&#8217;t mention how to make your stuff get laid out nicely though. I think you can use CSS like normal (using style). There&#8217;s a page on <a href="https://developer.mozilla.org/Special:Tags?tag=XUL_Elements&amp;language=en">tags you can use</a> over MDC.</p>
<p>Once you&#8217;ve designed your overlay in XUL, you&#8217;ll need to actually overlay it by adding it in your chrome.manifest, like you did with the browser.</p>
<pre>overlay chrome://browser/content/preferences/preferences.xul chrome://your-addon/content/prefs.xul</pre>
<p>Open up your options window, and you should see your pane there now.</p>
<div id="attachment_701" class="wp-caption aligncenter" style="width: 507px"><img class="size-full wp-image-701" title="timesink-options" src="http://blog.shamess.info/wp-content/uploads/2009/06/timesink-options.png" alt="Mine definitely needs to be prettier. (The screenshot is for the addon I'm working on, not this example.)" width="497" height="466" /><p class="wp-caption-text">Mine definitely needs to be prettier. (The screenshot is for the addon I&#39;m working on, not this example.)</p></div>
<p style="text-align:left;">
<p>When you change the data in your fields and press &#8216;Ok&#8217; they&#8217;ll automatically be updated and saved. You&#8217;ll be able to see them in your about:config too.</p>
<p style="text-align:left;">Now we can go ahead and make our javascript file, save it in your content folder. This&#8217;ll just be like any other javascript function you&#8217;d normally write.</p>
<p style="text-align:left;">We need to use <a href="https://developer.mozilla.org/index.php?title=En/Firefox_addons_developer_guide/Using_XPCOM%E2%80%94Implementing_advanced_processes">XPCOM</a> in order to <a href="https://developer.mozilla.org/En/Firefox_addons_developer_guide/Using_XPCOM%E2%80%94Implementing_advanced_processes#Reading_and_writing_preferences">get and set preferences</a> from inside a javascript file. That makes my javascript file look like this:</p>
<pre>//  Gets the text from the store user preference and returns it
function getAndReturnText () {
  //  Installise the preferences service
  var pref = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);

  //  Message box showing the text the user entered on the options pane
  alert (pref.getCharPref ('extensions.timesink.possibleWebsites'));
}</pre>
<p style="text-align:left;">Doesn&#8217;t do much at the moment, until we change the oncommand event we added to our button (in <em>browser.xul</em>). You also need to include the javascript in any overlays with you&#8217;re using it.</p>
<pre style="text-align:left;">&lt;script type="application/x-javascript" src="chrome://your-addon/content/mycode.js" /&gt;</pre>
<p style="text-align:left;">After learning all that, I ended up with <a href="http://share.xmarks.com/folder/bookmarks/3yEHbs57f3">these tabs open</a>, which may be more help to you.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.shamess.info/2009/03/29/storing-and-retrieving-data-in-firefox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Super quick guide: Adding a button to the Firefox toolbar</title>
		<link>http://blog.shamess.info/2009/03/23/adding-a-button-to-the-firefox-toolbar/</link>
		<comments>http://blog.shamess.info/2009/03/23/adding-a-button-to-the-firefox-toolbar/#comments</comments>
		<pubDate>Mon, 23 Mar 2009 15:27:43 +0000</pubDate>
		<dc:creator>Shane</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[addon]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[firefox extension development]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://blog.shamess.info/?p=551</guid>
		<description><![CDATA[What I&#8217;ll cover here is the steps that you should take to add a button to your Firefox toolbar, I think Thunderbird and stuff might be the same too. This isn&#8217;t a comprehensive guide, the links I link to are &#8230; <a href="http://blog.shamess.info/2009/03/23/adding-a-button-to-the-firefox-toolbar/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div id="attachment_724" class="wp-caption alignleft" style="width: 145px"><img class="size-full wp-image-724" title="My button: look how cute he is!" src="http://blog.shamess.info/wp-content/uploads/2009/07/firefox-addon-mytbutton1.png" alt="My button: look how cute he is!" width="135" height="90" /><p class="wp-caption-text">My button: look how cute he is!</p></div>
<p>What I&#8217;ll cover here is the steps that you should take to add a button to your Firefox toolbar, I think Thunderbird and stuff might be the same too. This isn&#8217;t a comprehensive guide, the links I link to are for that.</p>
<p>This is basically an article for me to dump loads of information I&#8217;ve accumulated. You won&#8217;t learn much just by only reading this article. Take a look through the links I give.</p>
<p>You&#8217;re basically making an extension, so you need the same file layout to start with. Here&#8217;s assuming you&#8217;re building your extension inside a folder named &#8220;extName&#8221;, call yours whatever you want though.</p>
<pre>extName/
        chrome/
               content/
        chrome.manifest
        install.rdf</pre>
<p><a href="https://developer.mozilla.org/en/Building_an_Extension#Setting_up_the_Development_Environment">More indepth look at setting up the environment and folder structure.</a></p>
<p>Open install.rdf and paste the following:</p>
<pre>&lt;?xml version="1.0"?&gt;

&lt;RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-rdf#"&gt;

  &lt;Description about="urn:mozilla:install-manifest"&gt;
    &lt;em:id&gt;addonname@whatever.com&lt;/em:id&gt;
    &lt;em:version&gt;0.1&lt;/em:version&gt;
    &lt;em:type&gt;2&lt;/em:type&gt;

    &lt;!-- Target Application this extension can install into,
         with minimum and maximum supported versions. --&gt;
    &lt;em:targetApplication&gt;
      &lt;Description&gt;
        &lt;em:id&gt;{ec8030f7-c20a-464f-9b0e-13a3a9e97384}&lt;/em:id&gt;
        &lt;em:minVersion&gt;1.5&lt;/em:minVersion&gt;
        &lt;em:maxVersion&gt;3.0.*&lt;/em:maxVersion&gt;
      &lt;/Description&gt;
    &lt;/em:targetApplication&gt;

    &lt;!-- Front End MetaData --&gt;
    &lt;em:name&gt;Addon name&lt;/em:name&gt;
    &lt;em:description&gt;Description for addon&lt;/em:description&gt;
    &lt;em:creator&gt;Your name&lt;/em:creator&gt;
    &lt;em:homepageURL&gt;http://yourhomepage.com&lt;/em:homepageURL&gt;
  &lt;/Description&gt;
&lt;/RDF&gt;</pre>
<p>Change whatever stuff. Don&#8217;t make the minVersion less than 1.5, because you&#8217;re blatantly lying. Lots changed in 1.5 that doesn&#8217;t act the same way now. Don&#8217;t change that weird looking id. The first id needs to be changed though. It doesn&#8217;t have to be a real email address, but it does have to be in email address format. <a href="http://www.rietta.com/firefox/Tutorial/conf.html">More indepth look at install.rdf.</a></p>
<p>Firefox&#8217;s appearance is created by using XUL (&#8220;zool&#8221;). We create our own XUL documents which we tell Firefox to merge with the base template. We say stuff like &#8220;add this chunk of XML to the status bar&#8221; and it merges that data. You can overwrite sections too. We call our XUL &#8220;<a href="https://developer.mozilla.org/en/XUL_Overlays">overlays</a>&#8220;.</p>
<p>Add these lines to chrome.manifest.</p>
<pre>content     youraddon    chrome/content/
overlay chrome://browser/content/browser.xul chrome://youraddon/content/browser.xul</pre>
<p>That basically says &#8220;the content of youraddon is in &#8216;chrome/content&#8217;, which is  direct relative to this file.&#8221; <a href="http://kb.mozillazine.org/Getting_started_with_extension_development#chrome.manifest">Here&#8217;s a more comprehensive explaination of what it means.</a></p>
<p>Time to make some images for your button to display. You need to make two, <a href="https://developer.mozilla.org/en/Creating_toolbar_buttons#Icon_size">one 24&#215;24 pixels, and a smaller version 16&#215;16 pixels</a>. I stuck them in <em>chrome/content/images/</em> but so long as they&#8217;re in <em>chrome/content/</em> it shouldn&#8217;t matter. Then you need to make a CSS style for those buttons. This&#8217;ll do:</p>
<pre>/*  skin/toolbar-button.css  */

#youraddon-button {
  list-style-image: url("chrome://myextension/content/btn_large.png");
}

toolbar[iconsize="small"] #youraddon-button {
  list-style-image: url("chrome://youraddon/content/btn_small.png");
}</pre>
<p>I think it&#8217;s standard to <a href="http://www.borngeek.com/firefox/toolbar-tutorial/chapter-5/">separate your content from your skinning</a>, but I&#8217;ve not bothered with that. It&#8217;ll probably cause me all sorts of problems later.</p>
<p>Create <em>chrome/content/browser.xul</em>:</p>
<pre>&lt;?xml version="1.0"?&gt;
&lt;?xml-stylesheet href="chrome://youraddon/content/style.css" type="text/css"?&gt;
&lt;overlay id="youraddonBrowser" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"&gt;
&lt;toolbarpalette id="BrowserToolbarPalette"&gt;
&lt;toolbarbutton id="youraddon-button" class="toolbarbutton-1"  label="Your addon name" oncommand="alert ('hey');" /&gt;
&lt;/toolbarpalette&gt;
&lt;/overlay&gt;</pre>
<p>Pretty standard XML styling. Define it as your overlay. Tell it you want to merge with the &#8220;<a href="https://developer.mozilla.org/en/XUL_Reference">BrowserToolbarPalette</a>&#8220;, and add a button. That class is required to style it like a toolbar button. The label is the mouse over text. oncommand is the Javascript that will run when you press the button. That&#8217;s another article though.</p>
<p>I bookmarked and shared (<span style="text-decoration:line-through;">foxmarks</span>xmarks is cool) all <a href="http://share.xmarks.com/folder/bookmarks/XaUxhOXcLZ">the pages I ended up having open at the end of button creation</a>, so go ahead and look through them.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.shamess.info/2009/03/23/adding-a-button-to-the-firefox-toolbar/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Debian experience so far</title>
		<link>http://blog.shamess.info/2009/03/08/debian-experience-so-far/</link>
		<comments>http://blog.shamess.info/2009/03/08/debian-experience-so-far/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 21:27:48 +0000</pubDate>
		<dc:creator>Shane</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[niimo]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[eve]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[opengl]]></category>

		<guid isPermaLink="false">http://blog.shamess.info/?p=485</guid>
		<description><![CDATA[I switched to Debian four or so days ago, and it&#8217;s kinda making me feel stressed. I&#8217;m having to put a lot more work into the operating system to just make it work. Firefox for instance &#8211; oh, sorry, Iceweasel &#8230; <a href="http://blog.shamess.info/2009/03/08/debian-experience-so-far/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I switched to Debian four or so days ago, and it&#8217;s kinda making me feel stressed. I&#8217;m having to put a lot more work into the operating system to just make it work.</p>
<p>Firefox for instance &#8211; oh, sorry, <a href="http://en.wikipedia.org/wiki/Mozilla_Corporation_software_rebranded_by_the_Debian_project"><em>Iceweasel</em></a> &#8211; took a lot of Googling and about:configing before it felt the same as it did on Windows. Why some of those keys and things have changed is odd for me. Why has ^J for the download menu suddenly been switched to ^Y? Why use Alt instead of Ctrl for tab manipulation? Why doesn&#8217;t clicking the address bar auto-highlight it all? These just seem like weird changes to me.</p>
<p>I&#8217;ve installed a few extensions in Songbird. It says they&#8217;re installed but there&#8217;s no other sign of them. No way to run them. No obvious way to get to the iPod functions which apparently exist&#8230;</p>
<p>I&#8217;ve no idea what I&#8217;m supposed to be installing to get OpenGL to work. I need it to play Eve&#8230; (Which is apparently no longer in development&#8230;)</p>
<p>Installing things is also a little bit of work&#8230; I don&#8217;t know why more things don&#8217;t come with a set up wizard, like I&#8217;m so used to in Windows. Instead, I have to try and remember the switches for untaring things, putting them in the right place. Sometimes just guessing what I should be doing to run the damn thing.</p>
<div id="attachment_488" class="wp-caption aligncenter" style="width: 403px"><a href="http://blog.shamess.info/wp-content/uploads/2009/03/screenshot-twitter-home-iceweasel.png"><img class="size-full wp-image-488" title="Screenshot twitter home Iceweasel" src="http://blog.shamess.info/wp-content/uploads/2009/03/screenshot-twitter-home-iceweasel.png" alt="This just isn't nice..." width="393" height="59" /></a><p class="wp-caption-text">This just isn&#39;t nice... It looks like it can&#39;t decide on what width to use for letters sometimes. Blatant attempts at adding extra pixels to make it more round.</p></div>
<p>Fonts are a weird, picky problem for me too. But I think that&#8217;s just because I&#8217;ve not played around with the defaults enough yet, to find one I actually like. Needs more anti-alias, and better kerning.</p>
<p>On the installation for Debian set up thing, I asked it to install a web server. That may exist, but I&#8217;ve no idea where to find it&#8230; My PHP pages aren&#8217;t giving me any errors, they just don&#8217;t seem to be outputting anything at all.</p>
<p>It&#8217;s just not new user friendly. I&#8217;m hoping that Ubuntu is much better in this domain, since that&#8217;s what it&#8217;s designed for really. So, I may be switching back to Windows some time soon. I don&#8217;t think my life can handle not having it as a primary operating system just yet. In the furutre though, I&#8217;ll defintely be installing another Linux OS on my next machine.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.shamess.info/2009/03/08/debian-experience-so-far/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Go, Mozilla.</title>
		<link>http://blog.shamess.info/2009/02/14/go-mozilla-bespin/</link>
		<comments>http://blog.shamess.info/2009/02/14/go-mozilla-bespin/#comments</comments>
		<pubDate>Sat, 14 Feb 2009 13:55:10 +0000</pubDate>
		<dc:creator>Shane</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[bespin]]></category>
		<category><![CDATA[text editor]]></category>

		<guid isPermaLink="false">http://blog.shamess.info/?p=403</guid>
		<description><![CDATA[I actually have things to be doing, but I thought I&#8217;d check my RSS feeds/digg/reddit before I started with actual work. Usually that takes about half an hour, but it took considerably longer today because someone linked to TED videos &#8230; <a href="http://blog.shamess.info/2009/02/14/go-mozilla-bespin/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I actually have things to be doing, but I thought I&#8217;d check my <a href="http://www.google.com/reader/public/atom/user%2F02662597976441267546%2Fstate%2Fcom.google%2Fbroadcast">RSS feeds</a>/<a href="http://digg.com/users/shamess">digg</a>/<a href="http://www.reddit.com/user/shamess/">reddit</a> before I started with actual work. Usually that takes about half an hour, but it took considerably longer today because someone linked to TED videos again, and I&#8217;m always getting lost in there.</p>
<p>But that&#8217;s not what&#8217;s amazed me! I just found out about <a href="https://bespin.mozilla.com/">Bespin</a>! Lifehacker called it a text editor (which made me think WYSIWYG editor) but it&#8217;s actually a plain text editor. Awesome for coding and stuff.</p>
<div class="wp-caption aligncenter">
<p class="wp-caption-text">Mozilla guys, talking about Bespin</p>
</div>
<p>It looks phenomenal. I never really understood what the canvas tag could be used for, and apparently it can be used for great things.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.shamess.info/2009/02/14/go-mozilla-bespin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

