<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.developerfriendly.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>mozpad</title>
 <link>http://www.developerfriendly.com/taxonomy/term/1</link>
 <description>The taxonomy view with a depth of 0.</description>
 <language>en</language>
<item>
 <title>Much Awesomeness</title>
 <link>http://www.developerfriendly.com/blog/awesomeness</link>
 <description>I have recently discovered a couple of &lt;em&gt;awesome&lt;/em&gt; developments which are worth mentioning:

&lt;ul&gt;
 &lt;li&gt; The &lt;a href=&#039;http://awesome.naquadah.org/&#039;&gt;Awesome &lt;em&gt;X Window Manager&lt;/em&gt;&lt;/a&gt; is an active light-weight tiling window manager based on dwm. Similar to wmii or ion but seemingly more advanced and very easy to use. Version 2 is available from Debian and Ubuntu repositories so you can simply &lt;em&gt;apt-get install awesome&lt;/em&gt; ... now isn&#039;t that awesome?&lt;/li&gt;

 &lt;li&gt;
  Google has released an official version of &lt;a href=&quot;http://code.google.com/p/google-gadgets-for-linux/&quot;&gt;Google Gadgets for Linux&lt;/a&gt;. It&#039;s still early in development but the code is open source (Under the terms of the Apache License v2.0)... They don&#039;t offer pre-packaged binaries, however, it looks reasonably easy to build it. Once I have a few minutes to play I will definitely be talking about the experience. This is especially exciting for me because it&#039;s similar to the WidgetRunner project that I dabbled with over a year ago. The &lt;a href=&quot;http://code.google.com/p/google-gadgets-for-linux/wiki/HowToBuild&quot;&gt;documentation&lt;/a&gt; mentions XULRunner and Spidermonkey as dependencies so it seems like it&#039;s based on the Mozilla platform and &lt;em&gt;that&lt;/em&gt; is awesome!
 &lt;/li&gt;
&lt;/ul&gt;</description>
 <comments>http://www.developerfriendly.com/blog/awesomeness#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/60">Awesome</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/45">linux</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/26">WidgetRunner</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/8">XULRunner</category>
 <pubDate>Wed, 30 Jul 2008 17:22:24 -0500</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">63 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>R.I.P. Allpeers!</title>
 <link>http://www.developerfriendly.com/node/55</link>
 <description>I am saddened to see that AllPeers has shut down their service.  Very very sad.

The announcement: &lt;a href=&quot;http://www.allpeers.com/blog/2008/03/03/allpeers-service-shutting-down-today/&quot;&gt;AllPeers Service Shutting Down Today&lt;/a&gt;.</description>
 <comments>http://www.developerfriendly.com/node/55#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <pubDate>Wed, 05 Mar 2008 11:13:29 -0600</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">55 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>A new year, a new mozpad</title>
 <link>http://www.developerfriendly.com/node/47</link>
 <description>As a few people have &lt;a href=&quot;http://brian.kingsonline.net/talk/?p=261&quot;&gt;pointed&lt;/a&gt; &lt;a href=&quot;http://www.allpeers.com/blog/2007/12/22/whither-mozpad/&quot;&gt;out&lt;/a&gt; recently, MozPad has been much less active in recent months. I too have been guilty of dropping the ball on MozPad activities. I think that the interest in MozPad was driven by a desire to make sure that the Mozilla platform is not forgotten, overshadowed by the Mozilla corporation&#039;s focus on Firefox. Mozilla has shown that they intend to invest in the platform, however, that doesn&#039;t mean that MozPad is no longer needed. We may have a shortage of resources to invest in MozPad initiatives, however, we should continue to keep the moon alive with interesting commentary while also finding ways to collaborate on work that will make the platform better for developers. Mozilla has an end-user focus but we need to focus on developers as end-users.

&lt;h3&gt;Developer Support&lt;/h3&gt;
Microsoft established a dominant position by nurturing a developer community. I am no fan of Microsoft&#039;s products but one exception would be their developer tools. I like the XULRunner runtime better than any other but the tools to support it are still sadly lacking. As long as XULRunner is a viable platform there will be a need for tools that support such development. I hope to see MozPad continue to contribute to supporting the platform and I will do my best to help out along the way.</description>
 <comments>http://www.developerfriendly.com/node/47#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <pubDate>Wed, 02 Jan 2008 02:12:39 -0600</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">47 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>MozPad</title>
 <link>http://www.developerfriendly.com/projects/mozpad</link>
 <description>&lt;a href=&quot;http://mozpad.org&quot;&gt;MozPad&lt;/a&gt; is a group of developers which was started by Matt at &lt;a href=&quot;http://www.allpeers.com/blog/&quot;&gt;AllPeers&lt;/a&gt; to focus on development of the Mozilla development platform (and Mozilla&#039;s cross-platform runtime, XULRunner.)

&lt;h3&gt;More Information&lt;/h3&gt;
More information about MozPad can be found at the following sites:

&lt;ul&gt;
 &lt;li&gt;&lt;a href=&quot;http://www.mozpad.org&quot;&gt;MozPad.org&lt;/a&gt; - the main project wiki.&lt;/li&gt;
 &lt;li&gt;&lt;a href=&quot;http://moon.mozpad.org&quot;&gt;MozPad moon&lt;/a&gt; - the project news aggregator.&lt;/li&gt;
 &lt;li&gt;&lt;a href=&quot;http://groups.google.com/group/mozilla.community.mozpad/topics&quot;&gt;mozilla.community.mozpad&lt;/a&gt; - community newsgroup&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a href=&quot;http://www.developerfriendly.com/MozpadDashboard&quot;&gt;MozPad Dashboard&lt;/a&gt; - summary of mozpad activity and links to related resources.&lt;/li&gt;
 &lt;li&gt;The #mozpad IRC channel on irc.mozilla.org&lt;/li&gt;
&lt;/ul&gt;</description>
 <comments>http://www.developerfriendly.com/projects/mozpad#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/7">Mozilla</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/8">XULRunner</category>
 <pubDate>Wed, 02 Jan 2008 02:12:08 -0600</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">46 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>Certificate Change Notifier </title>
 <link>http://www.developerfriendly.com/node/45</link>
 <description>&lt;p&gt;I&#039;m working on a simple extension for Firefox that would notify the user when an SSL/TLS site&#039;s certificate changes. This way an informed user could decide if the certificate change was valid / expected and opt out of an ssl session in questionable circumstances.  Is there any interest in such an extension?  My friend ask me whether there was a way to do it so I&#039;m working on proof of concept code, I will release it as open source if anyone cares.&lt;/p&gt;

&lt;h4&gt;Update:&lt;/h4&gt; Working proof of concept code released. See XPI attachment below. Note: this is tested in Firefox 3.0 beta 2 and it uses mozStorage (sqlite) to keep track of the url/certificate mappings. This isn&#039;t really usable, it&#039;s simply a proof of concept with no useful user interface. It will pop up an alert when you visit a site that has changed it&#039;s certificate since your last visit.

&lt;h4&gt;Update #2:&lt;/h4&gt; An updated version of this extension is now available on addons.mozilla.org (it&#039;s in the sandbox until it&#039;s been reviewed.)  You have to log in before you can view the sandbox: &lt;a href=&quot;https://addons.mozilla.org/en-US/firefox/addon/6415&quot;&gt;Addon #6415&lt;/a&gt;</description>
 <comments>http://www.developerfriendly.com/node/45#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/7">Mozilla</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/42">security</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/41">ssl</category>
 <enclosure url="http://www.developerfriendly.com/files/CertificateChangeNotify-v02.xpi" length="5294" type="application/x-xpinstall" />
 <pubDate>Sat, 22 Dec 2007 02:20:20 -0600</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">45 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>XUL Controls Example</title>
 <link>http://www.developerfriendly.com/node/43</link>
 <description>&lt;br /&gt;Tonight I threw together a little XUL file that demonstrates most of the major user interface [controls|widgets|whatever] so that I could get a quick idea of how any given GTK theme would look on a variety of different interface elements. I&#039;m sure there is a GTK application that does this but I thought that it would be an interesting use for &lt;a href=&quot;http://developer.mozilla.org/en/docs/XUL_Explorer&quot;&gt;XULExplorer&lt;/a&gt;.
&lt;br /&gt;&lt;br /&gt;
So without further ado I present you with my mostly useless &lt;a href=&quot;/files/developerfriendly/example-widgets.xul&quot; title=&#039;Example Widgets&#039;&gt;example-widgets.xul&lt;/a&gt;</description>
 <comments>http://www.developerfriendly.com/node/43#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/7">Mozilla</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/35">ui</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/34">widgets</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/16">XUL</category>
 <pubDate>Fri, 30 Nov 2007 00:07:25 -0600</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">43 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>Web Fonts and Mozilla</title>
 <link>http://www.developerfriendly.com/node/38</link>
 <description>An interesting read: A List Apart has &lt;a href=&quot;http://www.alistapart.com/articles/cssatten&quot;&gt;a recent article&lt;/a&gt; by Håkon Wium Lie (CTO of Opera Software) which demonstrates the use of  True Type Font support in CSS. I&#039;m really surprised that this isn&#039;t already supported by major browsers Gecko. With the major text rendering changes in Firefox 3.0 (plus cool new features such as &lt;a href=&quot;http://wiki.mozilla.org/APNG_Specification&quot;&gt;APNG&lt;/a&gt;) I&#039;m confused as to why such a seemingly important CSS feature is not implemented in Gecko. It turns out that there is a bug (&lt;a href=&quot;https://bugzilla.mozilla.org/show_bug.cgi?id=70132&quot;&gt;#70132&lt;/a&gt;) which was filed in 2001 and is aparently not getting much attention. Is anyone interested in working on this?

&lt;h3&gt;Update:&lt;/h3&gt;

I just noticed that WebKit has recently &lt;a href=&quot;http://webkit.org/blog/124/downloadable-fonts/&quot;&gt;added support for @font-face&lt;/a&gt;</description>
 <comments>http://www.developerfriendly.com/node/38#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/29">fonts</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <pubDate>Sun, 30 Sep 2007 22:38:21 -0500</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">38 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>Customizing WebRunner Behavior</title>
 <link>http://www.developerfriendly.com/node/37</link>
 <description>&lt;p&gt;I would like to share a technique that I am using to customize WebRunner&#039;s behavior without directly changing the source code.   In my AppRunner extension I have created an overlay for webrunner.xul and within the overlay I include my custom apprunner.js script. Today I decided that I want to modify the behavior of a function in the core WebRunner application object.&lt;/p&gt;

&lt;p&gt;In webrunner.js there is a global WebRunner object which is defined like this:&lt;/p&gt;

&lt;code&gt;&lt;pre&gt;
var WebRunner = {
   _profile : null,
   _ios : null,

   //  webrunner functions omitted...

}
&lt;/pre&gt;&lt;/code&gt;
&lt;p&gt;
In my apprunner.js file I have my own global AppRunner namespace object, defined similarly to the WebRunner object above.  I will try to let the code speak for it&#039;s self with a short explanation afterward:
&lt;/p&gt;

&lt;code&gt;&lt;pre style=&#039;overflow:scroll;height:400px&#039;&gt;
window.addEventListener(&quot;load&quot;, function() { apprunner.startup(); }, false);
window.addEventListener(&quot;unload&quot;, function() { apprunner.shutdown(); }, false);
var apprunner = {
	startup: function() {
		self = this;
		var browserContext = document.getElementById(&quot;popup_main&quot;);
		browserContext.addEventListener(&quot;popupshowing&quot;, self._popupShowing, false);
		&lt;strong&gt;
		//replace the webrunner _isLinkExternal function with a modified version:
		WebRunner._isLinkExternal = this._isLinkExternal;
               &lt;/strong&gt;
	},
	shutdown: function() {
		self = this;
		window.removeEventListener(&quot;popupshowing&quot;,self._popupShowing, false);
	},
	_popupShowing: function(aEvent) {
		var isAnchor = (document.popupNode instanceof HTMLAnchorElement);
		document.getElementById(&quot;menuitem_copylink&quot;).setAttribute(&quot;hidden&quot;,!isAnchor);
		document.getElementById(&quot;link_popup_separator&quot;).setAttribute(&quot;hidden&quot;,!isAnchor);
	},
	_isLinkExternal : function(aLink) {
		if (aLink instanceof HTMLAnchorElement) {
		  if (aLink.target == &quot;_self&quot; || aLink.target == &quot;_top&quot;)
			return false;
		  
		  var currentURL = this._ios.newURI(aLink.href, null, null).QueryInterface(Ci.nsIURL);
		  var commonBase = currentURL.getCommonBaseSpec(this._getBrowser().currentURI);
		  //alert(commonBase + &quot;:&quot; + aLink.href + &quot;:&quot; + this._getBrowser().currentURI.href);
		  return (commonBase.length == 0);
		}
		return true;
	},
	copylink: function(event) {
		var gClipboardHelper = Components.classes[&quot;@mozilla.org/widget/clipboardhelper;1&quot;].
                                getService(Components.interfaces.nsIClipboardHelper);
		gClipboardHelper.copyString(document.popupNode.href);
	},
	doCommand : function(aCmd) {
	    switch (aCmd) {
	      case &quot;cmd_aboutconfig&quot;:
	        window.open(&quot;chrome://global/content/config.xul&quot;, &quot;About:Config&quot;, &quot;chrome,extrachrome,dependent,menubar,resizable,scrollbars,status,toolbar&quot;);
	        break;
		}
	}
}
&lt;/pre&gt;&lt;/code&gt;

&lt;p&gt;
 The code above is mostly for other functionality that I have added in my webrunner extension, however, the startup function shows the technique which I wanted to highlight. Notice the bold face code which replaces a function in WebRunner with my own version of the same function.  This doesn&#039;t have much effect right now because I have not rewritten the function to my liking, however, my changes to that function will override WebRunner&#039;s version of the same function, all without touching webrunner.js or webrunner.xul.
&lt;/p&gt;

&lt;p&gt;
This is the beauty of Mozilla&#039;s platform for extensibility and the flexibility of JavaScript makes it even more powerful. This is incredible extensibility due to the simple and intelligent design of the Mozilla platform in general and WebRunner in particular.
&lt;/p&gt;</description>
 <comments>http://www.developerfriendly.com/node/37#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/12">webrunner</category>
 <pubDate>Thu, 06 Sep 2007 22:44:29 -0500</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">37 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>August 29th Mozpad Meeting</title>
 <link>http://www.developerfriendly.com/node/35</link>
 <description>Here is a quick &lt;a href=&quot;http://www.developerfriendly.com/files/mozpad-20070829.txt&quot;&gt;transcript&lt;/a&gt; of today&#039;s meeting for those who missed it and don&#039;t want to wait for thebot.</description>
 <comments>http://www.developerfriendly.com/node/35#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <enclosure url="http://www.developerfriendly.com/files/mozpad-20070829.txt" length="33093" type="text/plain" />
 <pubDate>Wed, 29 Aug 2007 12:14:56 -0500</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">35 at http://www.developerfriendly.com</guid>
</item>
<item>
 <title>Feedback Request</title>
 <link>http://www.developerfriendly.com/node/30</link>
 <description>I&#039;m interested in hearing from developers who are working with XULRunner.  Tell me what troubles you, what parts need better documentation and other things that need improvement.

I&#039;m going to be writing documentation for MDC, as part of my Mozpad responsibilities.  I&#039;m simply looking for feedback so that I can choose which documents would be most helpful.</description>
 <comments>http://www.developerfriendly.com/node/30#comments</comments>
 <category domain="http://www.developerfriendly.com/taxonomy/term/1">mozpad</category>
 <category domain="http://www.developerfriendly.com/taxonomy/term/8">XULRunner</category>
 <pubDate>Mon, 30 Jul 2007 17:51:59 -0500</pubDate>
 <dc:creator>20after4</dc:creator>
 <guid isPermaLink="false">30 at http://www.developerfriendly.com</guid>
</item>
</channel>
</rss>
