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

На IRC-канале #mozilla-ru можно получить техническую консультацию онлайн и, конечно же, порцию общения.
  • Форумы
  •  » Сustom Buttons
  •  » [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

№105-12-2012 14:46:15

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

[CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Extensions Developer Tools 0.1.1 (2013-05-19)
Совместимость: [firefox] Firefox, [seamonkey] SeaMonkey, [thunderbird] Thunderbird
Автор: Infocatcher
Описание:
Различные инструменты для разработчиков расширений или кнопок для Custom Buttons (включает в себя Attributes Inspector).
Кликните средней кнопкой мыши по любому пункту главного меню, чтобы задать это действие в качестве «умолчания» и вызывать его кликом средней кнопкой мыши по самой кнопке.
Также с помощью extDevToolsMouseGesturesLauncher.js этот код можно использовать в жестах мыши и сочетаниях клавиш.

https://raw.github.com/Infocatcher/Custom_Buttons/ccd01398c5296f575c8448e1b39b775d8820ac3c/Extensions_Developer_Tools/extDevTools-ru.png

Установить: extDevTools.html

Код:

Выделить код

Код:

if(!event.target && !this.disabled) // Button's hotkey pressed
    this.open = true;


Инициализация: extDevTools.js

Отредактировано Infocatcher (23-01-2014 13:15:37)


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

Отсутствует

 

№205-12-2012 15:40:50

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Осторожно, это тестовая версия!

Разрабатываемая версия


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

Отсутствует

 

№307-12-2012 16:03:41

_iD
Участник
 
Группа: Members
Зарегистрирован: 07-09-2012
Сообщений: 8
UA: Firefox 17.0

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Большинство разработчиков дополнений, к сожалению, даже не знают о существовании custom buttons, и ещё меньше вероятность, что они узнают об этой кнопке. Мне кажется, эту кнопку надо разместить на АМО как дополнение (а если получится сделать джетпак - будет вообще отлично).

Отсутствует

 

№407-12-2012 17:34:30

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

_iD пишет:

Большинство разработчиков дополнений, к сожалению, даже не знают о существовании custom buttons, и ещё меньше вероятность, что они узнают об этой кнопке. Мне кажется, эту кнопку надо разместить на АМО как дополнение

Это, конечно, печально, но мне в данный момент приоритетнее сделать/доделать что-то реально полезное (в основном, кончено, лично мне; кругом эгоизм, что поделаешь), чем заниматься «распространением».

И в виде расширения надо реализовывать полноценные настройки...
(Я все надеюсь, что когда-нибудь в cb будет API для этого. :) И в случае создания отдельного расширения это API cb ничего не даст.)
И еще придется то ли оставить в адаптированном под кнопку виде (иконки в base64, самодельная локализация, ...), или делать две разные версии. А на две разные надо раза в полтора больше времени.

Вдобавок я пока не вижу красивого способа использовать один и тот же код из кнопки и из расширения (точнее, чтобы расширение просто подключало js-файл с кодом инициализации).

_iD пишет:

(а если получится сделать джетпак - будет вообще отлично)

Как-то там до сих пор все очень криво с восстановлением кнопок в настроенном положении – даже на именитый Adblock Plus жалобы были.
И надо перебрать все панели инструментов вручную, найти панель с id кнопки в currentset, перебрать соседей по currentset, найти ближайшего существующего и добавить кнопку рядом с ним.


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

Отсутствует

 

№511-12-2012 11:43:37

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Extensions Developer Tools 0.1.0pre20 - 2012-12-11
[*] Если установлено расширение Console², для открытия консоли ошибок будет использоваться адрес chrome://console2/content/console2.xul.
[x] Исправлена ошибка «TypeError: toolbox.palette is null» в Attributes Inspector'е при использовании extDevToolsMouseGesturesLauncher.js.
[x] Исправлено удаление переоткрываемого окна из списка недавно закрытых окон.

Отредактировано Infocatcher (11-12-2012 11:50:45)


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

Отсутствует

 

№613-01-2013 22:14:24

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Extensions Developer Tools 0.1.0 - 2012-12-20
[x] В некоторых случаях после переключения локали по-прежнему загружались старые строки из кэша.
[x] Исправлено использование MutationObserver в Firefox 20.0a1 и новее.


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

Отсутствует

 

№710-03-2013 19:32:40

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Вопросы.
1. На что должен влиять параметр forceRestartOnLocaleChange: false ?
На перезагрузку без подтверждения или нет? Хотелось бы чтобы было именно так.. :)
У меня независимо от того установлен ли он в false или в true браузер перезагружается.
2. По Attribute Inspector.
Окошко подсказки при наведении на любой объект кроме Custom Button отображает пустое громадное белое поле почти во весь экран и только в самом низу этого поля отображается итнформация. При наведении мышки на Custom Button все отображается чаще всего корректно, видимо потому, что информации много и она заполняет все поле...
Фаерфокс 17.0.4esr и 19.0.2rel, Win XP sp3.

Отредактировано LBra (10-03-2013 19:38:57)

Отсутствует

 

№810-03-2013 21:05:29

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

1. На что должен влиять параметр forceRestartOnLocaleChange: false ?

Параметр влияет только на переключение локали: в новых версиях частично работает переключение локали без перезапуска, достаточно только переоткрыть окно (это быстрее), так вот с true будет всегда перезапускать после переключения.

LBra пишет:

На перезагрузку без подтверждения или нет? Хотелось бы чтобы было именно так.. :)

В принципе, можно добавить подтверждения. Но это позже.

LBra пишет:

2. По Attribute Inspector.
Окошко подсказки при наведении на любой объект кроме Custom Button отображает пустое громадное белое поле почти во весь экран и только в самом низу этого поля отображается итнформация. При наведении мышки на Custom Button все отображается чаще всего корректно, видимо потому, что информации много и она заполняет все поле...

Видимо, используется нестандартная тема оформления, меняющая вид tooltip'ов.
Возможно, поможет: Force reset tooltip size.


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

Отсутствует

 

№911-03-2013 15:40:08

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

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

все понял, спасибо
Я использую однооконный режим, поэтому у меня "переоткрытие окна"="рестарту браузера". ЛОЛ



Infocatcher пишет:

В принципе, можно добавить подтверждения.

Да, это будет удобнее.



Infocatcher пишет:

Видимо, используется нестандартная тема оформления, меняющая вид tooltip'ов.Возможно, поможет: Force reset tooltip size.

Странно, тема стандартная и стиль страницы тоже у меня на XP, а вот сейчас попробовал на Семерке тоже со стандартн стилем и темой и проблемы нет, все ок.
(Запущен тот же портабле Фокс)

Спасибо, попробую сниппет с force.. на XP позже и отпишусь.

Отредактировано LBra (11-03-2013 15:45:25)

Отсутствует

 

№1011-03-2013 20:07:35

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Да, все подтвердилось, добавление этой строки решило проблему. Большое спасибо за помощь и за эту полезную кнопку!  Я позже хочу туда добавить еще второй поп-ап со стандартным подменю "Developer tools", повесить его на правую кнопку мыши, тогда будут почти все инструменты в одной кнопочке. :) Не знаю, получится ли все сразу без глюков.. поэкспериментирую немножко. )))

Отсутствует

 

№1112-03-2013 02:09:17

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

Да, все подтвердилось, добавление этой строки решило проблему.

Вот так тоже работает: Better way to reset tooltip size?
А то обнаружилась проблема в Nightly 22.0a1 (2013-03-11): tt.height = null вместо удаления атрибута "height" меняет его на строку "null".


LBra пишет:

Я позже хочу туда добавить еще второй поп-ап со стандартным подменю "Developer tools", повесить его на правую кнопку мыши

Можно вот так попробовать (дописать в инициализацию):

Выделить код

Код:

this.oncontextmenu = function(e) {
    if(e.target != this || e.ctrlKey || e.altKey || e.shiftKey || e.metaKey)
        return;
    var mp = document.getElementById("menuWebDeveloperPopup");
    if(!mp)
        return;
    e.preventDefault();
    mp.hidePopup();
    var pn = mp.parentNode;
    var popupset = document.getElementsByTagName("popupset")[0];
    popupset.appendChild(mp);
    mp.addEventListener("popuphidden", function restorePopup(e) {
        if(e.target != mp)
            return;
        mp.removeEventListener(e.type, restorePopup, true);
        pn.appendChild(mp);
    }, true);
    mp.openPopupAtScreen(e.screenX, e.screenY, true);
};

Вроде, без перемещения в <popupset> <menupopup> никак не показать...


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

Отсутствует

 

№1212-03-2013 11:39:36

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

Вроде, без перемещения в <popupset> <menupopup> никак не показать...

Ух ты! Красотища! Спасибо большое, все работает отменно!

P.S.
А вот как я  поменял иконки в твоем творении:

Выделить код

Код:

var images = {
    reopenWindow: "chrome://browser/skin/preferences/application.png",
    moveTabsToNewWindow: "chrome://browser/skin/menu-forward.png",
    restart: "chrome://browser/skin/sync-throbber.png",
    cleanAndRestart: "chrome://browser/skin/sync-throbber.png",
    flushCaches: "chrome://browser/skin/KUI-close.png",
    switchLocale: "chrome://global/skin/icons/wrap.png",
    saveSessionAndExit: "chrome://mozapps/skin/downloads/downloadIcon.png",
    errorConsole: "chrome://global/skin/icons/warning-24.png",
    attrsInspector: "chrome://browser/skin/tabview/search.png",
    scratchpad: "moz-icon://.js?size=16"
};

:)

Еще бы в тот другой попап добавить подходящие chrome-иконки, а  на мидл-клик повесить сабменюшку кодировок... или еще что-то другое...  и будет конфетка! :D
(кнопочку для серфинга по омни.яр и вытаскивании их (иконок в виде кнопок) на свет божий я уже сварганил...
чуть позже выложу... ;) )

Отредактировано LBra (15-07-2013 11:18:59)

Отсутствует

 

№1312-03-2013 12:11:12

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

О, шит!
... поспешил я немножко:

У такого решения - "Вроде, без перемещения в <popupset> <menupopup> никак не показать..." вроде... есть недостаток - если предварительно не открыть сабменю "Девелоперс" в главном меню то его как бы не существует и оно в кнопке по правому клику не отображается... По крайней мере у меня так это выглядит. :(
Может все-таки клонировать его?

Отредактировано LBra (12-03-2013 12:12:44)

Отсутствует

 

№1412-03-2013 12:28:59

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Ой, это еще не открытое меню не умеет hidePopup().
И можно взять аналогичное меню из рыжей кнопки, там как раз кодировки есть.

Выделить код

Код:

this.oncontextmenu = function(e) {
    if(e.target != this || e.ctrlKey || e.altKey || e.shiftKey || e.metaKey)
        return;
    var mp = document.getElementById("appmenu_webDeveloper_popup")
        || document.getElementById("menuWebDeveloperPopup");
    if(!mp)
        return;
    e.preventDefault();
    mp.hidePopup && mp.hidePopup();
    var pn = mp.parentNode;
    var popupset = document.getElementsByTagName("popupset")[0];
    popupset.appendChild(mp);
    mp.addEventListener("popuphidden", function restorePopup(e) {
        if(e.target != mp)
            return;
        mp.removeEventListener(e.type, restorePopup, true);
        pn.appendChild(mp);
    }, true);
    mp.openPopupAtScreen(e.screenX, e.screenY, true);
};

Отредактировано Infocatcher (12-03-2013 12:29:24)


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

Отсутствует

 

№1512-03-2013 13:12:51

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

В принципе, можно добавить подтверждения. Но это позже.

Add ability to confirm each action with side-effects


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

Отсутствует

 

№1612-03-2013 17:19:28

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

Ой, это еще не открытое меню не умеет hidePopup().

Ааа.. Вот в чем дело оказывается :)

Infocatcher пишет:

И можно взять аналогичное меню из рыжей кнопки, там как раз кодировки есть.

Точно! Это еще лучше!
А ненужные пункты меню(которые дублируют пункты меню основного поп-апа) можно скрыть.
Спасибо! Все работает! :)

Добавлено 12-03-2013 17:18:22

А как эти изменения применить с наименьшим напрягом, чтобы вручную не копировать строки? Существует такая возможность? Подскажи, пожалуйста, а то я не силен в этих гитубах.. :)

Добавлено 12-03-2013 17:24:18
И еще...
Как на мидл клик по кнопке повесить открытие "эбаут:конфиг"?
Тогда будет уже полный фарш! :D

Отредактировано LBra (12-03-2013 17:39:19)

Отсутствует

 

№1712-03-2013 19:45:17

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

А как эти изменения применить с наименьшим напрягом, чтобы вручную не копировать строки? Существует такая возможность? Подскажи, пожалуйста, а то я не силен в этих гитубах.. :)

Если нет необходимости применять не все изменения, то или взять конкретно эту версию:
ссылка на изменения => View file @ ... => Raw
, или самую последнюю:
ссылка на изменения => View file @ ... => переключить с «tree ...» на «branch: master» => Raw

Вместо последних манипуляций можно сходить по ссылке из второго сообщения этой темы:
Разрабатываемая версия => extDevTools.js => Raw


LBra пишет:

Как на мидл клик по кнопке повесить открытие "эбаут:конфиг"?

Там сейчас клик средней кнопкой мыши выполняет «действие по умолчанию», которое надо предварительно выбрать кликом средней кнопкой мыши по одному из пунктов «основного» меню.
Но можно заменить

Выделить код

Код:

    var mi = this.commands.defaultActionItem;
    mi && mi.doCommand();

на что-нибудь вроде

Выделить код

Код:

gBrowser.selectedTab = gBrowser.addTab("about:config");

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

Отсутствует

 

№1813-03-2013 11:00:13

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Огромное спасибо тебе за терпеливые обьяснения и помощь!
Теперь все идеально работает. :)

Infocatcher пишет:

Там сейчас клик средней кнопкой мыши выполняет «действие по умолчанию», которое надо предварительно выбрать кликом средней кнопкой мыши по одному из пунктов «основного» меню.
Но можно заменить

Фу ты!.. Ну я тупой! Никак сам не мог сообразить, что же делает этот мидл-клик...
(возьму на вооружение... ;) )
Тогда естественнее делать так как задумано автором, т.е добавлять желаемые пункты меню и использовать эту фичу. :)
Еще раз спасибо за эту чудесную кнопку и за помощь!

З.Ы. Чуть поменял у себя хром-иконки (в моем посте выше), а иконкой самой кнопки зарядил это: chrome://mozapps/skin/extensions/utilities.png
И как бы меньше кода стало и внешний вид не сильно пострадал. :D

З.З.Ы. Еще мысля появилась... - менять иконку кнопки на иконку "мидл-кликнутого" пункта меню автоматом при смене "действия по умолчанию", совершенствованию воистину нет предела. ;)

Добавлено 13-03-2013 11:16:32
Да, еще вдогонку. :)
Я себе давно уже отключил, закомментировав ненужные 2 строки... в коде, мидл-клик в Инспекторе Аттрибутов. Он мешал чему-то еще в моих кнопках, не помню уже чему именно...
Было бы полезно и эти настройки (кликов в Инспекторе) вынести в

Выделить код

Код:

var options = ...

Отредактировано LBra (13-03-2013 11:42:30)

Отсутствует

 

№1913-03-2013 15:19:43

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

З.З.Ы. Еще мысля появилась... - менять иконку кнопки на иконку "мидл-кликнутого" пункта меню автоматом при смене "действия по умолчанию", совершенствованию воистину нет предела. ;)

Это можно. :)

LBra пишет:

Я себе давно уже отключил, закомментировав ненужные 2 строки... в коде, мидл-клик в Инспекторе Аттрибутов. Он мешал чему-то еще в моих кнопках, не помню уже чему именно...

О чем речь? Об открытии DOM Inspector'а по клику средней кнопкой мыши?
И хорошо бы вспомнить, чему мешало. :) Какое-то меню выводится по клику СКМ? А по Ctrl+СКМ оно, случаем, не выводится?


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

Отсутствует

 

№2013-03-2013 18:15:04

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

О чем речь? Об открытии DOM Inspector'а по клику средней кнопкой мыши?
И хорошо бы вспомнить, чему мешало. :) Какое-то меню выводится по клику СКМ? А по Ctrl+СКМ оно, случаем, не выводится?

Да, открытие ДОМ Інспектора...
Мне придется вернуть мидл-клик для того чтобы вспомнить, иначе никак...
поскольку меня вполне устраивает "Ctrl+L" для этого действия, то я не запомнил, что именно мешало.... вроде некоторые пункты то ли главного меню то ли меню кнопок срабатывали... не помню, хоть убей! :lol:
если нужно, то я верну мидл-клик и когда попаду опять в эту "интерференцию" то отпишусь здесь.
Ctrl+СКМ  ?  Тоже не помню, вроде нет...

З.Ы. Еще вопросы и просьбы.

1. Строка:

Выделить код

Код:

label="' + _localize("Switch locale to “%S”").replace("%S", cmds.switchLocale(true)) + '"

"потерялась" какое-то время тому умышленно или случайно? :)

2. Можно ли попросить добавить это:

Выделить код

Код:

var Cc = Components.classes, Ci = Components.interfaces, Cu = Components.utils;

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

... А это:

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

Выделить код

Код:

this.onmouseover = function(e) {
    if(e.target != this)
        return;
    Array.some(
        this.parentNode.getElementsByTagName("*"),
        function(node) {
            if(
                node != this
                && node.namespaceURI == XULNS
                && node.boxObject
                && node.boxObject instanceof Ci.nsIMenuBoxObject
                && node.open
            ) {
                node.open = false;
                this.open = true;
                return true;
            }
            return false;
        },
        this
    );
};


убрать? (Как мед, так ложкой! :D )
Оно раздражает, когда открывает меню без клика при "переезде" на него мыши с некоторых моих кнопок...

Отредактировано LBra (13-03-2013 18:47:57)

Отсутствует

 

№2113-03-2013 19:26:49

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

Это можно. :)

Супер!
Спасибо! :)

Добавлено 13-03-2013 19:29:10
З.З.Ы. :D
Меня еще одна идея посетила... я придумал, что засуну на мидл-клик Extensions Developer Tools в качестве варианта...
а именно - "третий этаж" - цельную другую кнопку, расположенную на скрытом тулбаре!
... кнопку с собственными меню-поп-апом, иконками, зис.онкликом, зис.менюкликом, зис.ондестроем, реинициализацией и стилем... :D
... И... - с "четвертымм этажом" - доступом к другим скрытым кнопкам... :music:
... естественно - все это - "по теме", т.е - самые, что ни на есть "tools", "эбаут.конфиг" в их числе.

Что скажешь, может получиться? Так сказать "Sub Extensions Developer Tools in Extensions Developer Tools". Или есть подводные камни, которые не обойти?...

Отредактировано LBra (13-03-2013 19:56:48)

Отсутствует

 

№2214-03-2013 11:03:40

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

вроде некоторые пункты то ли главного меню то ли меню кнопок срабатывали...

Да, обработчик вида

Выделить код

Код:

window.addEventListener("click", function onClick(e) {
    window.removeEventListener(e.type, onClick, true);
    alert(e.type);
}, true);

, добавленный до запуска Attributes Inspector'а, перебить не получится.

LBra пишет:

если нужно, то я верну мидл-клик и когда попаду опять в эту "интерференцию" то отпишусь здесь.

Просто я пока не вижу причин плодить настройки. :)

LBra пишет:

1. Строка:
[...]
"потерялась" какое-то время тому умышленно или случайно? :)

Так и задумано: надпись теперь выставляется при открытии меню.

LBra пишет:

Выделить код

Код:

var Cc = Components.classes, Ci = Components.interfaces, Cu = Components.utils;

Если включить вывод строгих предупреждений, будет

Warning: TypeError: variable Cu redeclares argument
Source file: chrome://custombuttons-context/content/button.js?windowId=Firefox&id=custombuttons-button0@code
Line: 1, Column: 57
Source code:
var Cc = Components.classes, Ci = Components.interfaces, Cu = Components.utils;

И потом код можно использовать и без кнопки.
Да и смысла как-то особого нет.

LBra пишет:

Оно раздражает, когда открывает меню без клика при "переезде" на него мыши с некоторых моих кнопок...

Не буду убирать, так ведет себя меню и кнопки-меню на панели закладок.

LBra пишет:

"третий этаж" - цельную другую кнопку, расположенную на скрытом тулбаре!

Как здесь? Там полно разных эффектов.


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

Отсутствует

 

№2321-03-2013 13:17:39

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

Да, обработчик вида

Выделить код

Код:

window.addEventListener("click", function onClick(e) {
    window.removeEventListener(e.type, onClick, true);
    alert(e.type);
}, true);

, добавленный до запуска Attributes Inspector'а, перебить не получится.

А что это такое и 'кто' именно добавляет подобное?..

Добавлено 21-03-2013 13:33:26

Infocatcher пишет:

Если включить вывод строгих предупреждений, будет

Warning: TypeError: variable Cu redeclares argument

И потом код можно использовать и без кнопки.
Да и смысла как-то особого нет.

Да, эти 'строгие предупреждения' ругаются на все, что под руку попадет... на большинство вэб-страниц, на Гугль, на chrome://... и т.д. - ошибки везде!  :)
Спасибо за напоминание, я как-то упустил это из виду... ту строку в Инициализацию добавлять не нужно, только "Code" ее требует...
Я люблю компактность, точнее она меня 'любит', так как юзаю маленькие экраны в ноутбуках...

Добавлено 21-03-2013 13:39:51

Infocatcher пишет:

Как здесь? Там полно разных эффектов.

Да, что-то похожее, но попроще... :)  Попробую позже ... когда время будет и когда... разберусь с тем, как пункты меню в ExtDevTools добавлять. :D
Если получится, то отпишусь... надежда есть... небольшая... но зато , если получится, то это может стать чем то типа "стандарта" и "универсала"...   ;) :music:

Отредактировано LBra (21-03-2013 13:45:50)

Отсутствует

 

№2421-03-2013 13:51:17

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

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

LBra пишет:

А что это такое и 'кто' именно добавляет подобное?..

В каком смысле «что»? Это обычный https://developer.mozilla.org/en-US/doc … ntListener.
А «кто» – любое другое расширение (или кнопка).


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

Отсутствует

 

№2521-03-2013 16:44:09

LBra
Участник
 
Группа: Members
Зарегистрирован: 20-10-2011
Сообщений: 40

Re: [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Infocatcher пишет:

Это обычный https://developer.mozilla.org/en-US/doc … ntListener.
А «кто» – любое другое расширение (или кнопка).

Я так и подумал, но решил уточнить, что имеется ввиду. Спасибо за ответ. :)
Насчет Мидл-клика... теперь вспомнил... я его потому и убрал, - чтобы была возможность после старта Инспектора Аттрибутов открыть меню или меню поп-ап или контекстное меню, заведенные в некоторых CB кнопках на этот мидл-клик и исследовать его.

Отсутствует

 
  • Форумы
  •  » Сustom Buttons
  •  » [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

Board footer

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