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

В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.
  • Форумы
  •  » Сustom Buttons
  •  » [CB]Extensions Developer Tools (для разработчиков расширений/кнопок)

№105-12-2012 14:46:15

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4339
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 этот код можно использовать в жестах мыши и сочетаниях клавиш.

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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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
Сообщений: 4339
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–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]