| Добавление собственных элементов меню в Firefox | [исправить] | 
| Добавим в меню "Инструменты" Firefox кнопку для быстрого включения и выключения
работы через прокси.
Настройками прокси управляет переменная network.proxy.type. При значении 0 -
прокси не используется, а при значении 5 - используется сервер заданный в
настройках рабочего стола, это легко увидеть меняя настройки и глядя на
закладку about:config. Задача - добавить меню с функцией которая изменяет
значение этой переменной.
Нужно отредактировать всего два файла
   sudo vim /usr/lib/firefox-3.6.3/chrome/browser.jar
в полученном списке файлов выбираем файл content/browser/browser.xul находим
раздел подменю id="tools-menu" и добавляем туда новый пункт меню "Switch proxy"
(вставка должна соответствовать стандартам XML)
   <menuseparator id="imageprefs"/>
   <menuitem id="menu_switchproxy" label="Switch proxy" oncommand="switch_proxy()"/>
сохраняем и переходим в конец файла content/browser/browser.js и добавляем туда функцию
   function switch_proxy(){
     if (gPrefService.getIntPref("network.proxy.type") == 5) {
         gPrefService.setIntPref("network.proxy.type", 0);
     }else{
         gPrefService.setIntPref("network.proxy.type", 5);
     }
   }
Сохраняем файл (если редактировать через vim то jar архив будет автоматически
обновлен) и перезапускаем Firefox.
Таким же образом можно сделать переключатель, управляющий анимацией и
автоматической закачкой картинок, для этого необходимо обрабатывать переменные:
   image.animation_mode - true-включение анимации, false-выключение
   permissions.default.image - 1-закачивать картинки, 2-не закачивать
 | 
|  | 
| 
 | 
 | | Раздел:    Корень / Пользователю / Работа с Web и Ftp | 
| | 1.1, sceptic (?), 00:26, 16/07/2010  [ответить] | +/– |  | А через ~/.mozilla/firefox/<profile>/chrome слабо сделать? 
 |  |  | 
 
|  | | 2.6, ffsdmad (ok), 14:56, 17/07/2010 [^] [^^] [^^^] [ответить] | +/– |  |  а можно чуть подробнее? у меня в профиле скоро гигабайт данных будет, мне было проще разобраться в /usr/lib/firefox-3.6.3/chrome/browser.jar
 
 |  |  | 
 | 
 
 | 1.2, VasVovec (?), 09:46, 16/07/2010  [ответить] | +/– |  | Класс, нужная штука. А можно еще как-то для этого пункта меню горячую клавишу назначить? Кстати, если под офтопиком, то этот файл я нашел только в одном месте:
C:\Program Files\Mozilla Firefox\chrome\browser.jar
 
 |  |  | 
 
 | 1.3, Filosof (ok), 15:49, 16/07/2010  [ответить] | +/– |  |  Это называется XUL-программирование + сопутствующее JS программирование -:)
 Довольно мощная и удобная штука, чтоб создавать браузрные интерфейсы на базе ФФ.
 
 |  |  | 
 
 | 1.4, axe (??), 19:47, 16/07/2010  [ответить] | +/– |  | давно хотел спросить. Почему внутри фаерфокса присутствует некий хром? Это совпадение? 
 |  |  | 
 
|  | | 2.5, XoRe (ok), 11:23, 17/07/2010 [^] [^^] [^^^] [ответить] | +/– |  |  >давно хотел спросить. Почему внутри фаерфокса присутствует некий хром? Это совпадение? Это просто тезка гугловского хрома)
Оно так называлось задолго до рождения гуглового браузера.
 
 |  |  | 
 | 
 
 | 1.7, bunta (?), 16:18, 18/07/2010  [ответить] | +/– |  |  А после обновления фокса снова переписывать? :) Это делается через динамический оверлей, созданием своего мини-расширения. Юзайте xul & js.
 
 |  |  | 
 
 | 1.10, StrangeAttractor (ok), 23:49, 27/07/2010  [ответить] | +/– |  |  Было бы интересно убрать ненужные пункты меню (например Send link рядом с Save link в контекстном меню при правом клике по ссылкам). Причём чтобы начисто. Планин редактор меню применяет свои твики только через пару минут после загрузки. 
 |  |  | 
 
 
 |