Custom Buttons
Version 0.0.4.5 released
Submitted by antonglv on Sat, 10/10/2009 - 18:03.Changelog:
# Fixed: Bug 21641 'CB 0.0.4.4 doesn't work in Thunderbird Compose/View windows'
Version 0.0.4.4 released
Submitted by antonglv on Sat, 08/15/2009 - 18:07.Changelog:
+ Added: Firefox 3.7a1pre support
+ Added: Thunderbird 3.0b4pre support
# Fixed: Bug 21391 "ABP 1.1.1 breaks Custom Buttons extension"
# Fixed: CB doesn't preserve XML.prettyPrinting field value
# Fixed: readFile doesn't close input stream
! Changed: error line number definition code
Version 0.0.4.3 released
Submitted by antonglv on Fri, 05/01/2009 - 14:29.Changelog:
+ Added: KompoZer 0.8a2 (0.7.99) support
# Fixed: 'toggle comments' feature doesn't work
Version 0.0.4.2 released
Submitted by antonglv on Fri, 04/24/2009 - 13:12.Changelog:
+ Added: new features in code editor component:
- search ([Shift+]Ctrl+F / [Shift+]F3)
- search and replace ([Shift+]Ctrl+H)
- type ahead find (Ctrl+/)
- go to line (Ctrl+G)
- toggle word wrapping (Ctrl+W)
# Fixed: "open button by link" feature doesn't work in console2 window
Version 0.0.4.1 released
Submitted by antonglv on Thu, 04/16/2009 - 13:07.Changelog:
# Fixed: undo sequence sets default value in editor's code sections
Version 0.0.4.0 released
Submitted by antonglv on Thu, 04/09/2009 - 08:12.Changelog:
+ Added: three predefined icons for new buttons
+ Added: more than one code editor can be opened at same time
+ Added: code editor doesn't depends on main window
+ Added: Firefox 3.6a1pre support
! Changed: code architecture
Version 0.0.3.9 released
Submitted by antonglv on Mon, 02/23/2009 - 17:06.Changelog:
+ Added: Thunderbird 3.0b3pre support
+ Added: Calendar 1.0pre support
+ Added: Lightning extension support (experimental)
+ Added: 'hidelabel' value for 'cb-style' attribute (to hide button's label)
+ Added: "Add new button..." menu item for toolbars context menu
Version 0.0.3.8 released
Submitted by antonglv on Sat, 01/03/2009 - 05:32.Changelog:
! Changed: ui code logic
# Fixed: 'custombuttons' protocol vulnerability
Version 0.0.3.7 released
Submitted by antonglv on Sun, 12/28/2008 - 02:20.Changelog:
+ Added: Thunderbird 3.0b2pre support
# Fixed: JavaScript console binding opened buttons only in main Thunderbird window
Version 0.0.3.6 released
Submitted by antonglv on Wed, 12/24/2008 - 10:59.Changelog:
+ Added: Firefox 3.1 support
+ Added: Sunbird 0.9 support
# Fixed: some Thunderbird/Sunbird ui bugs
Хочется материться
Submitted by antonglv on Sat, 12/13/2008 - 15:30.в FF3.1 мне уже нельзя пользоваться document.load'ом:
Warning: Cross site loading using document.load is no longer supported. Use XMLHttpRequest instead.
Source File: about:blank
Line: 0
собственно, сабж
Думы
Submitted by antonglv on Fri, 12/12/2008 - 14:57.Оказывается, уже который год не работает инициализация кнопок в диалоге настройки панелей инструментов.
Причина - на customizeToolbar.xul не "подшивается" overlay.css, в котором нужные -moz-binding'и.
Не помню, как такое могло случиться.
Кажется, был какой-то баг в Thunderbird с отображением кнопок.
Перенёс инструкции из overlay.css в custombuttons.css - ничего странного не наблюдаю.
То ли надо совсем избавиться от overlay.css, то ли прописать его как надо в chrome.manifest.
Version 0.0.3.5 released
Submitted by antonglv on Thu, 11/20/2008 - 05:38.# Fixed: "Ctrl+Enter cannot be bound to a button" bug
Ctrl+Enter
Submitted by antonglv on Sat, 11/15/2008 - 23:43.В форуме заметил не сразу - ник пользователя начинается теми же двумя буквами, что и мой, и такой же длины.
Уже исправил. Причина была в том, что в случае "Enter" event.which==event.keyCode.
Протестирую на FF1.5, TB, SB и сделаю релиз.
Автообновление на mozdev
Submitted by antonglv on Sat, 11/15/2008 - 22:50.Опять на память. Разбирался сегодня с автообновлением на mozdev.
Порядок такой. Перед сборкой расширения идём на https://www.mozdev.org/profile/file_management.html и берём ссылку на update.rdf ("Generate update.rdf URL from install.rdf").
Одного раза достаточно, ссылка не меняется. Помещаем эту ссылку в <updateURL> в install.rdf. Собираем расширение, делаем commit, ставим галочку в "Released" там же, в /file_management.html. Потом подтверждаем хэш (ссылка "verified").
Хэш можно посчитать HashTab'ом (http://beeblebrox.org/hashtab/) - правой кнопкой по xpi, "Свойства", на вкладке "Контрольные суммы" берём любую (рекомендуют sha*).
Это всё, а опционально можно ещё указать Update Info URL (ссылка "url").
Файл информации об обновлении - xhtml. Примерный формат (подсмотрел в help'е Firefox):
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>...</title> </head> <body> ... </body> </html>
Поддерживаемые теги - <h1>, <h2>, <h3>, <p>, <ul>, <ol>, <li>, <b>, <i>. Текст должен быть в этих тегах, если просто текст в <body>...</body> - просто не будет отображаться.
Интереса ради сделал такой файлик:
<?php $applocale = strtolower ($_GET ['applocale']); $version = $_GET ['version']; if (strlen ($applocale) > 255) exit (); if (strlen ($version) > 255) exit (); if (!ereg ("[0-9]+(\.[0-9]+)+", $version, $regs)) $version = ""; if (($applocale == "ru") || ($applocale == "ru-ru")) $updateinfourl .= "ru-RU/"; else $updateinfourl .= "en-US/"; $updateinfourl .= "updateinfo" . $version . ".xhtml"; if (!file_exists ($updateinfourl)) $updateinfourl = "updateinfourl.xhtml"; header ("Location: $updateinfourl"); exit (); ?>
Работает.
URL к нему такой:
http://custombuttons.mozdev.org/updateinfo/updateinfo.php?applocale=%APP_LOCALE%&amp;version=%ITEM_VERSION%Если написать просто ..&version=.., амперсэнд и всё после него отрежет, так что надо именно ..&version=...
Соответственно два новых каталога в /www: updateinfo/en-US и updateinfo/ru-RU.
Правда, придётся ещё подумать как собирать две разные версии - одну для AMO (без <updateURL> в install.rdf), а вторую для mozdev (с <updateURL>). Так что с внедрением повременю.
UPDATE: По поводу %ITEM_VERSION%. Положим, обновляется версия 0.0.3.3 до 0.0.3.4 и ей будет отдан updateinfo0.0.3.3.xhtml с одной информацией об обновлении, а если обновляется версия 0.0.3.2 до 0.0.3.4, ей будет отдан updateinfo0.0.3.2.xhtml с другой информацией об обновлении. Это значит, что надо либо как-то дублировать сведения из updateinfo0.0.3.3.xhtml в updateinfo0.0.3.2.xhtml, либо сочинять какой-то аггрегатор на php. Либо просто отказаться от version и отдавать на updateinfourl весь наличный changelog.
На AMO, видимо, придётся тоже в "примечаниях к версии" указывать полный changelog, потому что, например при обновлении 0.0.3.2 до 0.0.3.4 и 0.0.3.3 до 0.0.3.4 с AMO информация к обновлению идентична, именно - то, что сейчас "висит" на сайте.
Думаю.
