Полезная информация

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№582605-02-2013 00:17:18

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

bunda1 пишет

Будем надеяться что Dumby исправит свою кнопку

Ну, кнопка не моя, просто сунулся переделывать.
Наконец дошло, как прокрутку отменить.

скрытый текст

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3EExtension%20List%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsSAAALEgHS3X78AAAFHUlEQVQ4jX2UW4id1RmGv2+t9e9/H/5/9mF2Zh8m455tdMjJatpqQERIUUOhiNAWCqa1hwsvWoQ24E17a5EqlOKF0BPeKBLBeKC9EqoSo8SW0kQbO8l2MpnzzD7O/s9rre/rRWpvCn0v3xeemwdeZGYAACAitGAREQEBJQA4DGyZmRAAAYARUTIgIrBmZssAfGthECBBCgmK4Rbw3PVz/Nu//w7afot917uj5tfONivNOgqKjckkANpYJ972cOvTaTx9IaJsm4idct6z42xMD7Tux5/c/VNWDIzMzNcG19oXb3xwe7PctErKZiGXKxxbPP61Tmu+YoWmIErE8tr1zZXNleuZMXdFWTIHTMtVb0bvBLtYQMV8D4ESICCjTHh577tnTj3+y/lyMwqSMARJKQIKrQ2nlBIyiGZ1zinP+A/VCrUnr6+t3NwZbHyr6lVyIMRJP++/BwD/UgyMQkgGgb3ljavnx4PtP6UmXWw25n88W6nO9OOxidNIEhEbZQ+AMPXQjrla9haU035eOuJQvlroZgDnLNEPFQGRQARme3l5ezlwZg/9JdLx0r4Ov7HkLM1O06kN4khIRLRoWesMhmbErnRz+aL7QMZJSQFIS9wmAKkkSLRkQYJ6ZLHVebpUql5M9s1MYKLDe9MROw6gI5VFQhxMxnoUDuhgrV0Kg3R7befq8wfK9Tu04Hs7VfO2AExvSQGGUEdlRFxwCu63C9YT0XTAqU54rtpQVlqMwhSjvSRIEp1EWVqaBNNJp3jojSQJbvR2e/5X/ROhEsgKAYGIoB8OKaI4TWwYFQp5dax+xCMgDLIADGeY6BQ8zy0WSgckSgBEIU+0v+L9bfvSsUgnX56Y6ccM8JkCAJYo4WjtyJUtu/r7Gvofrk5WDu7a3afm6gfae8FQR8lUMTJq1+Q0aSVJgSpx69L44jNxIep0l1p3JkSvamueVADAQgpoePU1dzd/Yc6ZO78S9w5f3fnsjHRkO8oimkQBCYnCkIE0TYUQDETkfbK7e7rsF52y64lROF4iJkcxMFoiuNy/fN+F/rtPLZv6Y4N4WJKJ0w3XY1Ayh56tkACEUTDOwnRC7pwqsZFbJysnnttI1hfWR4OTj971ndfyKv8fKUww3B82huPhcSenjloBQoECmADXZ+sO5QzHUYr9yShjxjQZ61IRCqNnHn729U8GVzbeufnebT84/r0tiZIUAAAAg4yVbiStrBU2NCBjvlksgCUIaJ8NWcgg5bwvC3lRl9YA6Iicf6xf8Zb3lr/0ea938tX8KxeOnD7+qUJAECh5sdb5Z2e789KsqLyzPl5fGAXDn9VmK/OTZGoSnSACoBXWMVo7OZEDxqz9q/effS7FpBvE0e1uzz33CzI/UghIQgjoNrq9zt7im91K589Bsn/4wxuXzuSLx+YRmUbTkYMohMopynRqI4gVIJQmZnLa90qyXWxg2a12GFgqZhaWCS5d++upt6689XS1MtPTWepU65Wjqzurg/1w/NGs39hBZt7a2Wy5RfeeQinfTgKz3vU7P18bbNy9NRh+/f4HHzzvKidTjMzAjPt24o/0cF4aOOgoZVylnNXNjVHXv+21P37zD+eZCJ54+fuP3QzWO9JR7UKuOP7Noy9eWJusvvLR6se/PnvqbF+hw/jFY+9F/cow7tdzIscMTJYtGDLOjDMzbvmtPgPD5nSzHuiwIlGyQqUXygtbjnRSwwYU3vL7X+D/yxevjoD/0yMwEgAKEAQA8G+QDuH4X0FBaQAAAABJRU5ErkJggg%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B/*Initialization%20Code*/%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3Etry%20%7B%20Cu.import%28%22resource%3A//custombuttons-modules/addons4.js%22%2C%20%7B%7D%29%3B%20%7D%20catch%28ex%29%20%7B%7D%0A%0Afunction%20gatherInfo%28type%29%20%7B%0A%0A%09var%20tmp%20%3D%20%5B%5D%2C%20map%20%3D%20%7B%7D%2C%20sort%20%3D%20%5B%5D%3B%0A%09items.forEach%28function%28item%29%20%7B%0A%09%09if%20%28item.type%20%21%3D%20type%29%20return%3B%0A%0A%09%09var%20name%20%3D%20item.name%20%3F%20item.name.toUpperCase%28%29%20%3A%20%22UNNAMED%22%3B%0A%09%09name%20+%3D%20item.id%0A%0A%09%09tmp.push%28name%29%3B%0A%09%09map%5Bname%5D%20%3D%20item%3B%0A%09%7D%29%3B%0A%09tmp.sort%28%29%3B%0A%09tmp.forEach%28function%28name%29%20%7B%20sort.push%28map%5Bname%5D%29%20%7D%29%3B%0A%09%0A%09var%20list%20%3D%20%22%22%2C%20enabled%20%3D%200%2C%20disabled%20%3D%200%3B%0A%09sort.forEach%28function%28item%29%20%7B%0A%09%0A%09%09list%20+%3D%20%28item.name%20%7C%7C%20%22unnamed%22%29%20+%20%22%20%22%20+%20%28item.version%20%7C%7C%20%22%22%29%3B%0A%0A%09%09if%20%28item.type%20%21%3D%20%22custombuttons%22%20%26amp%3B%26amp%3B%20%28item.userDisabled%20%7C%7C%20item.appDisabled%29%29%20%7B%0A%09%09%09list%20+%3D%20%22%20%5B%20%u0432%u044B%u043A%u043B%u044E%u0447%u0435%u043D%20%5D%5Cn%22%3B%20disabled++%3B%20return%3B%0A%09%09%7D%0A%0A%09%09else%20if%20%28item.type%20%3D%3D%20%22custombuttons%22%29%20%7B%0A%0A%09%09%09var%20str%20%3D%20item.id%3B%0A%09%09%09var%20id%20%3D%20str.substring%28str.lastIndexOf%28%22custombuttons-button%22%29%2C%20str.length%29%3B%0A%09%09%09var%20button%20%3D%20document.getElementById%28id%29%3B%0A%0A%09%09%09if%20%28%21button%29%20%7B%0A%09%09%09%09list%20+%3D%20%22%20%5B%20%u041D%u0415%20%u0412%u042B%u0422%u0410%u0429%u0415%u041D%u0410%20%5D%5Cn%22%3B%20disabled++%3B%20return%3B%0A%09%09%09%7D%0A%09%09%09if%20%28button.hasAttribute%28%22initializeerror%22%29%29%20%7B%0A%09%09%09%09list%20+%3D%20%22%20%5B%20%u041E%u0428%u0418%u0411%u041A%u0410%20%u0418%u041D%u0418%u0426%u0418%u0410%u041B%u0418%u0417%u0410%u0426%u0418%u0418%20%5D%5Cn%22%3B%20disabled++%3B%20return%3B%0A%09%09%09%7D%0A%09%09%7D%0A%0A%09%09enabled++%3B%20list%20+%3D%20%22%5Cn%22%3B%0A%09%7D%29%3B%0A%09return%20%5Benabled%20+%20disabled%2C%20enabled%2C%20disabled%2C%20list%5D%3B%0A%7D%0Avar%20items%20%3D%20%5B%5D%3B%0Afunction%20extensionsCallback%28extensions%29%20%7B%0A%09var%20list%20%3D%20%22%22%3B%0A%09items%20%3D%20extensions%3B%0A%20%20%20%20%0A%09var%20info%20%3D%20Cc%5B%22@mozilla.org/xre/app-info%3B1%22%5D.getService%28Ci.nsIXULAppInfo%29%3B%0A%20%20%20%20%0A%09list%20+%3D%20info.vendor%20+%20%22%20%22%20+%20info.name%20+%20%22%20%22%20+%20info.version%20+%20%22%20%28build%20%22%20+%20info.appBuildID%20+%20%22%29%5Cn%22%3B%0A%09list%20+%3D%20%22User%20Agent%3A%20%22%20+%20navigator.userAgent%20+%20%22%5Cn%5Cn%22%3B%0A%0A%09for%28var%20type%20in%20AddonManager.addonTypes%29%20%7B%0A%09%09%0A%09%09var%20name%3B%0A%09%09var%20addonType%20%3D%20AddonManager.addonTypes%5Btype%5D%3B%0A%09%09if%20%28addonType.name%29%20name%20%3D%20addonType.name%3B%09%09%0A%09%09else%20if%20%28addonType.id%20%3D%3D%20%22custombuttons%22%29%20name%20%3D%20%22%u041A%u043D%u043E%u043F%u043A%u0438%22%3B%0A%0A%09%09list%20+%3D%20%22***%20%22%20+%20name%3B%0A%09%09var%20ext%20%3D%20gatherInfo%28addonType.id%29%3B%0A%09%09list%20+%3D%20%22%20%28%20%u0412%u043A%u043B%u044E%u0447%u0435%u043D%u043E%3A%20%22%20+%20ext%5B1%5D%20+%20%22%2C%20%u041E%u0442%u043A%u043B%u044E%u0447%u0435%u043D%u043E%3A%20%22%20+%20ext%5B2%5D%20+%20%22%2C%20%u0412%u0441%u0435%u0433%u043E%3A%20%22%20+%20ext%5B0%5D%20+%20%22%20%29%5Cn%22%20+%20ext%5B3%5D%20+%20%22%5Cn%22%3B%0A%09%7D%0A%0A%09var%20dialog%20%3D%20%27%5C%0A%09%09%26lt%3B%3Fxml-stylesheet%20href%3D%22chrome%3A//global/skin/%22%3F%26gt%3B%5Cn%5C%0A%09%09%26lt%3Bdialog%20xmlns%3D%22http%3A//www.mozilla.org/keymaster/gatekeeper/there.is.only.xul%22%5Cn%5C%0A%09%09%09xmlns%3Ahtml%3D%22http%3A//www.w3.org/1999/xhtml%22%5Cn%5C%0A%09%09%09id%3D%22cbbExtensionsLister%22%5Cn%5C%0A%09%09%09persist%3D%22width%20height%20screenX%20screenY%22%5Cn%5C%0A%09%09%09title%3D%22%u0421%u043F%u0438%u0441%u043E%u043A%20%u0440%u0430%u0441%u0448%u0438%u0440%u0435%u043D%u0438%u0439%22%5Cn%5C%0A%09%09%09width%3D%22640%22%20height%3D%22480%22%5Cn%5C%0A%09%09%09buttons%3D%22accept%2Cextra1%22%5Cn%5C%0A%09%09%09buttonlabelextra1%3D%22%u041A%u043E%u043F%u0438%u0440%u043E%u0432%u0430%u0442%u044C%20%u0432%u0441%u0435%u2026%22%5Cn%5C%0A%09%09%09onload%3D%22init%28%29%22%5Cn%5C%0A%09%09%09ondialogextra1%3D%22copy%28%29%22%26gt%3B%5Cn%5C%0A%09%09%09%26lt%3Bscript%20type%3D%22application/x-javascript%22%26gt%3B%5Cn%5C%0A%09%09%09%09%26lt%3B%21%5BCDATA%5B%5Cn%5C%0A%09%09%09%09%09function%20init%20%28%29%20%7B%7D%5Cn%5C%0A%09%09%09%09%09function%20copy%20%28%29%20%7B%5Cn%5C%0A%09%09%09%09%09%09var%20tb%20%3D%20document.getElementById%28%22addonslist%22%29%3B%5Cn%5C%0A%09%09%09%09%09%09window.arguments%5B0%5D.write%28%28opener.navigator.platform.indexOf%28%22Win%22%29%20%21%3D%20-1%29%20%3F%20tb.value.replace%28/%5C%5Cn/g%2C%20%22%5C%5Cr%5C%5Cn%22%29%20%3A%20tb.value%29%3B%5Cn%5C%0A%09%09%09%09%09%09tb.focus%20%28%29%3B%5Cn%5C%0A%09%09%09%09%09%7D%5Cn%5C%0A%09%09%09%09%5D%5D%26gt%3B%5Cn%5C%0A%09%09%09%26lt%3B/script%26gt%3B%5Cn%5C%0A%09%09%09%26lt%3Btextbox%20id%3D%22addonslist%22%20flex%3D%221%22%20multiline%3D%22true%22%20/%26gt%3B%5Cn%5C%0A%09%26lt%3B/dialog%26gt%3B%27%3B%0A%09dialog%20%3D%20%22data%3Aapplication/vnd.mozilla.xul+xml%2C%22%20+%20encodeURIComponent%28dialog%29%3B%0A//%09var%20win%20%3D%20window.openDialog%20%28dialog%2C%20%22%22%2C%20%22chrome%2Cdependent%2Cdialog%3Dno%2Cminimizable%22%2C%20custombuttonsUtils.gClipboard%29%3B%0A%09var%20win%20%3D%20window.openDialog%20%28dialog%2C%20%22%22%2C%20%22chrome%2Cdependent%2Cdialog%3Dno%22%2C%20custombuttonsUtils.gClipboard%29%3B%0A%0A%09addEventListener%28%22load%22%2C%20function%28%29%20%7B%0A%09%09var%20doc%20%3D%20win.document%3B%0A%09%09var%20textbox%20%3D%20doc.querySelector%28%22textbox%22%29%3B%0A%09%09textbox.value%20%3D%20list%3B%0A%09%09textbox.inputField.selectionStart%20%3D%0A%09%09textbox.inputField.selectionEnd%20%3D%200%3B%0A%09%7D%2C%20true%2C%20win%29%3B%0A%7D%0AAddonManager.getAllAddons%28extensionsCallback%29%3B%0A%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

№582705-02-2013 00:30:41

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

voqabuhe пишет

А эта кнопка BB Code откуда у меня, я уже не помню, может быть кто-нибудь возьмётся реанимировать?  А может автор объявится? Уж очень на мой взгляд удобная кнопка. Плиз!!!!
BB Code.7z

Ну и жуть, а не кнопка. Завтра попробую исправить.

Отредактировано bunda1 (05-02-2013 00:32:01)

Отсутствует

 

№582805-02-2013 00:45:24

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 21.0

Re: Custom Buttons

bunda1 пишет

Ну и жуть, а не кнопка.

В каком смысле жуть?

bunda1 пишет

Завтра попробую исправить.

Ой заранее спасибо тебе огромное, даже если и не исправишь, за попытку.:)

Отсутствует

 

№582905-02-2013 00:50:47

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

voqabuhe
Жуть потому что там куча лишнего кода.

Отсутствует

 

№583005-02-2013 00:53:08

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

voqabuhe пишет

может быть кто-нибудь возьмётся реанимировать?

Ну есть же у Infocatcher'а специальная кнопка ремонтник.
Плюс чуть-чуть подшаманить. И, согласен, жуть а не кнопка.

Отсутствует

 

№583105-02-2013 00:55:45

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

Dumby пишет

Ну, кнопка не моя, просто сунулся переделывать.
Наконец дошло, как прокрутку отменить.

Спасибо за исправления и код кнопки ты практически заново переписал, вот так.

Добавлено 05-02-2013 01:07:25

Dumby пишет

Ну есть же у Infocatcher'а специальная кнопка ремонтник.
Плюс чуть-чуть подшаманить. И, согласен, жуть а не кнопка.

Что то не работает на FF18 :/

Отредактировано bunda1 (05-02-2013 01:07:25)

Отсутствует

 

№583205-02-2013 01:32:12

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 21.0

Re: Custom Buttons

bunda1 пишет

Жуть потому что там куча лишнего кода.

Ну дык может попутно и всё лишнее  выкинешь? :)

Отсутствует

 

№583305-02-2013 01:42:52

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

bunda1 пишет

Что то не работает на FF18

:D Наверное потому, что я с кодировкой накосячил. Вот UTF-8.

Отсутствует

 

№583405-02-2013 01:51:26

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

Dumby пишет

Наверное потому, что я с кодировкой накосячил. Вот UTF-8.

Работает, но меню Colors не прокручивается

Добавлено 05-02-2013 01:52:05

voqabuhe пишет

Ну дык может попутно и всё лишнее  выкинешь? :)

Хорошо.

Отредактировано bunda1 (05-02-2013 01:52:05)

Отсутствует

 

№583505-02-2013 07:19:24

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 19.0

Re: Custom Buttons

bunda1
Я пробовал реанимировать Extension List с помощью кнопки от Infocatcher'a, кнопка заработала, но список появляется без переносов.

Отсутствует

 

№583605-02-2013 12:09:07

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 18.0

Re: Custom Buttons

Kamui пишет

Я пробовал реанимировать Extension List с помощью кнопки от Infocatcher'a, кнопка заработала, но список появляется без переносов.

Вроде, удалось подправить:
Convert t, n and r in attributes


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№583705-02-2013 12:34:12

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

Infocatcher
Только если не сложно, иначе и не стоит...

Выделить код

Код:

<menupopup>
    <menupopup>
    </menupopup>
</menupopup>

Отсутствует

 

№583805-02-2013 12:42:42

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 18.0

Re: Custom Buttons

Dumby
Не понял, а где вопрос?

P.S. Забавный у форума баг: обратные слэши пропадают, но если нажать «ответить», все на месте.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№583905-02-2013 13:32:57

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2129
UA: Firefox 10.0

Re: Custom Buttons

Infocatcher пишет

а где вопрос?

Попробую сформулировать:
Если в ремонтируемой кнопке встречается тэг (открывающий и закрывающий),
а где-то внутри него ещё один такой-же (с тем-же именем и тоже открывающий и закрывающий),
то ремонтник (Convert E4X button for Custom Buttons) заканчивает строку на вложенном закрывающем.
Вот так:

Выделить код

Код:

'<menupopup>\n\
    <menupopup>\n\
    </menupopup>'
</menupopup>

Вопрос: насколько сложно это исправить ?
(я в том смысле, что ситуация редкая, поэтому скорей всего и исправлять не стоит)

Отсутствует

 

№584005-02-2013 14:03:24

middlemouse.paste
Участник
 
Группа: Members
Зарегистрирован: 10-07-2011
Сообщений: 21
UA: Firefox 18.0

Re: Custom Buttons

Можно ли создать кнопочку которая открывает для редактирования последнюю редактировавшуюся кнопку?
И как заставить кнопку реагировать наряду с событиями onmouseout и onmouseover на событие mousewheel?
Т.е. навел мышь на кнопку и крутишь колесико вверх-вниз, кнопка исполняет код.

Отредактировано middlemouse.paste (05-02-2013 15:43:13)

Отсутствует

 

№584105-02-2013 17:37:08

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 18.0

Re: Custom Buttons

Dumby пишет

Если в ремонтируемой кнопке встречается тэг (открывающий и закрывающий),
а где-то внутри него ещё один такой-же (с тем-же именем и тоже открывающий и закрывающий)
[...]

Ааа...
С этим сложно, в общем случае надо менять регулярные выражения на полноценный XML-парсер.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№584205-02-2013 19:08:10

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

middlemouse.paste пишет

И как заставить кнопку реагировать наряду с событиями onmouseout и onmouseover на событие mousewheel?
Т.е. навел мышь на кнопку и крутишь колесико вверх-вниз, кнопка исполняет код.

Выделить код

Код:

function handleScroll(e) {
   custombuttons.alertSlide("alert", ( e.detail < 0 ) ? "вверх" : "вниз"); 
}
this.addEventListener('DOMMouseScroll', handleScroll, false);

Добавлено 05-02-2013 19:12:29

middlemouse.paste пишет

Можно ли создать кнопочку которая открывает для редактирования последнюю редактировавшуюся кнопку?

Вместо custombuttons-button8 укажи Id кнопки которую хочешь редактировать.

Выделить код

Код:

// Редактировать кнопку ....
custombuttons.editButton( document.getElementById( "custombuttons-button8" )  );

Можно конечно и последнюю редактировавшуюся, но сделать это сложней.

Отредактировано bunda1 (05-02-2013 19:15:40)

Отсутствует

 

№584306-02-2013 20:57:11

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 19.0

Re: Custom Buttons

bunda1
Можешь оформить как CB этот код:

Выделить код

Код:

// ==UserScript==
// @name           overwriteMiddleMousePaste.uc.js
// @namespace      http://d.hatena.ne.jp/Griever/
// @include        main
// ==/UserScript==

document.documentElement.addEventListener("click", function(event){
    if (event.button !== 1 || !gPrefService.getBoolPref('middlemouse.paste')) return;

    var localName = event.target.localName.toLowerCase();
    if ((localName === 'input' || localName === 'textarea' || localName === 'textbox') && 
            document.commandDispatcher.getControllerForCommand("cmd_paste") ){
        goDoCommand("cmd_paste");
        event.preventDefault();
    }
}, true);

Чтобы там не было лишнего, всяких повторных запусков обработчиков и т.д.
Код делает вот что, когда middlemouse.paste;true, текст вставляется щелком колеса, но почему-то когда в текстовом поле выделен текст и мы вставляем туда что-то с помощью СКМ, то что было выделено не заменяется, хотя по Ctrl+v заменяется. Код это исправляет :)

Отсутствует

 

№584406-02-2013 21:42:51

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

Kamui

Выделить код

Код:

function middleMousePaste(e) {
   if ( e.button !== 1 || !custombuttons.getPrefs('middlemouse.paste') ) return;

   var localName = e.target.localName.toLowerCase();
   if ( (localName === 'input' || localName === 'textarea' || localName === 'textbox') && 
                      document.commandDispatcher.getControllerForCommand("cmd_paste") ) {
        goDoCommand("cmd_paste");
        e.preventDefault();
        }
};        
document.documentElement.addEventListener("click", middleMousePaste, true);
this.onDestroy = function() {
   document.documentElement.removeEventListener("click", middleMousePaste, true);
}

Положи в новую кнопку, но если хочешь положить в кнопку с другими кодами у которых есть this.onDestroy = function() {.. то надо поставить в начале кнопки 30-11-2012 22:34:29

Отредактировано bunda1 (06-02-2013 21:47:29)

Отсутствует

 

№584506-02-2013 21:43:40

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 18.0

Re: Custom Buttons

(20-07-2011)

Infocatcher пишет
slbgz пишет

Сейчас в эту Сборку Кнопок нельзя добавлять кнопки-меню, это один недостаток, и второй, -
нельзя использовать все возможности добавленных кнопок, в которых задействованы и миддл-клик и райт-клик, -
в Стекере работает только Лефт-клик у кнопок.

Будет много побочных эффектов. Или с внешним видом и поведением (не как у пунктов меню) при переносе кнопок как есть, или с переносом свойств (и с редактированием), если создавать нормальное меню.

Вот пример с переносом кнопок: Merge Buttons 0.1.0a1

А еще перестает работать установщик свойства disabled.

И даже как-то заработало: Merge Custom Buttons
Побочных эффектов, правда, по-прежнему полно.


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№584606-02-2013 22:32:22

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 21.0

Re: Custom Buttons

Kamui пишет

Чтобы там не было лишнего, всяких повторных запусков обработчиков и т.д.
Код делает вот что, когда middlemouse.paste;true, текст вставляется щелком колеса, но почему-то когда в текстовом поле выделен текст и мы вставляем туда что-то с помощью СКМ, то что было выделено не заменяется, хотя по Ctrl+v заменяется. Код это исправляет :)

Прикольно. Только в панели поиска не действует. Вот бы ещё сделать чтобы и там срабатывал.

Отсутствует

 

№584706-02-2013 22:36:12

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 19.0

Re: Custom Buttons

bunda1
Спасибо в очередной раз ;) положил в отдельную кнопку, не любитель кидать все в одну :)

Отсутствует

 

№584806-02-2013 22:53:59

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

voqabuhe пишет

Прикольно. Только в панели поиска не действует. Вот бы ещё сделать чтобы и там срабатывал.

Выделить код

Код:

function middleMousePaste(e) {
   if ( e.button !== 1 || !custombuttons.getPrefs('middlemouse.paste') ) return;

   var localName = e.target.localName.toLowerCase();
   if ( /input|textarea|textbox|searchbar/.test( localName ) && document.commandDispatcher.getControllerForCommand("cmd_paste") ) { 
        goDoCommand("cmd_paste");
        e.preventDefault();
        }
};        
document.documentElement.addEventListener("click", middleMousePaste, true);
this.onDestroy = function() {
   document.documentElement.removeEventListener("click", middleMousePaste, true);
}

Отредактировано bunda1 (06-02-2013 22:59:04)

Отсутствует

 

№584906-02-2013 23:08:17

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
UA: Firefox 18.0

Re: Custom Buttons

okkamas_knife
Меня в этом деле больше интересует работа конструкторов/деструкторов в Custom Buttons.
Если убрать конструкторы/деструкторы из XBL вообще или оставить, но сделать фильтрацию (не понятно, правда, как), то сломав кучу кнопок можно избавиться от повторной инициализации кнопок с меню.
Только вот все кнопки с меню придется переделать на что-нибудь вроде

Выделить код

Код:

this.type = "menu";
setTimeout(function() { // Wait for XBL binding
    someInitialization();
}, 0);

Можно даже не ломать ничего, а добавить галочку: мол, я новая кнопка, я знаю, что делаю.

okkamas_knife пишет

просто в чем смысл именно вертикальной панели если она всеравно скрывается?:dumb:

А в чем смысл любого меню? :)

Добавлено 06-02-2013 23:09:51
bunda1
Можно проверять event.originalTarget, там будет какой-нибудь html:input или html:textarea.

Отредактировано Infocatcher (06-02-2013 23:09:51)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№585006-02-2013 23:15:18

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

Infocatcher пишет

Можно проверять event.originalTarget, там будет какой-нибудь html:input или html:textarea.

Спасибо.

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]