rsuan пишет:
Нужна кнопка Qick bookmarks для новых версий FF. Или, может быть, посоветуете её замену?
Вот похожая кнопка: Session Bookmarks 0.2.0 (2013-01-26)
Отредактировано bunda1 (26-08-2013 18:51:46)
Отсутствует
bunda1
нашел твой код, использующий нажатие ЛКМ с задержкой, но толком не могу разобраться, как его под себя приспособить...
Подскажите, как долгим нажатием ЛКМ на пустом месте страницы переключать в fullscreen и обратно?
Именно на пустом, чтобы случайно не срабатывало, если задержать ЛКМ на какой-либо ссылке, либо при её перетаскивании.
вот с этим сможешь помочь?
Отсутствует
вот с этим сможешь помочь?
Сейчас попробую.
Добавлено 26-08-2013 21:48:17
function toggleFullScreen(e) { // LOG( e.originalTarget.localName ); if ( e.button > 0 || ["a", "img"].indexOf( e.originalTarget.localName ) !== -1 ) return if ( e.type == 'mousedown' ) { this.flag = false; this.fullScreenTimer = setTimeout(function(_this) { _this.flag = true; BrowserFullScreen(); }, 500, this ); } if ( e.type == 'mouseup' && !this.flag ) window.clearTimeout( this.fullScreenTimer ); }; addEventListener('mouseup', toggleFullScreen, false, gBrowser ); addEventListener('mousedown', toggleFullScreen, false, gBrowser );
Если надо узнать на что нажимаешь используй LOG( e.originalTarget.localName );
Отредактировано bunda1 (26-08-2013 21:48:17)
Отсутствует
bunda1
Почти идеально!
Присутствует ложное срабатывание при попытке выделить текст. Избавиться получится?
Еще заметил, если выделил текст и тяну его в сторону для поиска, то тоже происходит ложное срабатывание.
Отредактировано Inko7 (26-08-2013 22:28:03)
Отсутствует
bunda1
Почти идеально!
Присутствует ложное срабатывание при попытке выделить текст. Избавиться получится?
function toggleFullScreen(e) { //LOG( e.originalTarget.localName ); if ( e.button > 0 || ["a", "img"].indexOf( e.originalTarget.localName ) !== -1 ) return if ( e.type == 'mousedown' ) { this.flag = false; this.fullScreenTimer = setTimeout(function(_this) { _this.flag = true; if ( document.commandDispatcher.focusedWindow.getSelection().toString() !== '' ) return; BrowserFullScreen(); }, 500, this ); } if ( e.type == 'mouseup' && !this.flag ) window.clearTimeout( this.fullScreenTimer ); }; addEventListener('mouseup', toggleFullScreen, false, gBrowser ); addEventListener('mousedown', toggleFullScreen, false, gBrowser );
Отсутствует
bunda1
Замечательно! Спасибо.
Если надо узнать на что нажимаешь используй LOG( e.originalTarget.localName );
а где потом это смотреть?
просто сейчас остались срабатывания при перетягивании ссылок в поисковиках yandex и google
и еще срабатывает при выделении текста в окнах ввода
Отсутствует
а где потом это смотреть?
и еще срабатывает при выделении текста в окнах ввода
Смотреть в консоли ошибок, там где сообщения
И потом добавлять в if ( e.button > 0 || ["a", "img", "em"].indexOf( e.originalTarget.localName ) !== -1 ) return
function toggleFullScreen(e) { // LOG( e.originalTarget.localName ); if ( e.button > 0 || ["a", "img", "em"].indexOf( e.originalTarget.localName ) !== -1 ) return if ( e.type == 'mousedown' ) { this.flag = false; this.fullScreenTimer = setTimeout(function(_this) { _this.flag = true; var sel = document.commandDispatcher.focusedWindow.getSelection().toString(); if ( sel == '' ) { var theBox = document.commandDispatcher.focusedElement; if ( theBox && (theBox.type == "text" || theBox.type == "textarea") ) { var startPos = theBox.selectionStart; var endPos = theBox.selectionEnd; var sel = theBox.value.substring(startPos, endPos); } } if ( sel !== '' ) return; BrowserFullScreen(); }, 500, this ); } if ( e.type == 'mouseup' && !this.flag ) window.clearTimeout( this.fullScreenTimer ); }; addEventListener('mouseup', toggleFullScreen, false, gBrowser ); addEventListener('mousedown', toggleFullScreen, false, gBrowser );
Отсутствует
Смотреть в консоли ошибок, там где сообщения
Да, спасибо, уже догадался
Сейчас отлично, только очень редко всё ещё ложно срабатывает при попытке двойным кликом выделять текст. Целенаправленно повторить это не могу, а вот по ходу работы само как-то получается
Отсутствует
Inko7
"thumb" на скролбарах, а вы где нибудь ещё что выловили.
okkamas_knife
Спасибо за развернутый ответ, но чтобы что то делать нужно понимать что делаешь, знать что за что отвечает, какое действие выполняет, а не на авось подставлять что то куда то, а у меня с этим как у блондинки. Пыжился несколько раз разобраться, но уже на второй строчке запутываюсь, ну не дается мне сея наука.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
bunda1
только очень редко всё ещё ложно срабатывает при попытке двойным кликом выделять текст. Целенаправленно повторить это не могу, а вот по ходу работы само как-то получается
Блин, не знаю как так получается, но при попытке выделения как-то переключается.
Чаще срабатывает с двойного клика (чтоб по словам выделять), реже просто зажать кнопку и перетягивать. Специально повторить по прежнему не получается. Потихоньку начинает раздражать...
Может как-то можно доработать определение выделения текста или вставить отслеживание перемещения мыши?
Отредактировано Inko7 (27-08-2013 13:23:03)
Отсутствует
Inko7
Может что мешает, у мене не даблкликом, не выделением, не перетаскиванием, тьфу-тьфу не срабатывает, стоит 500мс.
okkamas_knife
//код вставлять сюда - где их брать под каждое действие?
"вверху кода несколько функций обработки при разных местах нажатия"
тоже не пойму откуда это брать, в сниппетах искать? и ещё наверное время как-то нужно прикрутить.
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
okkamas_knife
и как?
т.к. 1300 установил с самого начала, то и описываю текущую ситуацию
villa7
Может что мешает
а что может мешать? даже и не знаю на что грешить...
повторюсь, срабатывание происходит редко, на любых сайтах, при попытке выделить текст страницы
в принципе с этим можно жить
буду тестить, если пойму отчего глюк, отпишусь
Добавлено:
вроде научился повторять этот глюк:
двойным кликом выделяю пару слов, затем сразу жму на выделенном тексте и тяну в сторону для поиска
в результате открывается новая активная вкладка с результатами и браузер переходит в полный экран
Отредактировано Inko7 (27-08-2013 15:45:37)
Отсутствует
перестали работать некоторые кнопки, но проблема в том, что изуродовавшиеся кнопки не знаю как удалить. при ПКМ открывается меню , а не кнопки. их теперь только в неиспользуемые элементы можно перетащить?
Отредактировано vitalii201 (27-08-2013 18:20:43)
Отсутствует
перестали работать некоторые кнопки, но проблема в том, что изуродовавшиеся кнопки не знаю как удалить. при ПКМ открывается меню , а не кнопки. их теперь только в неиспользуемые элементы можно перетащить?
Отключи инициализацию кнопок в настройках Custom Buttons + рестарт и тогда попробуй удалить. Может ты используешь устаревшую версию Custom Buttons. Версия custombuttons-0.0.5.6pre5 даёт возможность удалить кнопки в вкладке расширений.
Отсутствует
villa7, Inko7, bunda1 вот оно чё: Custom Buttons не обновился, с какого-то перепрыга, до 0.0.5.6 было ... .5 (в отличии от других, нормально обновляющихся расширений). сейчас работает. спасибо!
Отредактировано vitalii201 (27-08-2013 19:50:36)
Отсутствует
вроде научился повторять этот глюк:
двойным кликом выделяю пару слов, затем сразу жму на выделенном тексте и тяну в сторону для поиска
в результате открывается новая активная вкладка с результатами и браузер переходит в полный экран
Не потверждаю, без проблем двойным кликом выделял текст и перетягивал для поиска. Попробуй:
function handleLongPress(e) { // LOG( e.originalTarget.localName ); if ( e.button > 0 ) return if ( e.type == 'mousedown' && ["a", "b", "img", "em", "span", "slider", "thumb", "scrollbarbutton"].indexOf( e.originalTarget.localName ) == -1 ) { arguments.callee.timerLongPress = setTimeout(function() { var sel = document.commandDispatcher.focusedWindow.getSelection().toString(); if ( sel == '' ) { var theBox = document.commandDispatcher.focusedElement; if ( theBox && (theBox.type == "text" || theBox.type == "textarea") ) { var startPos = theBox.selectionStart; var endPos = theBox.selectionEnd; var sel = theBox.value.substring(startPos, endPos); } } if ( sel !== '' ) return; BrowserFullScreen(); }, 500 ); } if ( e.type == 'mouseup' ) window.clearTimeout( arguments.callee.timerLongPress ); }; addEventListener('mouseup', handleLongPress, false, gBrowser ); addEventListener('mousedown', handleLongPress, false, gBrowser );
Отредактировано bunda1 (27-08-2013 20:01:24)
Отсутствует
bunda1
с последним вариантом то же самое
проблема есть в 3-х разах из 5
Отсутствует
Видимо, https://forum.mozilla-russia.org/viewtopic.php?id=58643
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует