Новые замечания (тестировался только режим с отображением в строке состояния).
1. «Стандартный» режим боковой панели.
Есть такое, исправил.
2. Столбцы в боковой панели.
tooltip'ы замирают и не исчезают, пока не наведешь на них курсор (или не всплывет стандартная подсказка на URL).
Это не совсем верное утверждение.
Строки не выделяются
Это - к статусу. Тоже исправил.
И, я думаю, удобнее будет показывать в tooltip'е еще и URL – не только название.
По-моему - лишнее.
Да, и статус отваливается напрочь – ничего не показывается.
Это тоже не совсем верное утверждение - в первой части. По-моему, статус в multicolumn - лишнее, но сделал на всякий случай.
3. Панель закладок.
about:blank (пусто) – получаем about:neterror («Готово») – уходим с закладки (статус сбрасывается) – жмем на file-закладку – получаем file:///... в статусе. *здесь должен быть сильно удивленный смайлик*
Не смог воспроизвести.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
По-моему, статус в multicolumn - лишнее, но сделал на всякий случай.
Ну, в крайнем случае, можно сделать настройку для выбора.
По-моему - лишнее.
Если учесть, что мне не нравится даблклик, то мне, честно говоря, все равно. Но, по-моему, можно использовать multicolumn только для добавления даблклика (и оставить только один столбец) – вот тут URL в подсказке и окажется очень кстати (можно сделать опционально). (Кстати, надо про двойной клик в настройках написать – чтоб у пользователей неожиданностей не возникало – см. последнюю версию, которую я выкладывал.)
Не смог воспроизвести.
Уже не важно – теперь и я не могу воспроизвести (на новой версии).
P. S. Пока все работает. Завтра посмотрю еще – попробую всевозможные варианты издевательств над закладками
P. P. S. Пара отвлеченных вопросов на тему закладок.
Есть вот такой CSS (в userChrome.css):
/* Полоса прокрутки для слишком длинных списков закладок */ menupopup[contextmenu="bookmarks-context-menu"] autorepeatbutton { display: none !important; } menupopup[contextmenu="bookmarks-context-menu"] scrollbox { overflow-y: auto !important; } menupopup[contextmenu="bookmarks-context-menu"] { max-height: 300px !important; width: 295px !important; } #menu_BookmarksPopup { max-height: 350px !important; } /* Показываем панель закладок только при наведении курсора на панели инструментов */ /* При дрегендропе событие hover не срабатывает... */ #PersonalToolbar { display: none; } #navigator-toolbox:hover > #PersonalToolbar { display: -moz-box; }
То, что в главном меню "Закладки" не работает скроллбар (пытается что-то перетащить – как при дрегендропе закладок) – баг, или это только у меня так?
И аналогичный вопрос с hover, панелью закладок и перетаскиванием вкладок не нее.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
По-моему, статус в multicolumn - лишнее, но сделал на всякий случай.
Ну, в крайнем случае, можно сделать настройку для выбора.
Делай.
Если учесть, что мне не нравится даблклик
На то он и multicolumn, что можно выбрать содержание отображаемых полей. Нужен url - выбери его отображение. Если какое-то поле не вмещается в сайдбар - будет отображено в всплывающей подсказке.
можно использовать multicolumn только для добавления даблклика
Я, наверное, чего-то не понимаю. По-моему - чушь. Чтобы сделать открытие закладок по двойному клику надо сделать bookmarks-tree многостолбцовым и убрать все столбцы ? Не проще скопировать ondblclick в onclick ?
(можно сделать опционально). (Кстати, надо про двойной клик в настройках написать – чтоб у пользователей неожиданностей не возникало – см. последнюю версию, которую я выкладывал.)
Делай. У меня в планах нет поддержки/развития bookmarkstooltips-0.[1/2/3].0, делал исключительно в иллюстративных целях.
P. P. S. Пара отвлеченных вопросов на тему закладок....в главном меню "Закладки" не работает скроллбар...
Меню "Закладки" отлавливает drag*-события от скроллбара. Если запретить "всплытие" события draggesture от скроллбара к меню "Закладки" - будет работать. Например, "пришить" к #menu_BookmarksPopup http://pastebin.mozilla-russia.org/89791
И аналогичный вопрос с hover, панелью закладок и перетаскиванием вкладок не нее.
То же самое, только другие события, наверняка.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Не проще скопировать ondblclick в onclick ?
Хм... Почему-то наблюдаю [on/dbl]click (сами атрибуты) только при открытии chrome://browser/content/bookmarks/bookmarksPanel.xul во вкладке... А в сайдбаре – нет.
делал исключительно в иллюстративных целях.
Тогда у тебя весьма интересное представления о иллюстрациях (на дальнейшее и предшествующее просьба не обижаться). [Особенно когда иллюстрация подозрительно сильно смахивает на вполне готовое расширение.] Что-то навроде: я так могу, а ты – нет (А теперь я умываю руки)
Сложность в том, что я не знаком с некоторыми методами...
Например,
function bmTooltipsIndicator ...
bmTooltipsIndicator. prototype = ...
pref. addObserver ...
И что дает window. addEventListener ("unload" ... ? (если точнее, то для чего; и где зарыты польза с эффектом)
Т.е. до тех пор, пока я не пойму, что зачем в иллюстрации, мне она не очень-то полезна Все-таки разъяснение отдельных моментов и уже готовое решение – две большие разницы, как говорится.
Если запретить "всплытие" события draggesture от скроллбара к меню "Закладки" - будет работать.
Ага, ясно. Спасибо!
P. S. Если можно, то еще один вопрос (после черты).
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Конфликтует с AiOS.
В боковой панели или совсем не показывает tooltiptext, или (если хоть один из btTooltip'ов уже показывался) заголовок самой верхней закладки:
Добавлено Вск 29 Июл 2007 01:12:07 :
Ставим отображение в строке состояния. Уходим в оффлайн.
Ctrl+T (у меня грузится пустая страница) - кликаем по закладке на панели закладок, которой нет в кэше (about:neterror + "Готово" в статусе)
И для панели закладок теперь ничего не отображается в статусе.
Это фича такая или все-таки нет?
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Не проще скопировать ondblclick в onclick ?
Хм... Почему-то наблюдаю [on/dbl]click (сами атрибуты) только при открытии chrome://browser/content/bookmarks/bookmarksPanel.xul во вкладке... А в сайдбаре – нет.
Я не знаю, почему ты их у себя не видишь. Даже если не видишь, проверь копи-паст из того что видишь, в программу.
делал исключительно в иллюстративных целях.
Именно в иллюстративных. Именно, это касалось вопроса об архитектурной оптимизации. Оптимизации там чуть больше нуля, исключительно для иллюстрации. Именно - "оболочка" для единообразия в работе с элементами, использующимися для отображения URL закладок.
Заодним подкинул несколько готовых технических решений: "вдруг, человек заинтересуется".
...Что-то навроде: я так могу, а ты – нет...
А ещё читать, искать, экспериментировать, стараться держаться в рамках темы и правил форума.
...интересное представления о иллюстрациях
Не знал, что есть стандарт на иллюстрации. Хорошо, изложи как по-твоему должно выглядеть общение в этой теме, я попробую двигаться в этом русле, хотя и не обещаю.
Сложность в том, что я не знаком с некоторыми методами...
Сложность не в этом. Как там у Горького, "Когда много спрашивают..."
Например,
function bmTooltipsIndicator ...
bmTooltipsIndicator. prototype = ...
Конструкция вида
Задаёт шаблон для создания однотипных объектов. Объекты затем можно создавать с помощью оператора new:
При создании объекта будет выполнятся функция x.
Подробнее:
http://www.konus.biz/books/DHTML/Справо … .htm#ref37,
http://experiment.net.ru/js2/?f=obj.htm,
http://experiment.net.ru/js2/?f=obj2.htm,
http://dklab.ru/chicken/nablas/39.html,
http://dklab.ru/chicken/nablas/40.html,
http://experiment.net.ru/js1/?f=function.htm
pref. addObserver ...
Ставит observer на изменение preferences. При изменении в соответствующей ветви preferences будет вызываться метод observe.
И что дает window. addEventListener...
Ставит обработчик на выгрузку элемента <window>. В обработчике снимается observer и обнуляется ссылка на indicator для исключения утечек памяти.
мне она не очень-то полезна
Ну, это и без пояснений давно понятно.
Все-таки разъяснение отдельных моментов и уже готовое решение – две большие разницы, как говорится.
Верно. Но и применяются они в разных терапевтических целях.
P. S. Если можно, то еще один вопрос (после черты).
Нельзя. Во-первых - оффтопик. Создай новую тему и во-вторых опиши подробней. Из текста вопроса не совсем понятно, что там за проблема, ставить эксперименты для выяснения лень.
Конфликтует с AiOS.
Не подтверждаю. (у меня нет AiOS Поставил, но воспроизвести не сумел).
Это фича такая или все-таки нет?
Фича. Исправил: http://forum.mozilla-russia.org/uploade … -0.4.0.xpi
Отредактировано Anton (29-07-2007 04:25:31)
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Заодним подкинул несколько готовых технических решений: "вдруг, человек заинтересуется".
Скажем так, если бы человек не заинтересовался, он навряд ли появился бы в этом разделе этого форума.
стараться держаться в рамках темы и правил форума
Еще раз повторюсь: если обидел – извини.
Хорошо, изложи как по-твоему должно выглядеть общение в этой теме
Не надо язвить и придираться к словам (все равно мы их понимаем несколько по-разному).
для исключения утечек памяти.
Вот, это я и хотел понять (что делается я еще понимал, зачем – нет). Тогда еще вопрос – для полного понимания картины. Утечки памяти – следствие каких-то ошибок неучтенных моментов в коде браузера (т. е. «по замыслу» все должно выгружаться само)? Или же «я тебы породил...» и далее по тексту?
Но и применяются они в разных терапевтических целях.
Не просветите пациента касательно диагноза?
Создай новую тему и во-вторых опиши подробней.
Тема уже есть – изменение ширины закладок. Дано: закладка на панели закладок с атрибутом crop="right" (определяется через binding). Цель: поставить ограничение на ширину закладок, но убрать многоточия, появляющиеся, если не весь текст влезает.
(Кстати говоря, текст в строке состояния – не есть всплывающая подсказка, а посему – тоже оффтопик. Если по логике. И вот этот текст – который в скобках – тоже, так что закроем эту тему.)
Не подтверждаю. (
у меня нет AiOSПоставил, но воспроизвести не сумел).
Странно... Попробую на новом профиле.
Исправил
И еще раз огромное спасибо за помощь.
P. S. Обобщая. Больше постараюсь больше не придираться к форме, в которой подается помощь. (мир-дружба-жвачка )
P. P. S. Пошел учить изучать матчасть.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Не надо язвить...
"Точнее: бесполезно."
Утечки памяти – следствие каких-то
ошибокнеучтенных моментов в коде браузера
Это архитектурный недостаток расширения.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
...AiOS Поставил, но воспроизвести не сумел
На новый профиль ставим Bookmarks Tooltips и AiOS 0.7.1.
В боковой панели наводим курсор на менюшку от AiOS (см. скриншот). Как я понял, если сразу (после переоткрытия-перезагрузки сайдбара) навести на AiOS-овский элемент, совсем ничего не всплывет. После того, как будет показан хоть один tooltip для папок / закладок, вместо всплывающего (который всплыл бы без Bookmarks Tooltips) tooltiptext'а будет подсказка для самого верхнего элемента («Расширения для работы с закладками»).
Удаляем Bookmarks Tooltips и видим правильную подсказку («Инструменты и параметры»).
id="viewButton" tooltiptext="Инструменты и параметры"
http://forum.mozilla-russia.org/uploade … bug.7z.xpi
Отредактировано Infocatcher (29-07-2007 21:30:40)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Ковыряюсь в 3.0a7...
Вот, что там обнаружилось:
fillInBTTooltip: function(aTipElement) { // Fx2XP: Don't show tooltips for bookmarks under sub-folders if (aTipElement.localName != "toolbarbutton") return false; /* и зачем они это сделали? */ // Fx2XP: Only show tooltips for URL items if (!PlacesUtils.nodeIsURI(aTipElement.node)) return false; var url = aTipElement.node.uri; if (!url) return false; var tooltipUrl = document.getElementById("btUrlText"); tooltipUrl.value = url; var title = aTipElement.label; var tooltipTitle = document.getElementById("btTitleText"); if (title && title != url) { tooltipTitle.hidden = false; tooltipTitle.value = title; } else tooltipTitle.hidden = true; // show tooltip return true; }
Полагаю, единственный способ это обойти (для подсказок не только на toolbarbutton'ах) – «повесить» на btTooltip обработчик onpopupshowing (атрибутом)...
А вопрос у меня такой – что будет, если по onpopupshowing будет выполняться измененная функция, например, такая:
// ...
var ln = aTipElement.localName;
if(ln != "toolbarbutton" && ln != "menuitem") // на папках можно действительно не показывать
return false;
// ...
В общем, будет ли от этого польза?..
И как, кстати, определить версию браузера изнутри расширения? Или только по extensions.lastAppVersion?
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Полагаю, единственный способ это обойти
Не единственный
что будет, если по onpopupshowing будет выполняться измененная функция
Поставь эксперимент. Но, имхо, лучше так не делать.
версию браузера
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Не единственный
Поставь эксперимент. Но, имхо, лучше так не делать.
Я и спросил потому, что сомневался в единственности способа. Эксперимент – это само собой. Но если у тебя есть мысль, как добиться нужного результата по-другому, может, все-таки ее изложишь?
P. S. Спасибо за код для определения версии!
P. P. S. В крайнем случае, конечно, можно полностью переписывать оригинальный атрибут onpopupshowing у btTooltip (и заменять fillInBTTooltip на измененную функцию)...
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
как добиться нужного результата по-другому
Так: http://pastebin.mozilla-russia.org/90003 например.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
А разве не проще тогда вот так:
http://pastebin.mozilla-russia.org/90006
Отредактировано Infocatcher (10-08-2007 20:30:51)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
а в боковой панели закладок firefox 2.0.0.11 это расширение должно работать?
хочется при наведении мыши видеть в статус-строке адрес.
а у меня там (в боковой панели закладок) только tooltip появляется, да и то, если только название закладки не помещается в панель (но это наверное и без данного расширения так).
Отредактировано topmo3 (07-12-2007 01:06:07)
Отсутствует
topmo3
а в боковой панели закладок firefox 2.0.0.11 это расширение должно работать?
Не должно. К сожалению...
С боковой панелью работают только версии от Anton'а:
http://forum.mozilla-russia.org/uploade … -0.4.0.xpi
Другое дело, что из-за некоторых особенностей оно не будет работать в Firefox 3.0b
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует