Mozilla logo
slanted Mozilla logo
Cover page images

Mozilla development
there is no data, there is only xul

Fabien Cazenave <kaze@kompozer.net>

Update by Laurent Jouanneau <laurent@xulfr.org>

Genesis of the Mozilla technology

Mozilla 1.0

The Mozilla Foundation

Firefox 1.0

Questions?

Gecko

Mozilla Application Framework

The framework supports a number of open or common standards like DTD, RDF, XSLT/XPath, MathML, SVG, JavaScript, SQL, LDAP, etc.

quick overview

Mozilla Application Framework

Gecko vs Webkit

Gecko webkit Application Application

Other rendering engine: Webkit (Chrome, Safari), Trident (IE), KHTML (Konqueror), Presto (Opera), Tasman (IE mac)...

Designing XUL Applications

quick overview

User Interface

Coding

Toolkit API

= set of programming interfaces (APIs) built on top of Gecko.

The Mozilla Toolkit provides advanced services to XUL applications, such as:

Questions?

XUL Overview

There is only XUL

XUL Elements: getting started

Let’s have a look!

Play with XUL in real time ( on xulfr.org).

XUL box model

XUL box model: orientation

XUL box model: direction

XUL box model: size

Four way to size a box:

XUL box model: flex

XUL box model: pack

XUL box model: align

Questions?

Hello, world!

  1. start Firefox 8 (Firebug is recommended)
  2. Install XUL Remote manager and add <file> as a "domain" in the white list
  3. start a decent text editor, e.g.:
    • your favorite IDE (Eclipse, Komodo…)
    • or Notepad++, Geany, Vim, Emacs…
  4. keep an eye on the documentation:

⇒ time to design a first XUL page!

JavaScript

API in javascript

Browser vendors provide several API accessible in javascript. Contrary to the believe, these API are NOT Javascript

JavaScript: DOM

DOM — document node

DOM — all nodes

Questions?

DOM Events

DOM Event listeners

DOM Event listeners

Questions?

Table example ++

In your first XUL page, add behaviors.

  1. keep an eye on the documentation:

The end.

Questions?