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

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№935117-01-2016 21:08:12

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

qazwsxe пишет

bunda1
Спасибо за помощь, но можно сделать чтобы по правой кнопке не вызывалось контекстное меню.

У меня по правой кнопке не вызывается контекстное меню с этим кодом Сегодня 18:51:37. Ты наверно его не в инициализацию положил.

Отсутствует

 

№935217-01-2016 22:42:14

qazwsxe
Участник
 
Группа: Members
Зарегистрирован: 17-01-2016
Сообщений: 8
UA: Firefox 38.0

Re: Custom Buttons

bunda1
Не, всё правильно сделал...
Там https://forum.mozilla-russia.org/viewto … 27#p704727 в коде же написано вызов по ПКМ BrowserOpenAddonsMgr и в tooltip

Выделить код

Код:

if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { // ПКМ
        e.preventDefault();
        BrowserOpenAddonsMgr();
        } 
};

this.tooltipText = "Л: Открыть панель Загрузки  \nС: CB Меню \nП: Открыть дополнения Firefox";

Отсутствует

 

№935317-01-2016 22:47:49

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

qazwsxe пишет

bunda1
Не, всё правильно сделал...
Там https://forum.mozilla-russia.org/viewto … 27#p704727 в коде же написано вызов по ПКМ BrowserOpenAddonsMgr и в tooltip

А как нужно?

Отсутствует

 

№935417-01-2016 23:18:33

qazwsxe
Участник
 
Группа: Members
Зарегистрирован: 17-01-2016
Сообщений: 8
UA: Firefox 38.0

Re: Custom Buttons

bunda1

А как нужно?

чтобы по правой кнопке не вызывалось контекстное меню.

Отсутствует

 

№935517-01-2016 23:30:45

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

qazwsxe
Похоже мы не понимаем друг друга!

Отсутствует

 

№935618-01-2016 00:41:03

qazwsxe
Участник
 
Группа: Members
Зарегистрирован: 17-01-2016
Сообщений: 8
UA: Firefox 38.0

Re: Custom Buttons

bunda1
Подскажите ещё... Как вызвать по ЛКМ "Недавно закрытые вкладки"

скрытый текст
2016-01-17_233629.png

Отсутствует

 

№935718-01-2016 01:30:13

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: Custom Buttons

Vitaliy V. пишет
difabor пишет

Между этими кнопками огромные интервалы. Как бы их уменьшить?

Стиль https://sites.google.com/site/serials10 … ll_buttons
Или одноимённое расширение https://sites.google.com/site/serials10 … extensions

xrun1 пишет

Код утащил отсюда.

Тот код для FF40+ и Win10, а у difabor судя по скрину версия FF ниже. А если UA не изменённый и вовсе Win 8.1 ...

Спасибо большое!
Работает, как доктор прописал!


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№935818-01-2016 01:39:44

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

qazwsxe пишет

bunda1
Подскажите ещё... Как вызвать по ЛКМ "Недавно закрытые вкладки"

[CB]Undo Close Tabs

Отсутствует

 

№935918-01-2016 03:34:22

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

Garider пишет

Подскажите пожалуйста, кнопка FF Exp Imp CB(Firefox) работает в линуксе? Или может какая другая кнопка есть? Если работает, как правильно указать путь для чтения/записи кнопок?
В home создана папка "FF Exp Imp CB": /home/garider/FF Exp Imp CB
Полный путь : dev/sda7/home/garider/FF Exp Imp CB
В самой кнопке по умолчанию так:
const cPathEI = "C:\\Custom Buttons\\Сохранение кнопок\\";
const csSetIET = "Каталог для Экспорта/Импорта кнопок в/из HTML";

"Лечится", кучей способов, а аналогичную кнопку кроме меня ни кто не делал, т.е. я не видел аналога ей.

1. Нажимаешь на СКМ и будет запрос пути - стандартный Widows — диалог выбора папки.
2. В переменной Export.Import.CB.type.HTML хранится путь

Выделить код

Код:

const cEICB = "Export.Import.CB.type.HTML"; // Желательно не трогать, т.к. старые кнопки будут считываться с ошибками

3. Можно поправить код для СКМ

скрытый текст

Выделить код

Код:

//*********************************************************************
//Установить каталог записи/чтения
function mbMouse(){
var sPathEI=Application.prefs.getValue(cEICB, 0), myfilename = GenFileName();
if (chkPath(sPathEI) == -1) {
              custombuttons. alertBox (csSetIET, "переменная   "+cEICB+" уже существует и занята")
              return; //Нельзя создавать тк переменная уже занята
              };
// Диалог создания и установки пути
var fp = Components.classes["@mozilla.org/filepicker;1"]
    .createInstance(Components.interfaces.nsIFilePicker);
fp.init(window, csSetIET, fp.modeGetFolder);
var dd = Components.classes["@mozilla.org/file/local;1"]
    .createInstance(Components.interfaces.nsILocalFile);
dd.initWithPath(sPathEI);
fp.displayDirectory = dd;
if(fp.show() == fp.returnCancel) return;
   else
    {
    sPathEI = fp.file.path
    Application.prefs.setValue(cEICB, sPathEI+=(sPathEI[sPathEI.length-1] != "\\")?"\\":"");
    custombuttons. alertBox (csSetIET, "Установлен путь для записи/чтения \n " + sPathEI);
    }
};


У меня переменная  Export.Import.CB.type.HTML равна F:\$Mozilla$\FireFox\Custom Buttons\

Ранее проблем не было, может путь не валидный?

P.S. Путь можно прописать и в ручную — путь берётся из стандартного диалога и  всё. Правда при ошибочном пути в Export.Import.CB.type.HTML был отказ, т.к. этот путь по умолчанию и вот если он не существует то скрипт потребует его переопределить... я по сути исправил все тонкие места в скрипте.

P.P.S.  Если будут ошибки пиши мне в ЛС.

Отредактировано Indomito (18-01-2016 19:59:55)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№936018-01-2016 12:48:55

oleg.sgh
Участник
 
Группа: Members
Зарегистрирован: 19-04-2014
Сообщений: 3157
UA: Firefox 43.0

Re: Custom Buttons

Хотелось бы кнопку  которая позволит закрыть все вкладки справа, не по нажатию на саму кнопку а двойным кликом ЛКМ на вкладке, после которой должны быть закрыты другие вкладки.

Отсутствует

 

№936118-01-2016 12:59:54

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

oleg.sgh пишет

Хотелось бы кнопку  которая позволит закрыть все вкладки справа, не по нажатию на саму кнопку а двойным кликом ЛКМ на вкладке, после которой должны быть закрыты другие вкладки.

Выделить код

Код:

addEventListener("dblclick", function(e) {
  if ( e.button == 0 && e.target.localName == "tab" ) {
       e.preventDefault();
       e.stopPropagation(); 
       gBrowser.removeTabsToTheEndFrom(gBrowser.mCurrentTab);
       };
}, true, gBrowser.mTabContainer);

Отсутствует

 

№936218-01-2016 13:08:24

oleg.sgh
Участник
 
Группа: Members
Зарегистрирован: 19-04-2014
Сообщений: 3157
UA: Firefox 43.0

Re: Custom Buttons

bunda1
Замечательно. Спасибо.

Отсутствует

 

№936318-01-2016 15:42:04

sonyas75
Участник
 
Группа: Members
Откуда: Ставрополь
Зарегистрирован: 22-03-2011
Сообщений: 557
UA: Firefox 38.0

Re: Custom Buttons

а длинным кликом по левой кнопке? что вставить вместо dblclick?

Отсутствует

 

№936418-01-2016 16:01:32

Kiril__777
Участник
 
Группа: Members
Зарегистрирован: 13-07-2009
Сообщений: 393
UA: Firefox 38.0

Re: Custom Buttons

bunda1

Создай новую кнопку, положи в вкладку код for (var br of gBrowser.browsers) br.stop();

Создал, вытащил на панель.

попробуй нажатием на эту новую кнопку остановить загрузку всех вкладок

Эта кнопка останавливает перезагрузку одной вкладки (все вкладки перезарузить не получается)

Если не получится значит проблема в for (var br of gBrowser.browsers) br.stop();

Получается остановить перезагрузку одной вкладки, что делать с этим кодом?
Спасибо!

Отсутствует

 

№936518-01-2016 20:51:04

pag77
Участник
 
Группа: Extensions
Зарегистрирован: 20-03-2012
Сообщений: 1657
UA: Firefox 43.0

Re: Custom Buttons

Тут авторы бывают? А вопрос про Nightly (46) уже задавали?
Проблема в том, что:
1. при запуске Nightly браузер "тупит" от 20 до 50 секунд (как повезет) и только потом показывает свои вкладки и т.д.
2. уже несколько дней в Nightly не работают CustomButtons-кнопки: не жмакаются и не открываются на редактирование.

авторы полностью забросили аддон или есть надежда на восстановление работоспособности?

PS: мультипроцессорность отключена. с ней CustomButtons уже месяца два не работает.

Отсутствует

 

№936618-01-2016 21:15:14

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

pag77 пишет

Тут авторы бывают?

Автор тут давно не показывался :/

pag77 пишет

2. уже несколько дней в Nightly не работают CustomButtons-кнопки: не жмакаются и не открываются на редактирование.

А это пробовал 09-10-2015 12:29:01

Отсутствует

 

№936718-01-2016 21:25:24

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

pag77 а зачем тебе авторы? Всё работает нормально, ну иногда они обновляют версию, т.е. когда требуется.


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№936818-01-2016 22:49:49

Dumby
Участник
 
Группа: Members
Зарегистрирован: 12-08-2012
Сообщений: 2249
UA: Firefox 38.0

Re: Custom Buttons

pag77 пишет

PS: мультипроцессорность отключена. с ней CustomButtons уже месяца два не работает.

Если не затруднит, распиши что именно при включённой мультипроцессности не работает.
Ну, кроме custombutton://-протокола (с контентских дел), разумеется.

Отредактировано Dumby (18-01-2016 23:00:23)

Отсутствует

 

№936918-01-2016 22:59:52

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

bunda1 Может кто-нибудь поможет в создании кнопки... :) Код простой, но как закрывать Настройка и Дополнения — я раньше делал, но в новой версии они не работают, т.е. давно уже не работают.


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№937018-01-2016 23:05:01

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: Custom Buttons

Indomito пишет

как закрывать Настройка и Дополнения — я раньше делал, но в новой версии они не работают, т.е. давно уже не работают.

Не понял, ты хочешь закрывать из кнопки страницы Настройка и Дополнения или что?

Добавлено 18-01-2016 23:18:35

Kiril__777 пишет

Эта кнопка останавливает перезагрузку одной вкладки (все вкладки перезарузить не получается)

scratch_one-s_head.gif так ты хочешь длинным кликом остановыть загрузку всех вкладок или перегрузить все вкладки?

Отредактировано bunda1 (18-01-2016 23:18:35)

Отсутствует

 

№937118-01-2016 23:46:44

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

bunda1 пишет

ты хочешь закрывать из кнопки страницы Настройка и Дополнения

Именно — сделать на закрытие Дополнений, если они открыты.

И ещё реализовать Обновление Дополнений через кнопку... все мои попытки это сделать работают не так как надо.

bunda1 Сейчас кнопка выглядит так(код старый, но работает)

Выделить код

Код:

/*Initialization Code*/

//Открыть установленные дополнения
function lbMouse(){
getBrowser (). selectedTab = getBrowser (). addTab ("about:addons"); 
};

//Проверить обновление дополнений
function mbMouse(){
};

//Открыть базу дополнений в интернете
function rbMouse(){
getBrowser (). selectedTab = getBrowser (). addTab ("https://addons.mozilla.org/ru/firefox/")
};


function BrowserOpenAddonsMgr(aPane)
{
  const EMTYPE = "Extension:Manager";
  var wm = Components.classes["@mozilla.org/appshell/window-mediator;1"]
                     .getService(Components.interfaces.nsIWindowMediator);
  var theEM = wm.getMostRecentWindow(EMTYPE);
  if (theEM) {
    theEM.focus();
    return theEM;
  }

  const EMURL = "chrome://mozapps/content/extensions/extensions.xul";
  const EMFEATURES = "chrome,menubar,extra-chrome,toolbar,dialog=no,resizable";
  return window.openDialog(EMURL, "", EMFEATURES);
};

this.tooltipText = "Left    => Установленные дополнения \nMiddle => \nRight   => Дополнения в интернете";
this.onclick = function(event) {
    if(event.button == 0) {
// Действие при клике ЛКМ
lbMouse();
    }
    else if(event.button == 1) {
        // Действие при клике СКМ
mbMouse();
    }
    else if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) {
        // Действие при клике ПКМ без модификаторов
rbMouse();
    }
};
this.oncontextmenu = function(event) {
    if(event.button == 2 && !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey) {
        // Блокируем контекстное меню при клике ПКМ без модификаторов
        event.preventDefault();
        event.stopPropagation();
    }
};

А вот как ЛКМ сделать на закрытие Дополнений, если они открыты, а СКМ задействовать на обновление Дополнений?

P.S. Раньше так и было, но с обновлением версий FF это не стало работать.

Отредактировано Indomito (19-01-2016 00:09:50)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№937219-01-2016 03:26:56

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: Custom Buttons

sonyas75 пишет

а длинным кликом по левой кнопке? что вставить вместо dblclick?

Может кто-то подскажет более простой способ, но я (по рабоче-крестьянски) знаю такой:

Выделить код

Код:

var tmousedown = [0,0,0]; //где-то в начале
//Ваш код...
addEventListener("mousedown", function(e) { //Фиксируется время нажатия любой кнопки ЛКМ - 0, СКМ - 1, ПКМ - 2.
   tmousedown[e.button] = Date.now();
}, true, gBrowser.mTabContainer);

addEventListener("click", function(e) {
  if ( e.button == 0 && e.target.localName == "tab" && (Date.now() - tmousedown[0] > 800)) {//800 - это 0.8 секунды, но можно выбрать и другой критерий "длинности"
       e.preventDefault();
       e.stopPropagation(); 
       gBrowser.removeTabsToTheEndFrom(gBrowser.mCurrentTab);
       };
}, true, gBrowser.mTabContainer);

В принципе так можно задать любой длинный клик, не только в gBrowser.mTabContainer).
Если есть операции по mouseup, которые надо подавить тоже, то надо также добавить:

Выделить код

Код:

addEventListener("mouseup", function(e) {
  if ( e.button == 0 && e.target.localName == "tab" && (Date.now() - tmousedown[0] > 800)) {
       e.preventDefault();
       e.stopPropagation(); 
       };
}, true, gBrowser.mTabContainer);

Отредактировано difabor (19-01-2016 03:31:28)


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№937319-01-2016 05:02:04

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

Как обойти ограничение в this.tooltipText для кода таймера, т.е. что бы менялся текст/число, а то выводить в MsgBox не то что лень, просто неудобно. А?
Можно и без таймера — главное менять this.tooltipText

Выделить код

Код:

// Начать повторы с интервалом 5 сек
var timerId = setInterval(
    rltDMSRT = Application.prefs.getValue(cDMSRT, 0)
, 5000);

this.tooltipText = 
    "          Текущеее значение   ═   " + rltDMSRT + "\n    ————————————————\n" +
    "Left               ―   По умолчанию  ═  10\n" + 
    "Right            ―   Своё значение(дилог)\n" +
    "Shift+Right  ―  Редактирование кнопки";
difabor пишет

Если есть операции по mouseup, которые надо подавить тоже, то надо также добавить:

и не забыть про модификаторы, а то долгое удержание, т.е. выше 800 вызовет контекстное меню.

Привет, кстати, я сюда давно не заходил.:)

Отредактировано Indomito (19-01-2016 05:19:44)


"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№937419-01-2016 05:46:31

Indomito
Участник
 
Группа: Members
Откуда: Москва-Север
Зарегистрирован: 27-08-2009
Сообщений: 426
UA: Firefox 43.0

Re: Custom Buttons

sonyas75 Готовая кнопка  Я правда её переделал под себя, но это уже детали.

Insert special symbol(Firefox) All the versions

Indomito  &  difabor - версия от 27.05.2014
За основу взят код  bunda1 - Вставка символа в текстовое поле(Firefox) от 11.05.2013

Left Short                               — Вставка символа из списка
Left Long Or Left+Shift          —  Редактирование списка символов
Middle or Left+Ctrl                 — Возврат к исходному списку символов
(Middle or Left+Ctrl)+Shift     — Мерять длительность клика
Right Short                            — Запуск таблицы символов Windows
Right Long or Right+Shift      — Стандартное Меню Кнопки

Short(быстрый клик ЛКМ‖ПКМ) и Long(Удержание ЛКМ‖ПКМ) определяются значением переменной delay в ms (по умолчанию delay=600)

Выделить код

Код:

var delay = 600, array = [], symbList, myID = _id, symbName = myID + ".symbols",mynum=0;

"Никогда не выявляйте в программе ошибки, если не знаете, что с ними дальше делать." Штейнбах

Отсутствует

 

№937519-01-2016 06:25:52

sonyas75
Участник
 
Группа: Members
Откуда: Ставрополь
Зарегистрирован: 22-03-2011
Сообщений: 557
UA: Firefox 38.0

Re: Custom Buttons

difabor
Indomito
благодарю

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]