Philip
Принцип работы расширения в следующих версиях будет в корне отличаться от нынешнего. Надеюсь, в лучшую сторону, и проблем с совместимостью не появится. А пока, увы, надо подождать..
Отсутствует
Установил сегодня это расширение и наслаждался его функционалом, а именно кнопками BBcode. Хотелось бы выразить огромный респект создателю!
Но случился у меня BSOD, вызванный Outpost FireWall в момент открытия ссылки в новом табе. У меня установлено расширение TabMix Plus и включен в нем менеджер сессий, соответственно при запуске FF я восстановил сессию. Но при этом кнопки с панели исчезли, нет их и в настройках. FF 1.5.0.7 Как лечить? Переустановить расширение или только кнопки?
ЗЫ: Кнопки были у меня помещены на панель меню. Сейчас восстановил кнопки, пока вроде работает.
Отредактировано GASon (16-09-2006 23:17:22)
Отсутствует
Т.е. после загрузки браузера его уже никак не достать.
а его и не надо после загрузки доставать. При редактировании кнопок просто правим оверлеящий файл, а чтобы изменения вступили без перезагрузки - руками добавляем кнопку, как ты это делаешь сейчас. только сейчас у тебя кнопки хранятся в мозильном реестре, что не есть гуд. а я предлагаю хранить их в соответствующем файле.
Когда Firefox вылетает, кнопки, установленные за последний сеанс, не сохраняются.
и таких проблем бы небыло.... а также кнопки бы появлялись сразу, и во всех окнах, а не только в первом.
Отредактировано Dark-Demon (17-09-2006 02:48:13)
!
Отсутствует
...просто правим оверлеящий файл...
Эх, если бы... Но не так просто на самом деле:
1. Местонахождение оверлея должно быть известно до первого запуска расширения. Т. е., оверлей должен находиться в каталоге расширения. А иначе придётся править chrome.manifest, extensions.ini и/или ещё что-нибудь.
2. Не факт, что в каталог установленного расширения имеются права на запись.
3. Динамические оверлеи через loadOverlay(...) бесполезны, в связи с отсутствием на момент их применения toolbarpalette.
Вроде бы я правильно обрисовал суть проблемы, если вкратце.
К слову, своё решение я идеальным не считаю, с оверлеями было бы проще. Возможно, имеет смысл подумать о feature request на bugzill'у.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Philip
Планируется
Пит Бэнкман
Reload:Выделить кодКод:
custombutton://Reload%5D%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAANbY1E9YMgAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAwZJREFUeNpdkktoXHUUxn//+5g7D5N5GidMk7QxtWpL09aAOC4MmkWplNKC4oMaFETBlTs3UulCKlZMLS5URMVNRSi1KApNShdCHk1LMp3QJg2ZppOkmSE2d2aSm5l7596/i6Q15qwOB74H33cEW6dntA34BOgGtm9c7yC933CtM1zpztEz2gv00d+VEFvAvcFGve/FI82Rlo4Qiqbi86mslR1ujZmMXClilas/64bvuGN70N8VE5vAncEGbeyND3ZQNKtULIGi+9AMA39AJ9Wk8lijx+/n8hx4LsY3p6agvyupbdLv6znWjG4IDFeQaPIRTwaoOoL7q5LF+x6rNcErva0oinwI0japd09mKlz8ISeRLggxqPv96X3pOC8cbMLTNRZMycQ8PJFUHhKsb9I7alXq5LL5e4o9N07pxjtcTh92Jr5svzowe+7Hr2ZojgoiQYkQHup/+A0HUu70+a1hv8xdKle9LNffPw+4tL/Xhuo/2NkVYWZyBU2BsAKF3FaC1emPog3zUbPgCmriLuCs+/O1Ib3MwIVZdeCCVP7XmPRKAEJ/+fpyOG5Etr6DVXGwyrWTDDx7CgiROhYPpXbE9IZY0FwKKox/mAHqWjhuRD7+7EmqDrieJKgLhoZLnP9+OsvtMz9t5FSi7fgRIyWTZjn1LnE5DLwFuBrAkgULpgRP8ngCios2SFmm9fVDtLz6F4g3UQKH1uzwzm0d0ejdzMzXgA442nqGAk0VrNUlN+95dD4f46m9DenstVJ67o6FY3skkga79oW59Os8FPovAx4gNYB4SBALwO0imCsKc0t1pAvbdj/Crv0h3LpLwK8wfbPG0mzhO6ZO5zeCXk92ZMjk8xO30NaqtCYEfl3gOBKz4lL4x0bXFYqLkr//yE8wffY0UAVcABE8Oibrtp21CzdO+Jr2nOzY++jup/eHaWkPIQQUFqpkri4zOVoYtMc/fZuFi0Vg5UHVgpdG+pj64iz5X5YBm2e+PUBo+2HUwB6E2ki9Moi9nGXotT+BGmAB9oO6/wVl0kFzmdAMvwAAAABJRU5ErkJggg%3D%3D%5D%5Bif%20%28event.shiftKey%29%20BrowserReloadSkipCache%28%29%3B%20else%20BrowserReload%28%29%3B%5D%5Bthis.ReloadAll%3Dfunction%28%29%7B%0A%20%20gBrowser.reloadAllTabs%28gBrowser.mContextTab%29%3B%20%20%0A%7D%0A%0A%20var%20nMItem%3Dfunction%28label%2Cimg%2Cobj%29%7B%0A%20%20%20var%20m%3Ddocument.createElement%28%27menuitem%27%29%3B%0A%20%20%20m.setAttribute%28%27label%27%2Clabel%29%3B%0A%20%20%20m.f%3Dobj.ReloadAll.bind%28obj%29%3B%0A%20%20%20m.setAttribute%28%27oncommand%27%2C%27this.f%28%29%27%29%3B%0A%20%20%20m.setAttribute%28%27image%27%2Cimg%29%3B%0A%20%20%20m.setAttribute%28%27class%27%2C%27menuitem-iconic%27%29%3B%0A%20%20%20return%20m%3B%0A%20%7D%0A%0A%20var%20mP%3Ddocument.createElement%28%27menupopup%27%29%3B%0A%20mP.appendChild%28nMItem%28%27Reload%20All%20Tabs%27%2Cthis.image%2Cthis%29%29%3B%0A%0A%20this.appendChild%28mP%29%3B%0A%20this.type%3D%22menu-button%22%3B%0A%0AStop:
Выделить кодКод:
custombutton://Stop%5D%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1gkPDzESY3gWcgAAAqFJREFUeNplkz1sE0kYhp9dZzfBXq8HYpQUBxjOinQUVhBQRKIB3XFSjkgIAlQUAV1/6VPS5yip0FFCwU8kBxSJSG7QFXBgCayDIEwgQPjd7Np79s7uDIWDiXOfNBppPj2v3u9nDDbEpdzAqOtkFp1MWmx8x4BGM/RW/ebPf/itB4DekPoO57dtXTw2dULYfQriBJK4c8cxkWExd/WO//D9p/ELjegeoLoCXfj8KWF/eQuvlkFKiNaPlDA8TLTrR+auLfSIpLrw76eFHXxg6e8aq6GJSMWk0Mh2zNPWFtZWPpA32hQPHej3l99NjsioUomSFdN1MovHzk0K21tl6d4Ttl/8i+L1BapBmjCMqMbbKM5X2H7lBs+erGDUakycOOzuFdkykDGdTFrYtobXy0jTJl0oYAlB6WaZ2q4xSrfmsYQgXSggtzjIF3VSzYCsk3aBnAl0GiUlxWxM9fg40vOwhGD/5ctYQiA9j0fjRynITyil0bo7BKsjkMQQxVhofur7QnV6umeK1elpRoKXmIBSCrTq5r47iCQybFGTgtLsbI9AaXaWf7M7acsYlSi00t0FMDHWHUjJUtOmdHO+a/v+1FS3nNHyAi/tPEmyyUGjGXqR7oOhIaymT1ivd2r+7Sgj98s8Gv8F6XmE9TpmsIa9ewfazRE0Qh/A+NMd2P9DfuvdiTO/uvbzpzx7/Ao54FCIP5NC04pi6lYeM/Ao7Bmkf1+JuRsV/9bKx7NX/pMPUrfb8bsRGVX8+pvJ4qGD/YO6Re7zW3SiSJIEnSiybZ/B3cOb4X+AtW9/wZxx7LHRocHyxMkjbioMQOtOs7RCK4V2c5thD2gaG5ptzjj22F6RLa8vSc93Cxqhf/uj3wMDyqA3TCAD5ACL/4cE1r7BAF8BBX1jYyT/fJkAAAAASUVORK5CYII%3D%5D%5BBrowserStop%28%29%3B%5D%5Bthis.StopAll%3Dfunction%28%29%7B%0A%20try%7B%0A%20%20for%20%28var%20i%3D0%3Bi%3CgBrowser.browsers.length%3Bi++%29%7B%0A%20%20%20%20gBrowser.browsers%5Bi%5D.stop%28%29%3B%0A%20%20%7D%0A%20%7Dcatch%28ex%29%20%7B%7D%0A%7D%0A%20var%20nMItem%3Dfunction%28label%2Cimg%2Cobj%29%7B%0A%20%20%20var%20m%3Ddocument.createElement%28%27menuitem%27%29%3B%0A%20%20%20m.setAttribute%28%27label%27%2Clabel%29%3B%0A%20%20%20m.f%3Dobj.StopAll.bind%28obj%29%3B%0A%20%20%20m.setAttribute%28%27oncommand%27%2C%27this.f%28%29%27%29%3B%0A%20%20%20m.setAttribute%28%27image%27%2Cimg%29%3B%0A%20%20%20m.setAttribute%28%27class%27%2C%27menuitem-iconic%27%29%3B%0A%20%20%20return%20m%3B%0A%20%7D%0A%0A%20var%20mP%3Ddocument.createElement%28%27menupopup%27%29%3B%0A%20mP.appendChild%28nMItem%28%27Stop%20All%20Tabs%27%2Cthis.image%2Cthis%29%29%3B%0A%0A%20this.appendChild%28mP%29%3B%0A%20this.type%3D%22menu-button%22%3BТак?
Update: в пред. раз забыл картинку в base64 отконвертировать. Исправил.
Возникла одна проблема: со всплывающими подсказками. Если вывести всплывающую подсказку для любой другой кнопки панели инструментов (к примеру, "Открывает новую вкладку"), а потом посмотреть ее для кнопки "Stop All Tabs", то она будет такой же (т.е. "Открывает новую вкладку"). И только после повторного обращения к кнопке "Stop All Tabs" ее всплывающая подсказка становится адекватной содержанию кнопки.
Аналогочно и с кнопкой "Reload All Tabs".
Отсутствует
Вопрос.
Код кнопки – понятно.
Установил кнопки, которые сами реализуют функционал BBCode (из сайта - Домашняя страница)
Поле “код”, уже заполнено.
А что необходимо вводить в другое поле, или добавлять некий дополнительный файл, чтобы эта кнопка, функционировала?
(При нажатии, к примеру, открывала Promt, находящийся на диске?)
Спасибо.
Отсутствует
Вопрос, не планируется ли это расширение прикрутить на Thunderbird?
Отсутствует
GASon
Картинки искать лень, прикрути сам какие-нибудь.
1. "получить всё":
2. "удалить всё помеченное как спам":
Тут должна была быть подпись. А, да... Вот она и есть.
Отсутствует
Anton, во первых, путь вегда можно определить: %путькпапке профиля%/extensions/custombuttons@xsms.org/что-тотам
во вторых, права на запись точно есть иначе бы расширение было бы попросу не поставить.
в третьих, я не предлагаю использовать динамические оверлеи.
ну и в четвёртых, у тебя с Яном одна шизофрения?
!
Отсутствует
Пит Бэнкман
Возникла одна проблема: со всплывающими подсказками...
Не знаю, воспроизвести не получается. Возможно, что-то с чем-то конфликтует..
Levabati
А что необходимо вводить в другое поле, или добавлять некий дополнительный файл, чтобы эта кнопка, функционировала?
(При нажатии, к примеру, открывала Promt, находящийся на диске?)
Спасибо.
Не очень понял, какой функционал нужен для кнопки?
Отсутствует
GASon
Картинки искать лень, прикрути сам какие-нибудь.
Зачет! Большое человеческое спасибо! Всё работает. За исключением того, что почту надо было забирать со всёх ящиков и так же удалять...
ЗЫ: Видимо я криво сделал постановку задачи...сорри.
Отредактировано GASon (18-09-2006 20:11:28)
Отсутствует
Dark-Demon
Все эти способы (и аналогичные) давно обдуманы, обмусолены, и протестированы самыми разными способами. НЕ ВЫХОДИТ.
(а если и выходит, то через страшные извращения)
Я так понимаю, ты предлагаешь:
1. Использовать статический оверлей, расположенный в %путькпапке профиля%/extensions/custombuttons@xsms.org/buttons.xul, что то же самое, что и chrome://custombuttons/content/ ?
2. Записывать в него новые кнопки при создании оных ?
3. Чтоб этот оверлей обрабатывался стандартным способом, и добавлял кнопки после следующего запуска?
Внимание, вопрос:
ты не видишь в этом способе никаких недостатков?
ну и в четвёртых, у тебя с Яном одна шизофрения?
Ага, свою справку могу тебе предъявить.
Отредактировано Yan (18-09-2006 20:07:37)
Отсутствует
Yan
Просто, не могу понять, что необходимо сделать, чтобы кнопка, уже установленная на панели
инструментов, при нажатии на нее, "включала" некую программу?
(При нажатии, к примеру, открывала Promt, находящийся на диске?)
Спасибо.
Отсутствует
Levabati
Вот тут кнопка для запуска внешних приложений:
http://forum.mozilla-russia.org/viewtopic.php?pid=109330#p109330
Или попроще, только для одного приложения, например "Блокнота":
custombutton://Launch%20Notepad%5D%5Bdata%3Aimage/gif%3Bbase64%2CR0lGODlhCwAQAPcAAFVVVWRkZKmpqa+wr7SztLa2tr28vL2+vcLDw8TDxMfHx8nJysrKys7Ozc/P0NHR0dLR0tTU1NbW1tfX19va2tvb29zc3d7e3eDh4eLi4uTj4+Xm5ebm5ufn5+jo6Orq6uzr7O7u7e/v7vDv7/Hw8PPz8vT09PX19fn4+fn6+vr6+/z8/P/+/v///v/+//7//////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yH5BAEAAP8ALAAAAAALABAAAAhxAP8RGEiQIAACMBIqVHhwocOGASJKDACjYUIXMF4wRNjCIYsUECdGHGGxIwwUJUBssPhixQkRHjJUCCkSwkEVJkJ0wEAhQgMFB0l80HBhwgMGCQ4c5CAyIoGDFiQ4WIDAQIEBAqBKpWoVK4CvYMN+DQgAOw%3D%3D%5D%5Bvar%20path%3D%27C%3A%5C%5Cwindows%5C%5Cnotepad.exe%27%3B%0A%0Avar%20arguments%3D%5B%27%27%5D%3B%0Avar%20file%20%3D%20Components.classes%5B%27@mozilla.org/file/local%3B1%27%5D%0A%20%20%20%20.createInstance%28Components.interfaces.nsILocalFile%29%3B%0Avar%20process%20%3D%20Components.classes%5B%27@mozilla.org/process/util%3B1%27%5D%0A%20%20%20%20.getService%28Components.interfaces.nsIProcess%29%3B%0A%20file.initWithPath%28path%29%3B%20%0A%20process.init%28file%29%3B%0A%20process.run%28false%2Carguments%2Carguments.length%29%3B%5D%5B
Отсутствует
(Для установки кнопки нужно выделить код из пред. сообщения и вставить его в адресную строку)
Т.е. в поле код кнопки должно получиться:
var path='C:\\windows\\notepad.exe'; var arguments=['']; var file = Components.classes['@mozilla.org/file/local;1'] .createInstance(Components.interfaces.nsILocalFile); var process = Components.classes['@mozilla.org/process/util;1'] .getService(Components.interfaces.nsIProcess); file.initWithPath(path); process.init(file); process.run(false,arguments,arguments.length);
Соответственно, путь к notepad.exe может быть другой.
Отсутствует
ты не видишь в этом способе никаких недостатков?
нет
!
Отсутствует
...
...права на запись точно есть иначе бы расширение было бы попросу не поставить.
...
Логично. Во время установки расширения права есть. Потом может не быть.
...
у тебя с Яном одна шизофрения?...
На этом форуме у меня нет раздвоения личности. idee fix по поводу статических оверлеев была, я даже бредил чего-то на xml Yan'у в PM. Но логика победила, и я поправился... В очередной раз : )
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Yan!
Спасибо, с "Notepad", получилось.
А вот здесь:
Вот тут кнопка для запуска внешних приложений:
http://forum.mozilla-russia.org/viewtop … 30#p109330
ничего не выходит.
Видимо писали код, для определенной машины.
Только для нее он и подходит?
Я так понимаю, соответствующий код, может написать, только специалист?
Или спец.программа для этого, есть?
Отсутствует