Infocatcher, я всё пытаюсь себе пристроить Toggle on Top, ну ты помнишь куда...
Дело не в этом, у меня проблема с самим кодом (самая первая версия)
Итак:
Firefox 3.6.28, если окно CB-редактора полностью развёрнуто и
нажимаю Toggle on Top, то консоль ругается -
Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIXULWindow.zLevel]
ну и, соответственно, все вытекающие последствия.
Намекни, это лечится, или лучше если редактор развёрнут,
то просто скрывать кнопку ?
Infocatcher, Ого! Круть какая! Да уж, это совсем не тоже самое, что мне в голову взбрело
( обычный перебор до children.length ) Ну а добавить хочется, конечно, перед spacer'ом.
[Кстати, засовывание чего бы то ни было вовнутрь <tabs> ломает переключение вкладок по Ctrl+Tab.]
Ага, сечас посмотрел, жму - просто ничего не происходит, вздохнул с облегчением.
Вот когда я пытался поставить кнопку перед табами, - вот это был кошмар :lol:
Infocatcher, вот оно что, жаль ...
Может быть попробую их все перебрать - не spacer ли?
okkamas_knife, ну в коде-то вряд ли, разве что в комментариях,
но тоже маловероятно, вот ты - встречал хоть раз ?
Малозаметен - это да, зато ставить удобно, а если нужен заметный, то например ▼
( ALT down + 3 + 1 + ALT up )
Но это всё я просто так говорю, ты - автор темы, ты - проделал большую работу.
Безоговорочно соглашаюсь с любым твоим выбором.
okkamas_knife, а зачем изменил мой дефолтный Указатель курсора ? :O
Чем тебе показался плох символ "`", тот, что на клавише Ё :whistle:
Нет, вот сейчас, пока писал, придумал вариант:
что-бы оставить эту клавишу для монопольного хоткея какой-нибудь кнопки :)
Угадал ?
okkamas_knife, поздравляю :beer:
okkamas_knife, вот никак не могу прийти в себя от созерцания красот и глубин
кода Infocatcher'а. Осознал лишь самую малую часть. Потенциал кода безграничен.
Попробовал на его основе, только в качестве эксперимента, сделать что-то ещё.
Подопытная тема - сокрытие в окне CB-редактора поля "URL кнопки"
( имхо, только зря занимает драгоценное место )
Кнопка, конечно, не для практического использования, но лишь повод для размышления.
Надо-ли скрывать... Само место - там, внизу, ведь теоретически туда можно множно
много разных плюшек запихать, вплоть до кнопки cbEditorToggleOnTop.
Только вот пока никак не соображу как сослаться на spacer правильно,
а не просто как на второго children'а
( но с этим у меня всегда не все DOM'a )
[code]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%3EShow/hide%20URL%20field%20in%20CBEditor%3C/name%
…Infocatcher, ф а н т а с т и к а !!!
okkamas_knife, ух-ты ! весёлая кнопка, спасибо тебе и Автору.
Жаль, что она не подавляет эти два навязчивых окошка,
зато пробежал глазами 77 свойств объекта cbs, мало что понял,
но всё равно было очень интересно, и сам код наверняка ещё пригодится.
okkamas_knife, всегда пожалуйста :), пока отдыхаю, но
Вот вытащил из старых разработок кнопку.
Что делает ? Да ничего особенного, мне всего лишь слегка
облегчает процесс вытаскивания свежедобавленной CB-кнопки.
Итак, по клику:
Открывает окошко "Настройка панелей инструментов"
Делает его меньше и помещает куда-то в центр
Скрывает почти всё лишшнее, оставляет последний элемент
( до перезапуска браузера это как раз и будет добавленная кнопка )
Всё, бери и тащи.
Хотел сделать дополнительный автоматический режим,
но жестоко обломался,
похоже что когда появляется commonDialog "Кнопка была успешно создана. Вы можете... "
все CB-скрипты останавливаются как загипнотизированные
и сделать уже ничего нельзя :(
[code]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%3ELapka%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAA
…okkamas_knife, поверхностный взгляд на свежую Make icons line :
В сформированном в буфере тексте поста встречается:
{spoiler}{code}data:image/data:image/x-icon;base64,AAABAAEAE....
то есть "data:image/" идёт дважды.
Предлагаю:
okkamas_knife, :D ну конечно ты прав !!! :beer:
Объясню истоки своего идиотизма:
Скрипты-то выключены, все эти кнопки для меня бесполезны,
глаз скользит мимо них и не замечает.
Потом вдруг дошло, но поздно - глупость сморожена :dumb: :D
Новый вариант кнопки посмотрю, чуть погодя...
и кстати раздвинуть можно проще - добавив пробел между закрывающей скобкой и новым тэгом img.
Подозреваю что нет, то есть превьюшка будет нормальная, а вот созданный png-файл будет обрезан
по собственному алгоритму и часть иконок пропадёт.
Это я так, в качестве тренировки познания кодинга... :)
okkamas_knife, посмотрел немного кнопку Make icons line - понравилась.
Пока глюков не заметил, ну разве что - у меня после её использования
в окне браузера, в самом низу, появляется узенькая (1px) полосочка со всякой ерундой
и разрастается ещё по пикселю с каждым новым кликом по кнопке.
Из субъективных мелочей: себе что-то захотелось иконки чуток раздвинуть.
Визуальная разница:
const fiveAlphaPixels = "data:image/x-icon;base64,AAABAAEABQEAAAEAIABAAAAAFgAAACgAAAAFAAAAAgAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPjgrEE="; var datahtm = datahtm + arrayOfStrings[i] + "><img src=" + fiveAlphaPixels + "><img src=data:image/";
Не знаю стоит ли обдумывать фичу, чтобы кнопка ещё и переписала
буфер обмена, в смысле сама расставила нужные BBCode-теги, или чего ещё...
(да, кстати, какой тег для спойлера ?)
(UPD: :dumb: del UPD)
…okkamas_knife, вот захотелось, чтобы при открытии кнопки
через Редактировать во вкладке... , в адресной строке и во вкладке отображалась
иконка самой редактируемой кнопки. Оказалось, достаточно заменить
iconLink.href = "chrome://custombuttons-context/content/icons/default/custombuttonsEditor.ico";
на iconLink.href = rawParam.image;
Как думаешь - хорошая идея ? ( себе-то точно так оставлю )
Нет, ну ты представляешь, что значит чайник-тугодум, чтобы это сделать
у Infocatcher'а ушло бы полторы минуты, а я ломал голову несколько часов.
Да, и как там CustomPaste, работает ?
Infocatcher, очередное наблюдение:
Запускаю Firefox 3.6.28, после старта - только одна пустая вкладка (Без имени)
Открываю кнопку через Редактировать во вкладке...
Ничего не делаю - сразу закрываю эту вкладку
и тут закрывается весь Firefox
Если сделать тоже самое, но при двух открытых сначала пустых вкладках
то вкладка с кнопкой закрывается нормально
но эти две и некоторые из открытых после уже не закрыть
okkamas_knife, да-да, попытался доделать олдскульную версию, проверяй.
Там, в начале кода, this.allowChecked и allowSelection у меня стоит false ,
но для себя, конечно, измени на true :)
В каком виде выкладывать, если всё работает, - решай сам.
Для работы с режимом установки курсора ничего менять не надо - он просто есть.
Во всяком случае задуман, напомню идею:
Если в тексте вставки присутствует специальный символ (или несколько подряд),
который задается в коде кнопки в константе cursorIndex,
то, после вставки, курсор будет помещён в эту позицию, выделение вставленного
при этом, естественно, не происходит. Кому это понадобиться - тот поставит.
Если Указатель курсора отсутствует, не поставлен, значит в этой конкретной вставке не нужен,
и выделение вставленного целиком зависит от значения константы allowSelection
Но это всё теория, может ещё и не работает, вобщем погляди...
[code]custombutton://%3C%3Fxml%20version%3D%221.0
…Infocatcher, всего лишь наблюдение:
Firefox 10.0, открываю кнопку через Edit button in tab
Что-то печатаю
Жму "Отмена"
Появляется окошко "Код кнопки был изменен. Сохранить сделанные изменения?"
Жму "Не сохранять"
И тут оно появляется снова
Со второй попытки нажать "Не сохранять" наконец закрывается.
okkamas_knife, начнём с малого, попробовал доделать CustomIcons for CBE.
Проверь. ( это всё я делал до того, как прочёл пост Infocatcher'а, там скорее
похоже на первый вариант с полной корзиной отслеживания лишних событий,
альтернативный вариант сложен для меня...)
да, и [11 141] - я в шоке :O
[code]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%3ECustomIcons%20for%20CBE%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACPjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+PjxH/j48R/4+PEf+Pj
…okkamas_knife, глянуть то гляну, но ты же помнишь - moz'г... :)
Насчёт отдельной темы - полностью поддерживаю,
если осилишь - это будет круто!
[часто кнопкой удобнее чем лезть в закладки] - это да,
просто лично для меня нет понятия "лезть в закладки".
Все закладки на панели, в папочках, и больше нигде с ними не встречаюсь.
Infocatcher, спасибо за ссылки, действительно
вторая консоль хороша, и конечно спасибо за код
открытия CB-редактора во вкладке - высший пилотаж!
И не слушай okkamas_knife, любое обоснованное улучшение полезно.
seven.ap, действительно, надо писать подробнее.
Однако, исходя из твоего скудного описания, рискну предположить:
Описанный тобой симптом может наблюдаться если ты вводишь
свой адрес в окне CustomButtons-редактора в поле URL кнопки: ,
чего делать не следует. Нужно править текст во вкладке Код (C) .
Имхо, не проще ли сделать обычную закладку ?
okkamas_knife, Отлично, очень познавательно, забрал 3.6.28,
настроил как ты сказал, всё работает, спасибо :beer:
Только консоль ошибок там какая-то молчаливая, может поделишься
своим опытом в отладке, что используешь ?
набиваем либо в код кнопки или в справку вобщем неважно куда кучу иконок в base64 и они должны появляться в списке выбора иконки для кнопки, там где сейчас жалкие 5 звёздочек. это удобно не лазать каждый раз по винту в поисках подходящей иконки.
У меня там ещё меньше - всего 4 звёздочки. Но это дело мы постараемся исправить.
Вот кнопка ( если надоели звёздочки - переключи custombutton.CustomIconsForCBEditor[all].hideStandardIcons )
[code]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%3ECustomIcons%20for%20CBE%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEA
…okkamas_knife, ну сам редактор открыть во вкладке я не смог,
но попробовал сделать через посредника, то есть во вкладке открывается
пустой экземпляр для работы, а он уже передаёт изменения собственно редактору,
который тоже открыт, но свёрнут. Осторожно! Не тестируй на важных кнопках.
Ну и конечно CustomPaste там не действует (пока?)
Вот она - альфа-болванка:
(UPD: Вот незадача, сейчас проверил: десятый firefox - нормально, palemoon 9.2 - не работает :usch:
Похоже история повторяется. Ты скажи точно на каком фоксе ты тестируешь кнопки.
Я себе такой-же заведу, и буду ещё и на нём проверять. )
[code]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%3EcbeTabMediator%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/x-icon%3Bbase64%2CAAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABhYcn
…okkamas_knife, OK, ты прав, не стоит, сочтём за неудачный эксперимент и забудем :)
Относительно указателя курсора думал так: иногда после операции вставки было бы
полезно, чтобы курсор сразу стоял где-то в нужном месте посередине кода.
Простейший пример - alert, допустим указатель это § , тогда в коде пишем
alert("§"); и тогда сразу после вставки курсорчик уже стоит-мигает между кавычек.
Хотя возможно это тоже бесполезная фича ...
Насчёт предложеных тобой тем, попробую подумать, но уверен что сломаю себе -moz'г ,
я ведь едва-ли на один процент больше, чем абсолютный чайник :D
okkamas_knife, задумал сделать дополнительный режим, чтобы
кнопки раскрывали свои менюшки при наведении мыши,
переписал всё заново, на Firefox 10.0 у меня вроде работает,
а вот на Palemoon 9.2 - уже глючит :( это подозрительно...
Ну, переключается - там внизу кнопка с мышкой,
ещё отменено выделение, если указана позиция курсора.
Вобщем посмотри.
Упс ! [ Сообщение не может быть длиннее 65535 символов ... ]
не знаю что делать, в кнопке набралось 82 590,
положу пока здесь