background preloader

Building an extension

Building an extension
Introduction This tutorial will take you through the steps required to build a very basic extension - one which adds a status bar panel to the Firefox browser containing the text "Hello, World!". Note: The extension created by this tutorial won't work in Firefox versions that don't have a static status bar (that is, Firefox 4 and up). You can find a more up-to-date tutorial in the XUL School tutorial The Essentials of an Extension. Since Firefox 4 (and other Mozilla 2 based applications) there are two types of extensions: Traditional, classic, or XUL extensions are more powerful, but more complicated to build and require a restart to install. This article explains how to build a traditional extension for Firefox. For a tutorial on building an extension for Thunderbird, see Building a Thunderbird extension. Quick Start A Hello World extension similar to what you can generate with the Extension Wizard is explained line-by-line in another tutorial from MozillaZine Knowledge Base. <? XUL Overlays Related:  Addons

Как сделать FF удобней — пишем свои кнопки Преамбула Я перешел на FF с IE очень давно — мне нужен был браузер с удобными средствами разработки и отладки, позволяющий полностью настраиваться «под себя» так как это был мой основной рабочий инструмент — инструмент должен быть удобным. И FF полностью справился со своими обязанностями — возможно, я кому-то покажусь странным — но я потратил около 2-х месяцев на чтение сайта с дополнениями и нахождения для меня лучшего их набора, настройки и т.д. В результате я получил мощную хорошо настроенную и удобную программу для своих нужд. Не смотря на то, что я знаю JS, мне ни разу не пришло в голову писать какие-либо расширения под ff по одной простой причине — чтобы я не захотел — это уже было в депозитории расширений. Вчера мне подумалось вот о чем — во время работы мне все время нужно переключаться и заходить на localhost, где крутится мой апач с текущим проектом, и на адрес где текущий релиз проекты выложен в интернете — вполне стандартная ситуация. Поиски... if ( ! Вот оно! Инициализация: P.S.

How to develop a Firefox extension There are more recent development guides in the add-ons section of the Mozilla Developer Network. Please use those instead. Reposted with permission from Robert Nyman: Admit that you have always wanted to know how to develop a Firefox extension but never had the time to learn. Here I will walk you through and at the end of the article we will have created a fully functional Firefox extension! Our objective We will create a Firefox extension to find all links in the current web page, highlight those which have a target attribute and alert you how many links it found. What you need – setting up the developing environment First, let’s start with setting up your development environment. Create a different development profile The first step is to create a different profile in Firefox, since you will do some settings and changes that you probably don’t want for your regular profile. Profile manager on Windows Profile manager on Mac Profile manager on Linux Configuration settings for Firefox install.rdf

Setting up an extension development environment This article gives suggestions on how to set up your Mozilla application for extension development. Unless otherwise specified, these suggestions apply to both Firefox and Thunderbird as well as SeaMonkey version 2.0 and above. Overview Create a development user profile to run your development firefox session; with special development preferences in about:config. Development profile To avoid performance degradation from development-related prefs and extensions, and to avoid losing your personal data, you can use a separate profile for development work. You can run two instances of Thunderbird or Firefox at the same time by using separate profiles and starting the application with parameters -no-remote and -P ProfileName. On Ubuntu (and many other Linux distributions): /usr/bin/firefox -no-remote -P dev On some other distributions of Linux/Unix: /usr/local/bin/firefox -no-remote -P dev On Mac OS Snow Leopard (10.6) and newer: On Windows: On Windows 64 bit: Development command flags use

Extension development From MozillaZine Knowledge Base (Redirected from Dev : Extensions) Introduction Extensions allow programmers to add new features to Mozilla applications or allow existing features to be modified. Typically, extensions modify the “chrome” of their target application—the user interface and the scripts that add functionalty to that interface. However, it is also possible for extensions to include compiled code in the form of XPCOM components. Extension technologies You will almost certainly need to use the following technologies, although it is not necessary to be an expert in them. XUL (XML User-Interface Language). More advanced extensions may require the following technologies. XBL (XML Binding Language). Getting started Setting up your environment Please see Setting up extension development environment for development preferences you can set and extensions you can install. Tutorials On this Knowledge Base and Mozilla's website: On other websites: Weblogs: Books Creating Applications With Mozilla.

Extension Frequently Asked Questions This is quick set of answers to the most common issues with extension development. They are currently written with mostly Firefox in mind, but most if not all should easily translate to SeaMonkey, Thunderbird or any of the other applications. For Thunderbird, you may also find the extension HowTo or FAQ pages helpful. If you're looking for a place to get started, try our tutorial, Building an Extension or MozillaZine's Getting started tutorial. Be sure to set the development preferences. Debugging You should set development preferences before attempting to debug your extension. The Venkman JavaScript debugger may be useful in complex cases, remember to turn off the "Debug -> Exclude Browser Files" option when working on extension code. How can I see errors in my code? After you set the preference javascript.options.showInConsole to true, the errors will be reported to the Error Console. How can I display what my extension is doing? Why doesn't my script run properly? or Example code

Создание расширений под IE,Firefox,Chrome... - Форум C# для начинающих 1) Через реестр. 2) Что вы подразумеваете под поиском по-умолчанию? Дефолтную страницу, или отдельно прикрученный плагин в виде тулбара? Если первое, то опять-таки через реестр можно установить стартовую страницу для браузера. Если второе, то вам нужно копать в сторону написания плагинов для каждого браузера в отдельности. Причем, это нетривиальная задача, и понадобится немало времени, чтобы изучить все тонкости синтаксиса и прочие аспекты. Вообще, не советовал бы вам заниматься написанием плагинов для всего подряд. По этому примеру будете вытягивать остальные ключи из реестра.

Tutorials Beginner GIMP Quickies Use GIMP for simple graphics needs without having to learn advanced image manipulation methods. Simple Floating Logo This tutorial walks through some basic image and layer manipulation techniques. Layer Masks An introduction to using layer masks to modify the opacity of a layer. Basic Color Curves A first look at the Curves tool and adjusting color tones in an image. Photo Editing Digital B&W Conversion Detailed conversion tutorial for generating a B&W result from a color image. Luminosity Masks Using multiple layer masks to isolate specific tones in your image for editing. Tone Mapping with ‘Colors/Exposure’ Using high bit depth GIMP’s ‘Colors/Exposure’ operation to add exposure compensation to shadows and midtones while retaining highlight details. Programming Basic GIMP Perl Learn how to write simple perl scripts using the gimp-perl module (GNU/Linux users only). Automate Editing Using GIMP Python to automate a workflow. All (Legacy) Tutorials List

Extension Manager:Bootstrapped Extensions Note: This page contains preliminary documentation of the feature and is mainly of historical interest. The documentation is at MDC. Bootstrapped add-ons are a special kind of add-on that developers can choose to use instead of normal add-ons in order to allow users to install and use the add-on without needing to restart the application. All the application will do is execute a bootstrap script that the add-on provides, telling it to startup. Starting up and Shutting down A key feature of bootstrapped add-ons is that they must be able to be started and shutdown on demand by the application. When first installed (if the add-on is compatible and enabled) the application will tell the add-on to start up. Declaring an Add-on as Bootstrappable Add-ons are declared as being bootstrappable using the special em:bootstrap="true" property in the install manifest. Backwards Compatibility Bootstrap Events Startup data reason A number representing the reason for starting the add-on. Shutdown Install

Firefox Extension Development Tutorial :: Overview This tutorial is a legacy tutorial that is no longer maintained, nor supported by Rietta Inc. It was written by nine students at Georgia Tech in 2005, for Firefox 1.5, which is highly out of date. This page is preserved for historical purposes. On This Page Development Overview This tutorial has been created for individuals wanting to develop full-featured extensions for the Mozilla Firefox browser. Please use the menu on the left to navigate through this tutorial. The following major topics are covered in this tutorial: Packaging and Distributing ExtensionsCreating and Modifying User InterfacesFirefox Integration (API basics)Creating User Preferences to store informationCreating User Preferences Pane (for the Options window) ↑ Back to Top Extension Overview The authors of this tutorial were in your shoes just a few weeks ago: knowing absolutely nothing about developing Firefox extensions. Please click here to install the Home Page Scheduler Extension. Useful Tools Further Reading

Extensions Modify and extend Mozilla applications Add-ons add new functionality to Gecko-based applications such as Firefox, SeaMonkey, and Thunderbird. There are two main types of add-on: Extensions add new features to the application, while Themes modify the application's user interface. Add-ons can greatly affect the behavior of the application that hosts them. Extensions Extensions add new functionality to Mozilla applications such as Firefox and Thunderbird. There are three different techniques you can use to build extensions: Add-on SDK-based extensions, manually bootstrapped restartless extensions, and legacy extensions. Add-on SDK extensions Extensions built using a set of high-level JavaScript APIs, which don't require a browser restart to install. WebExtensions We're working on a system called WebExtensions, which is a new way to develop WebExtensions for Firefox, that will be largely compatible with the system used by Chrome and Opera. Debugging Recommended practices Performance Security

Related:  dev