А можно сделать, чтобы "Закрыть активную вкладку по Escape ....." не закрывала вкладку в Полноэкранном режиме?
Попробуйте так:
Логика работы великолепная, первое нажатие выводит из полноэкранного режима, второе нажатие закрывает вкладку. А не сможете сделать то же самое и для вкладки с окном перевода - первое нажатие закрывает окно перевода (это действие входит в код кнопки перевода), второе нажатие закрывает вкладку? Сейчас первое нажатие закрывает таб, невзирая на наличие в нем окна перевода.
Как вариант, на самый тяжелый случай, если всплывающее окошко перевода открыто в полноэкранном режиме Firefox, первое нажатие закрывает окошко перевода, второе выводит из полноэкранного режима, третье закрывает вкладку.
Отредактировано shadow_user (27-01-2020 12:22:22)
Отсутствует
Логика работы великолепная, первое нажатие выводит из полноэкранного режима, второе нажатие закрывает вкладку.
И не говори, теперь вкладки закрывать одно удовольствие.
Отсутствует
Dumby, извините что потревожил лишний раз, нашел проблему в коде custom_script_win.js, у меня помимо этого подхватываются uc.js и я неправильно разделил коды, теперь все работает сразу, спасибо еще раз!
menuPopup.id='quick-aboutconfig-menupopup'; ||| для чего он вообще нужен?
// Листенер позволяющий сброс параметров с субменю по Shift+Enter ||| тоже вроде не нужен, попробывал без него вроде также сброс идет, или в чем его функция, обычно я сброс делаю ПКМ, да думаю многие так делают это удобнее чем искать shift+enter.
Кстати если кому интересно, есть еще кнопка от Dobrov, я его пока ток мимолетно смотрел, там много кода и интересно). Есть вроде еще один вариант кнопки, но не вспомню где, кто-то тоже редактил.
Отредактировано func4ptch4 (27-01-2020 11:47:09)
Отсутствует
А не сможете сделать то же самое и для вкладки с окном перевода - первое нажатие закрывает окно перевода (это действие входит в код кнопки перевода), второе нажатие закрывает вкладку? Сейчас первое нажатие закрывает таб, невзирая на наличие в нем окна перевода.
К сожалению это не смогу. Наверное надо попросить Dumby, может он сможет.
«The Truth Is Out There»
Отсутствует
forum.ru-board.com/topic.cgi?forum=5&topic=50414&start=0&limit=1&m=4#1
вопрос, с ним не нужны траблы с отключением неподписанных дополнений? если так то не легче его использовать чем составлять config.js (просто вопрос и интересно)
Проверил, какой-то не до браузер, подписи все равно проверяет и без конфига CB не пашет. (странный релиз, или я не правильно тестил).
Отредактировано func4ptch4 (27-01-2020 12:35:59)
Отсутствует
Dumby
Пожалуйста, сделайте такую кнопку, большая просьба. Спасибо!
А не сможете сделать то же самое и для вкладки с окном перевода - первое нажатие закрывает окно перевода (это действие входит в код кнопки перевода), второе нажатие закрывает вкладку? Сейчас первое нажатие закрывает таб, невзирая на наличие в нем окна перевода.
Как вариант, на самый тяжелый случай, если всплывающее окошко перевода открыто в полноэкранном режиме Firefox, первое нажатие закрывает окошко перевода, второе выводит из полноэкранного режима, третье закрывает вкладку.
К сожалению это не смогу. Наверное надо попросить Dumby, может он сможет.
Отсутствует
А возможность осталась любым способом восстановить адресную строку в окне добавления закладок через звёздочку и сделать всегда развёрнутым окошко дерева закладок там же?
Что-то похожее VORON спрашивал.
Может подойдёт, если сможешь там
найти ответ через пару постов, конечно.
Пожалуйста, сделайте
Я фик знает, какой-то вы глюкосборник затеяли.
document.onkeydown = e => { if (e.which != 27) return; if (document.querySelector(":root > div#ujs_window_gt")) return false; if (fullScreen) return fullScreen = false; gBrowser.removeCurrentTab(); }
Отсутствует
какой-то вы глюкосборник затеяли
Похоже Вы правы, на счёт глюкосборника.
Почему-то у меня стала подглючивать другая кнопка. Поэтому немного переделал Ваш вариант:
function closeTabEsc(e) { if (e.which != 27) return; if (document.querySelector(":root > div#ujs_window_gt")) return false; if (fullScreen) return fullScreen = false; gBrowser.removeCurrentTab(); } document.addEventListener("keydown", closeTabEsc, false); addDestructor(()=> document.removeEventListener("keydown", closeTabEsc, false));
Отредактировано unter_officer (27-01-2020 21:44:39)
«The Truth Is Out There»
Отсутствует
Не знаю, правильно ли я всё сделал, но работает и главное, что конфликт с другой кнопкой исчез.
Дык это вариант опять закрывает сразу вкладку с полноэранного режима, а от Dumby всё нормально.
Отсутствует
Дык это вариант опять закрывает сразу вкладку с полноэранного режима, а от Dumby всё нормально.
Значит пользуйтесь вариантом от Dumby. Я же никому ничего не навязываю.
Лично у меня мой вариант работает нормально. Может от версии зависит? Я проверял на 52 ESR и 68 ESR.
«The Truth Is Out There»
Отсутствует
Я фик знает, какой-то вы глюкосборник затеяли.
Поэтому немного переделал Ваш вариант:
Обе кнопки нормально работают на v68. Спасибо! Кнопка достигла совершенства!
Andrey_Krropotkin
Не совсем комфортно попадать мышкой в полукруглую иконку 16х16. А места там, что и 22х22 поместится, лучше, если квадратная. Может, есть смысл изменить?
Отредактировано shadow_user (27-01-2020 22:33:46)
Отсутствует
Значит пользуйтесь вариантом от Dumby. Я же никому ничего не навязываю.
Ну я просто подумал, вдруг вы не заметили. А так меня и второй ваш вариант устраивал. Но раз переделывают, значит думаю надо пробовать.
Отредактировано voqabuhe (27-01-2020 22:33:46)
Отсутствует
Не совсем комфортно попадать мышкой в полукруглую иконку 16х16. А места там, что и 22х22 поместится, лучше, если квадратная. Может, есть смысл изменить?
Замени в коде строку
img.setAttribute('style', 'display:block;float:right;width:15px;height:15px;padding:0;margin-top:3px;margin-right:2px;border:none;cursor:pointer;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAACwklEQVR42i2TW0hVeRjFf98+aloWQUbkedBCIkgKusAxRCiiBy3yrZJuxEB0Bh/moemh6EoXkuhGSQ9dToHVW3XwKS1qhnFmcIIEmTNQYD3UoIWdtDJt76+1j/5hbfbe//196/+ttbah9adQLNwWmqFpLtTlYcwg8Q3C6VD6H/y9HR66vokRCPaPLt/jG2EMttXPmXPbWlvh0ycoKtKmdmfNYvTcOTL5fHoPtOstw3HNX7pEwjjsqK+szAQPHkRUVFihXyIh3pAC2fv3nm9qCi4NDv68D650TBUXiXFrw8yZt8hkQubNCzAzhoddzCZmZ/ZsUxNnaCj6sGtX4uTISHotXLNH0NgAnSVtbSHJZEBjo6nY6e42Xr+GqipYs8YpKTE6O51cLsodOpQ4Ay3WCydWrF69n1QqKDDs3u2eTJq9fSslJWUqhVdWYn19zvHjRm+v+8BAeAFu2B9wsC6ZPMbKlcbXr051tZFO40uX4jq9RRH25Alqysc3b1wq26g0uCnh7Dc4XD9t2hEWLtQrmZCXSVu2ELadJfF5BC8vx5qbyWezBTtjceUD1+Pip2JeDsfKi4stmpjwIJUy2tuhtpZIVgWxVc+fw86djOZyLhtsRDRX4+JnmnkV7FfXILF4sZHNutfUmD2Ld07AgQPQIElfvXI2bLDvaiB3osLMl2Gjth7WzpgRat6A+/eN8XGnpcX8xQts2TLo6HB0MjZtcjngXV++BFfgF3usZP4OP22W8YtqakLmzw8oKzP6+13JMiXNWbJkUsx376Kely8TF+HUXbhgGQ2/blKA9Da4XF1XFyoQAaWlsd+TIo6NudLmfT09wWkV3oHzGmbQ4vBNCAoibbB3h06QXL8eMVFYcXFZGf92dXHU/eQ9MW5VYdXU/8CQUDH18KuiukiZ+qiesbJq7KVQ0g39WbirH+l/pYsFwg9RIBTyj1ZRogAAAABJRU5ErkJggg==");background:-o-skin("Caption Close Button Skin");');
на
img.setAttribute('style', 'display:block;float:right;width:20px;height:20px;padding:0;margin-top:1px;margin-right:0px;border:none;cursor:pointer;background-image:url("data:image/png;charset=utf-8;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAAH6ji2bAAAACXBIWXMAAAAAAAAAAAHqZRakAAAEMklEQVQ4y6WUW2xUVRSG/305M51ppy0XgV60pUGgWkyggBIvITEpCYaIodGopSbElDRBQUPwyfiAJkQBTUFBohgUSUnEB1B8aCChCQQRgZpWiuXSDLRD6ZmWOXPO2Z1z2cuHQqnSGBLX49or317r3//aEuNCAgARUX/DurQEgBu1FZmE4EKOlfS+2mxWHPhiiiy6/Iu4UVuRkQBwbXOLDrUGAAjOR0nGj4evVJ5rmwUAZm1dj8QEIU8tr6fpTz1LdxOdu7edlK55S0VnlqKsoT7268rG4VToSWndMlVZQ/3ks9t2WPkF8ZF+PyR5Xg3EliyszMwggmAsngxyZyQAHCuptKavWJEAY/ddand1edmrFx+VACDnVuflR4vd+NIlhhYcqZ/bgvl7tsY6m99TpQuepvbLlw5KALBvmYp3d2d7L1zgi9sPl8x4cZnR8eU3braz05qaXxjcDAOSAGANDqqIFQzlky9OlFZnfSJMXlybV3A16USNiN8XeKMKtQYDi4546f0MTIw11/4TAGBE698PWfb6CVWbUMljJSUV8VnVPYnHaoz7TokwcORI9vlUb6G0mbG/qm6lJCKif9QQBOeIzV+YQKoXMqu15IOm8sIAs3Z+FD/ftFFNq1sqpWHAO37K95VjAIC0KQA3TRX4HgMQn79nawwAruxrVbF0WvmOw0YLNUikhxT8HP9r197s7OY1CQD4c9fX2UXFU72co0aJVhhCDqZVwby5sfLmNYlz23daC95dV7jidNs0s7auJ+c4cQCQWQoh0mnlHW/3Lr7UGAyf/s079snnN2OMUXUklssp1wcAmSF9VkwbWl1EBJU8weaU3ptcCEVdyWwUAOTe27ffzlwKKI/z2vtkBIUODxrG1gUATpbMrCCmNzIZeYIJEg/yWhSykIJcBxBsfaa/PzkGPDq9dEfwSPnaORs2GRN597+p9NylT7esPRqyXcsH+jaM2laIhYniKUJ1dPmaCEQETYRo+QzmXu8fbwDEHi5h6nqKOGOI3Nl6Pukhad9IPjnWoR1q+Lbj87SZo1BDVJbLivffid+FXDtwKEcAql5bFb2b6/7gY1ekBgMA8G0naof63pdj65A8x/ENc8ilUDN1c4CdWfaKU7zqhfjspsb8meNAnV99p65//4NbZER0cUFhCACe43BbhzQOqOE5TiBMU0kdMq41K3vj5aKypsb8f0tW8+bqmDGi/PS+VkuMeP4dYJ6tx3VoUYiccn1uDimuNRMUcua6cQDoadk9/Me2nZlAE3v8raZEzab1kyPEAjlsKeH4PgDklFtgUThuZNKBct1AjpgKIJZHxEY+/Ex1bd6e0gCqQAwA/C0tVseWlj4BRpMYJ8GdAACUdgObdHCvQ6ChTdud3TF3Xk2RETH4gznG10BXxveSTpjzuXx9DPjt8HASQCFuA+jD/4q/AYOlLA+pNh89AAAAAElFTkSuQmCC");background:-o-skin("Caption Close Button Skin");');
Отредактировано unter_officer (27-01-2020 22:51:42)
«The Truth Is Out There»
Отсутствует
Что-то похожее VORON спрашивал.
Может подойдёт, если сможешь там
найти ответ через пару постов, конечно.
Можно ли в этот код добавить папку по умолчанию допустим - меню закладок или сделать отдельным кодом, раньше пользовался стилем
#urlbar image#star-button { -moz-binding: url("data:text/xml;charset=utf-8,<bindings xmlns='http://www.mozilla.org/xbl' xmlns:xul='http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul' xmlns:xbl='http://www.mozilla.org/xbl'><binding id='starred'><handlers><handler event='click' button='0'><![CDATA[ if (this.hasAttribute('starred')) return; event.preventDefault(); event.stopPropagation(); var io = Components.classes['@mozilla.org/network/io-service;1'].getService(Components.interfaces.nsIIOService); var curURI = window.gBrowser.currentURI.spec; var uri = io.newURI(curURI, null, null); var title = window.gBrowser.contentTitle; if (title === '') title = curURI; var NavBookService = Components.classes['@mozilla.org/browser/nav-bookmarks-service;1'].getService(Components.interfaces.nsINavBookmarksService); NavBookService.insertBookmark(NavBookService.bookmarksMenuFolder, uri, NavBookService.DEFAULT_INDEX, title); try { if (!Services.prefs.getBoolPref('browser.bookmarks.editDialog.showForNewBookmarks')) return; } catch(e) {} setTimeout(() => { this.click(); }, 100);]]></handler></handlers></binding></bindings>#starred") !important;
Отредактировано Andrey_Krropotkin (27-01-2020 23:16:18)
Отсутствует
Замени в коде строку
Спасибо! Пользуясь вашей подсказкой, сделал себе максимально возможный размер 22х22
img.setAttribute('style', 'display:block;float:right;width:22px;height:22px;padding:0;margin-top:0px;margin-right:0px;border:none;cursor:pointer;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAqElEQVQ4y+2VTQoDIQxG30APk4W9Q/H+q/YQBS+RbjKDtc5EBzKrBgIa/R4f/i6AEhA3giIMjC3Fmk8gNbWRzMCrqX11kqoyCc+myUfgWfgetAuu4Q/g3RkvDnQXXLtJBqqhyYEeggtwN4CY815tGty6S027OFp3gzaXg04V0MsuyCVLEbZ5IcdNKmFxLoiMgsURjM49DfU0P8+mnHg2xbRbbfl/TWt8AD0PUIS/F838AAAAAElFTkSuQmCC");background:-o-skin("Caption Close Button Skin");');
Отредактировано shadow_user (28-01-2020 11:35:57)
Отсутствует
В Firefox 55-68 прекрасно работала кнопка Close Page. В контекстном меню страницы появлялся крестик для закрытия этой страницы. А в 72 уже не работает, может кто-нибудь поправит её.
Отсутствует
rubel сколько уже раз обсуждалось, что нет createElement, а есть createXULElement и еще если BrowserGoHome(); не работает, то можно заменить на gBrowser. loadURI('about:newtab', {triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()});
Отредактировано Andrey_Krropotkin (28-01-2020 14:24:07)
Отсутствует
Andrey_Krropotkin
Извините, но я в этом деле совершенно ничего не понимаю.Пользуюсь готовыми кнопками. И эта кнопка тоже не моя, мне её сделал
один юзер с http://forum.ru-board.com/ и она прекрасно работала. Если можно, поправьте, пожалуйста, её код и опубликуйте здесь.
Отсутствует
rubel так я уже сказал, что на что заменить
((menuItem, obj) => { for (const prop in obj) menuItem.setAttribute(prop, obj[prop]); addDestructor(() => menuItem.remove()); })( document.getElementById("context-navigation").appendChild(document.createXULElement("menuitem"), document.getElementById("context-navigation")) , { "id": "context-close-tab" , "label": "Close Tab / Home page" , "tooltiptext": "LMB: Close Tab / RMB: Home page" , "class": "menuitem-iconic" , "image": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABLUlEQVRYhe3XsU7DMBCA4YMOGchjde7mF0CCwZK3VLVrq74FZl6Anb5A2elzVTBEKQVMene+IIae1DH3f4oUWwW4zH+drutuQswPzrlGusMYM1ulzR0AXvPjCd9CwncfcSdBGGNmPuJLvyM/kxHWYjvEhx8XcRr/3EFAlOJcRClORviEj6UHqYix+HHHerP8FeCca3zMrxIEKR7z3lpsR1+hBKEWlyDU41zEJHEOYrJ4LUIlLkWoxrmISeIA/acWUt6eB8juDpX4JAhuXBUhjasgKHEf8156d6jErcW25gKrjg/PqCEk8a8I3FUhfMJ5SPkgPWSIiPvRt+DXeFtCUE+4MYRP+AQAV+d2/EBwj9cSghz/jpCe7acIdnyYEHBRc7E455r+j4kgfpm/mg9AapCabZBHlgAAAABJRU5ErkJggg==" , "oncommand": "gBrowser.removeTab(gBrowser.selectedTab, { animate: true });" , "oncontextmenu": "if (event.target == this && !event.ctrlKey && !event.shiftKey) {event.preventDefault(); event.stopPropagation(); gBrowser. loadURI('about:newtab', {triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal()}); hidePopup()}" } );
Отредактировано Andrey_Krropotkin (28-01-2020 16:14:25)
Отсутствует
Andrey_Krropotkin
Получилось, заменил createElement на createXULElement .Спасибо.
А ваша почему-то не работает с двумя заменами
Отредактировано rubel (28-01-2020 15:03:04)
Отсутствует
А ваша почему-то не работает с двумя заменами
Работает, если исправить две ошибки в коде, пропущены символы (строка прим. №6 и почти в конце). Но в обеих случаях крестик выгдядит бледным (как некликабельный), видимо, иконка такая
Отредактировано shadow_user (28-01-2020 15:51:19)
Отсутствует
rubel исправил
Отсутствует