tuman18
У меня есть кнопка переключающая InstantFox:
var Jetpacks = "InstantFox"; Components.utils.import("resource://gre/modules/AddonManager.jsm"); AddonManager.getAddonsByTypes(["extension"], function(addons) { for(var i = 0, l = addons.length; i < l; i++) if(addons[i].name == Jetpacks) { addons[i].userDisabled = !addons[i].userDisabled; addons[i].userDisabled = false; } })
Для переключения ABP, нужно изменить в начале var Jetpacks = "InstantFox";
Ну и весь код соответственно в инициализацию.
Отсутствует
В связи с этим №9528, прошу добавить функционал в User-Agent Change. Как я себе это представляю: все также имеется список UA, но каждый из них имеет подменю со списком доменов на которых он работает, а также пунктом "Добавить домен", а если нажать на сам пункт UA, то как и раньше он устанавливается глобально. Возможно?
Отсутствует
tuman18
Насчёт этого, может быть попробуй закинуть в начало Инициализации какой-нибудь кнопки
(function() { const popup = document.getElementById("alltabs-popup"); const box = document.getAnonymousElementByAttribute(popup, "class", "popup-internal-box"); addEventListener("popupshowing", function() { var [menuitem] = Array.filter(popup.childNodes, function(menuitem) menuitem.hasAttribute("selected")); var boxCenter = box.boxObject.screenY + box.boxObject.height / 2; var menuitemCenter = menuitem.boxObject.screenY + menuitem.boxObject.height / 2; box.scrollByPixels(menuitemCenter - boxCenter); }, false, popup); })();
Отсутствует
bunda1 - задержка по времени (перед addons[i].userDisabled = false;), setTimeout или типа того.
var Jetpacks = "InstantFox"; Components.utils.import("resource://gre/modules/AddonManager.jsm"); AddonManager.getAddonsByTypes(["extension"], function(addons) { for(var i = 0, l = addons.length; i < l; i++) if(addons[i].name == Jetpacks) { addons[i].userDisabled = !addons[i].userDisabled; setTimeout(function() { addons[i].userDisabled = false; }, 20) } })
Отсутствует
bunda1
А что насчет №7221, можно сделать?
Наверно можно но сложно. Я не понимаю что требуется, ты хочешь что бы кнопка сама включала нужный UA для домена. И какие UA нужны. Мда, и редактирования списка доменов сделать трудно.
Отредактировано bunda1 (16-06-2013 18:53:40)
Отсутствует
ты хочешь что бы кнопка сама включала нужный UA для домена
По сути нужно только один раз в about:config создать ключ со значением UA. Можно сделать просто, при нажатии СКМ на пункт UA он ставится для текущего домена, при втором убирается, а левый клик выбирает как и раньше, глобально.
Отредактировано Kamui (16-06-2013 21:01:07)
Отсутствует
okkamas_knife
Target control(Firefox)(Seamonkey)
На не работает, можешь поправить?
Отсутствует
поправить
Попробуй
var appcontent = document.getElementById("appcontent"); appcontent.removeEventListener("DOMContentLoaded", changetarget, true); appcontent.addEventListener("DOMContentLoaded", changetarget, true); function changetarget(event){ var ntiset=custombuttons.getPrefs(pref); if (ntiset==1){ var links=doc.getElementsByTagName('a'); for (var i = 0; i < links.length ; i++){ links[i].target=''; } }else{ if (ntiset==2){ var links=doc.getElementsByTagName('a'); for (var i = 0; i < links.length ; i++){ links[i].target='_blank'; } } } }
на
addEventListener("DOMContentLoaded", function(e) { var links = e.target.links, ntiset = custombuttons.getPrefs(pref); if (ntiset && links && links.length) Array.forEach(links, function(link) link.target = ntiset - 1 ? "_blank" : ""); }, true, document.getElementById("appcontent"));
Отредактировано Dumby (17-06-2013 13:51:07)
Отсутствует
Попробуй
Да спасибо, всё заработало, отлично. И было бы совсем здорово, если бы сделать чтобы новые вкладки открывались в фоне. Если не трудно глянь, плиз.
Отредактировано voqabuhe (17-06-2013 15:37:02)
Отсутствует
сделать чтобы новые вкладки открывались в фоне
Ой, не знаю как, но может прокатит такая добавка в Инициализацию этой кнопки
addEventListener("click", function(e) { var node = e.target; if (e.button || cbu.getPrefs(pref) != 2 || !(node.ownerDocument instanceof HTMLDocument)) return; while (node) { if (node instanceof HTMLAnchorElement) { setTimeout(function(tab) gBrowser.selectedTab = tab, 20, gBrowser.selectedTab); break; } node = node.parentNode; } }, false, document.getElementById("appcontent"));
Отсутствует
Ой, не знаю как, но может прокатит такая добавка в Инициализацию этой кнопки
Всё отлично, всё работает. Наконец-то можно обходиться без СКМ. Спасибо вам с okkamas_knife огромное.
Отредактировано voqabuhe (17-06-2013 19:45:26)
Отсутствует
bunda1
Двойным левым кликом на папке закладок добавлять закладку в папку закладок
А можешь сделать аналогичную, но чтобы добавляла закладки по СКМ или двойному ПКМ (или ещё как-нибудь) в начало списка?
по двойному ПКМ
// Двойным правым кликом на папке закладок добавлять закладку в папку закладок ................................... addEventListener("dblclick", function(e) { var target = e.originalTarget; if ( e.button !== 2 || !target._placesNode || !PlacesUtils.nodeIsFolder( target._placesNode ) ) return; var docTitle = ( content.document.title || gBrowser.mCurrentTab.label).substr(0, 50); var folderId = PlacesUtils.getConcreteItemId( target._placesNode ); Cu.import("resource://gre/modules/PlacesUtils.jsm"); var currentURI = Services.io.newURI(content.location, null, null); let callback = { runBatched: function() { PlacesUtils.bookmarks.insertBookmark( folderId, currentURI, 0, docTitle ); } } PlacesUtils.bookmarks.runInBatchMode(callback, null); setTimeout(function() { document.getElementById("placesContext").hidePopup() }, 0); // всплывающая подсказка .... var folderTitle = PlacesUtils.bookmarks.getItemTitle( folderId ); var favicon = ( !!gBrowser.mCurrentTab.image )? gBrowser.mCurrentTab.image: "chrome://global/skin/icons/Portrait.png"; var alertsService = Components.classes["@mozilla.org/alerts-service;1"].getService(Components.interfaces.nsIAlertsService); alertsService.showAlertNotification( favicon, "Добавил в папку " + folderTitle + ":", docTitle, false, "", null, ""); }, false, window );
Отсутствует
bunda1
А с моей просьбой повесить жест на эту кнопку, не выходит.
if ( !this.lastChild ) {
var mc = document.getElementById("bookmarksMenuPopup");
var mcc = mc.cloneNode( true );
this.appendChild( mcc );
}
var bo = document.getBoxObjectFor( this );
this.lastChild.showPopup ( this, -1, -1, "popup", "bottomleft", "topleft" );
Отредактировано villa7 (17-06-2013 22:56:22)
Лучше спросить у знающих - чем лезть не зная.
Отсутствует
по двойному ПКМ
Ух ты, спасибо, просто класс. Теперь с комфортом можно отказаться от Add Bookmark Here ² А то я так с ним привык добавлять закладки в начало списка, а оно начало уже потихоньку отваливаться.
Отсутствует
Можно двойным правым кликом на закладке добавить страницу как закладку сразу за кликнутой закладкой, сделать?
Да!!! Конечно, я думаю это будет очень удобно. Подожди, на двойном ПКМ ты уже сделал удаление закладки. Может тогда сделаешь с горячей клавишей?
Отсутствует
Да!!! Конечно, я думаю это будет очень удобно. Подожди, на двойном ПКМ ты уже сделал удаление закладки. Может тогда сделаешь с горячей клавишей?
А если месте ПКМ и ЛКМ или наоборот, или нажать ЛКМ на закладку и подержать 300ms. Мне с горячей клавишей не нравится.
Отсутствует
А если месте ПКМ и ЛКМ или наоборот, или нажать ЛКМ на закладку и подержать 300ms. Мне с горячей клавишей не нравится.
Да и мне с горячей не нравиться, просто я про другие варианты не подумал. Тогда попробуй сделать ЛКМ с задержкой, меньше движений, удобней. ИМХО. А там смотри, как считаешь лучше, в принципе все предложенные тобой варианты нормальные.
Добавлено 18-06-2013 00:46:31
Dumby
Всё-таки в №7237 какая-то ошибка присутствует. Если открывать подряд несколько ссылок с одной страницы, то иногда текущая вкладка мигает (на несколько секунд становится чёрной), а иногда ссылка открывается в текущей вкладке. Может сможешь найти ошибку?
Отредактировано voqabuhe (18-06-2013 01:01:46)
Отсутствует