4. HISTORY FORKED FROM THE MOZILLA SUITE SOFTWARE BLOAT OF MOZILLA SUITE (IRC, MAIL, NEWS, HTML EDITOR AND WHAT NOT) FF3, THE MOST DOWNLOADED SOFTWARE IN 24 HOURS (28,340,281 DOWNLOADS ON JUNE 17. BROWSER SHARE OF FIREFOX – 46% 4
5. WHAT IS AN EXTENSION? A TYPE OF “ADD-ONS” EXTENSIONS PLUGINS THEMES EXTENSIONS EXTEND YOUR BROWSER SINGLE FEATURE (HIDE MENUBAR) FEATURE ENHANCEMENT (NOSCRIPT) WEB APP INTEGRATION (TWITTERFOX) NEW FEATURES (FIREBUG) 5
6. EXTENSIONS 6,000 EXTENSIONS AND STILL COUNTING EXCELLENT API TO CREATE ANYTHING. EXTENSIONS ARE MADE BY GOOGLE, FACEBOOK, MICROSOFT, YAHOO AND NOW EVEN YOU. 6
7. HELLO WORLD OUR FIRST EXTENSION. A MENU ITEM IN TOOL BAR ON CLICK, SHOWS A POPUP “HELLO WORLD” UPDATES STATUS BAR BY “YIPEE” 7
11. XUL XML USER INTERFACE LANGUAGE CROSS PLATFORM INTERFACE ELEMENTS https://developer.mozilla.org/en/xul http://www.hevanet.com/acorbin/xul/top.xul <button label="Press Me" oncommand = "alert(Hola!');"/> 11
13. CSS IT’S TRUE! CSS IS USED TO MODIFY USER INTERFACE #hello-menuitem { color: red !important; } 13
14. JAVASCRIPT IT’S TRUE… AGAIN! HANDLES COMMANDS IN THE INTERFACE XMLHTTPREQUEST, DOM. ALSO HAS ACCESS TO CORE API onMenuItemCommand: function(e) { document.getElementById('hello-panel').label = "Yippee"; alert("Hello World"); }, 14
15. XPCOM Cross Platform Component Object Model The core or the “black box” of Firefox Similar to Microsoft’s COM or GNOME’s Corba or D-Bus A Cross-platform API 15
16. SO… XPCOM IS THE “BRAIN” XUL IS THE “SKELETON” JAVASCRIPT IS THE “MUSCLE” CSS IS THE “SKIN” 16
21. LET’S CREATE THE EXTENSION https://addons.mozilla.org/en-US/developers/tools/builder Add-on Name : Hello World Description : This is my first Firefox extension. Add-on Version : 1.0.0 Unique ID : http://extensions.roachfiend.com/cgi-bin/guid.pl Package Name : hello Authors-name : <Your-name> Other contributors: <Friend’s name> 21
24. EDIT THE FILES Now we add features to this extension. Windows: C:ocuments and Settingsaripplication Dataozillairefoxrofiles GNU/Linux: .mozilla/firefox/ 23