Не удержался - решил выложить, удалось заменить стандартный диалог поиска на вызов панельки, в отличие от оригинала она по Ctrl+F умеет прятаться. На радостях поднял номер версии...
Findbar 0.0.2
(локали пока две, но как закончу с поиском - добавлю для всех языков.)
Непослушные локоны горничной выбивались из-под её кружевного фартука...
Отсутствует
Нужна помощь с nsITypeAheadFind, буду рад любой информации, особенно примерам использования... Удалось найти только описание на xulplanet.com.
Непослушные локоны горничной выбивались из-под её кружевного фартука...
Отсутствует
ViRUS
Встречаем. Версия 0.0.1
Ща встретим.)))
дикая альфа
Чёт боязно, хоть не кусается?
вдруг где grippy вылезет
Если нельзя будет свернуть панель щелчком по панели (по этому самому гриппу)), то это будет не в духе Мозиллы-Симанки. Нет, дело хозяйское, конечно, но не удивляйся, если кого-то будет раздражать.
описанный Вами метод
Обидился?
Нашёл это в AiOS.
Находчивый!
Findbar 0.0.2
Не успеешь качнуть одно как тут же не успеешь другое.
Отсутствует
Нужна помощь с nsITypeAheadFind, буду рад любой информации, особенно примерам использования... Удалось найти только описание на xulplanet.com.
Поэксперементировал в Extension Developer на FF. Вот результаты:
1. Создаём экземпляр объекта
var taf = Components. classes ["@mozilla.org/typeaheadfind;1"]. createInstance (Components. interfaces. nsITypeAheadFind);
2. Инициализируем его свойством docShell браузера (я использовал дополнительный код)
function getTopWin () { var windowManager = Components. classes ['@mozilla.org/appshell/window-mediator;1']. getService(); var windowManagerInterface = windowManager. QueryInterface (Components. interfaces. nsIWindowMediator); var topWindowOfType = windowManagerInterface. getMostRecentWindow ("navigator:browser"); if (topWindowOfType) { return topWindowOfType; } return null; } var b = getTopWin (). getBrowser (); var ds = b. docShell. QueryInterface (Components. interfaces. nsIDocShell); taf. init (ds);
3. Устанавливаем значение свойства caseSensitive
4. Ищем первое вхождение
Первый аргумент метода find - искомая строка, второй указывает на необходимость поиска только в ссылках (если равен true). Метод возвращает одно из трёх значений:
Components. interfaces. nsITypeAheadFind. FIND_FOUND = 0 Components. interfaces. nsITypeAheadFind. FIND_NOTFOUND = 1 Components. interfaces. nsITypeAheadFind. FIND_WRAPPED = 2
0 - найдено, 1 - не найдено, 2 - найдено в ссылке
Найденный текст выделяется.
5. Ищем следующее вхождение
Метод findNext возвращает те же значения, что и метод find.
С методом setDocShell не разобрался.
Отредактировано Anton (04-02-2006 19:21:40)
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
М-да. Альфа действительно дикая. Хозяина не слушается.
Найти следующее/предыдущее не работает.
Подсветка работает криво - старая подсветка не отрубается при вводе нового слова.
Жду более ручных версий.
Отредактировано INFOMAN (04-02-2006 21:37:27)
Закрой кран
Включи свет ©
Fire! Kill IE is your desire | NULL | NULL
Отсутствует
Попробовал поставить 0.0.2 и что-то не вижу панели.
По логу ошибок нет.
В меню ничего не вижу нового, а должно.
findbar.jar лежит в chrome профиля.
Может быть из-за др расширений?
SM английская.
При поиске по мере набора панель не появляется.
В доминспекторе он есть выше статуса.
Открыл findbar.jar
выкинул hidden="true"
панель появилась
не ищет
срабатывает только highlight all - когда кнопка нажата, а потом отжата
match case срабатывает
ещё срабатывает кнопка закрыть.))
Отсутствует
У меня по ctrl+F появлялась
Закрой кран
Включи свет ©
Fire! Kill IE is your desire | NULL | NULL
Отсутствует
ViRUS
Есть такое замечание по коду
А не проще ли "перекрыть" оверлеем стандартные команды поиска
<command id="Browser:Find" oncommand="showFindBar();"/> <command id="Browser:FindAgain" oncommand="findNext();"/> <command id="Browser:FindPrev" oncommand="findPrev();"/>
и обойтись в этом случае одним оверлеем ?
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Anton
это моё первое расширение, на нем я собственно и учусь. Оверлея два потому, что один перекрывает интерфейс, а другой именно команды поиска... За примеры спасибо - разбираюсь...
Непослушные локоны горничной выбивались из-под её кружевного фартука...
Отсутствует
...Оверлея два потому, что один перекрывает интерфейс, а другой именно команды поиска...
Суть моего замечания не в количестве оверлеев. При нажатии Ctrl+F элемент
выполняет команду
Поэтому можно перекрыть или
или соответствующие команды, тогда не надо указывать лишние key и command.
Мне больше нравится вариант с перекрытием command, т. к. в этом случае мне не пришлось иметь дело с атрибутами keyCode и modifiers.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует