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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№162617-06-2024 17:06:16

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 471
UA: Firefox 124.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V. пишет

Напрасно, тебе же Dumby сделал чтобы не только в основном окне работало но также в библиотеке или в самом сайдбаре

Спасибо за разбор ошибок!

Отсутствует

 

№162717-06-2024 19:11:30

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

egorsemenov06
А обязательно новую добавлять? от Sidebar Tabs "resource://ucf_sidebar_tabs" лучше используйте чтобы одинаковые были,
добавить в Object.entries({

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

Выделить код

Код:

class: "menuitem-iconic",
style: 'list-style-image:url("resource://ucf_sidebar_tabs");-moz-context-properties:fill,stroke,fill-opacity;stroke:currentColor;fill:currentColor;fill-opacity:var(--toolbarbutton-icon-fill-opacity,.8);',

Отсутствует

 

№162819-06-2024 00:54:43

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 1224
UA: Firefox 127.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V.
Поставил крайние UserChromeFiles.zip + UserChromeFiles_Fix_115_ESR.zip
Раскомментировал user_chrome_files\custom_scripts\sidebar_tabs.js, установил значение
AUTO_HIDE = false, // Auto hide
Теперь боковая панель сдвигает Sidebar Tabs, а раньше выезжала поверх. Мне кажется, поверх было симпатичнее, ничего не дёргалось. Так задумано или я что-то не донастроил?
https://imgur.com/XLdI2YS

Отсутствует

 

№162919-06-2024 10:30:44

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

-

Отредактировано Vitaliy V. (08-08-2024 14:42:55)

Отсутствует

 

№163019-06-2024 11:42:26

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 1224
UA: Firefox 127.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V.
Спасибо. Мне кажется, что без этой настройки терялась логика здесь.

Отредактировано xrun1 (19-06-2024 11:45:04)

Отсутствует

 

№163122-06-2024 19:19:11

Farby
Участник
 
Группа: Members
Зарегистрирован: 21-11-2012
Сообщений: 303
UA: Google 2.1

Re: UCF - ваши кнопки, скрипты…

egorsemenov06

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

Выделить код

Код:

`
            get buttonID() {
                delete this.buttonID;
                return this.buttonID = new Map([
                    ["PanelUI-menu-button", "appMenu-popup"],
                    ["star-button", "editBookmarkPanel"],
                ]);
            },


у меня так, но для вас может быть много лишнего...
скрытый текст

Выделить код

Код:

`
		get buttonID() {
				delete this.buttonID;
				return this.buttonID = new Map([
		["PanelUI-menu-button", "appMenu-popup"],
		["library-button", "customizationui-widget-panel"],
		["fxa-toolbar-menu-button", "customizationui-widget-panel"],
		["nav-bar-overflow-button", "widget-overflow"],
		["unified-extensions-button","toolbarbutton-1"],
		["star-button", "editBookmarkPanel"],
		["pageActionButton", "pageActionPanel"],
				]);
		},

Добавлено 22-06-2024 19:29:28

egorsemenov06 пишет

если можно из этих 2-х кнопок сделать одну

А тестировать как, а по мне можно два в одном, ну тобошь в один файл.

Отредактировано Farby (22-06-2024 19:29:28)


Жизнь иногда такое выкидывает, что хочется подобрать...

На форуме

 

№163222-06-2024 23:30:29

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

Re: UCF - ваши кнопки, скрипты…

Farby пишет

["unified-extensions-button","toolbarbutton-1"],

Это что ещё за дичь?
Не работает, и не может работать.


Работает добавить #unified-extensions-button
к другим двоим таким же, начинающимся с решётки
#star-button,
#PanelUI-menu-button(,)...


А ["unified-extensions-button", "unified-extensions-panel"],
стоит добавить лишь в том смысле, чтобы панелька,
в некоторых случаях, закрывалась.


STR: наводим указатель мыши на аддонскую кнопку.
Панелька этой аддонской кнопки открывается.


Теперь, не сходя с места, наводим указатель мыши
на кнопку гамбургера.
Гамбургерская панелька открывается.
При этом, аддонская панелька остаётся торчать открытой.


А если добавить, то аддонская панелька,
в этом случае, будет закрываться.


Кстати, недавно, запилили метод nsIAppWindow.rollupAllPopups()
Схлопывает все менюшки разом, если может вдруг интересно.

Отсутствует

 

№163324-06-2024 03:10:07

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 471
UA: Firefox 124.0

Re: UCF - ваши кнопки, скрипты…

Всем привет! Как правильно подключить в Библиотеку скрипт Восстановить удалённое ?
При удалении Закладки из Библиотеки в контекстном меню нет строки: "Восстановить удалённое", а в панели закладок есть.

Выделить код

Код:

scriptschrome: { domload: [ // фрагмент скрипта CustomStylesScripts.mjs
		{ path: "undoBookmarks.js", ucfobj: true },
	],
},
scriptsallchrome: { load: [
	{ path: "undoBookmarks.js", urlregxp: /chrome:\/\/browser\/content\/places\/places\.xhtml/, ucfobj: false, },
	],
},

Отсутствует

 

№163424-06-2024 10:47:52

Farby
Участник
 
Группа: Members
Зарегистрирован: 21-11-2012
Сообщений: 303
UA: Google 2.1

Re: UCF - ваши кнопки, скрипты…

Dumby пишет

Это что ещё за дичь?
Не работает, и не может работать.

Спасибо!! Теперь я точно знаю, что ничего не знаю :D

mouseoveropentoolbarbutton

Выделить код

Код:

..
		["alltabs-button","customizationui-widget-panel"],
		["unified-extensions-button","unified-extensions-panel"],


Жизнь иногда такое выкидывает, что хочется подобрать...

На форуме

 

№163524-06-2024 11:15:00

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

Re: UCF - ваши кнопки, скрипты…

Dobrov
Опять ты со своим «Как правильно?» :)
Никак не правильно.
Просто потому, что в окне Библиотеки
работает Ctrl+Z


Быть может, для тебя это представляет
какой-то чисто академический интерес.


Но тогда, консоль должна была бы подсказать,
что следует импортировать недостающий UcfPrefs.
var {UcfPrefs} = ChromeUtils.importESModule("chrome://user_chrome_files/content/user_chrome/UcfPrefs.mjs");


А ещё, у меня, с этого кода наблюдается
некий странно-непонятно-загадочный глюк,
когда, после восстановления закладки,
на этой восстановленной закладке,
пункт «Удалить закладку» вообще перестаёт работать.
Так что — сочтём этот код просто провальным, если воспроизводится.

Отсутствует

 

№163624-06-2024 16:14:01

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 471
UA: Firefox 124.0

Re: UCF - ваши кнопки, скрипты…

Dumby пишет

Быть может, для тебя это представляет какой-то чисто академический интерес.

По аналогии с Sidebars Tabs хотел в Библиотеке в контекст-меню пункт: "Восстановить закладку"


у меня, с этого кода наблюдается некий странно-непонятно-загадочный глюк

То есть, стóит вернуться на предыдущий универсальный скрипт "Восстановить закладку" ?

Отсутствует

 

№163724-06-2024 19:27:14

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 1644
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Восстановить закладку (последний спойлер)
У меня давно работает вообще везде, даже в менюшках с закладками, подключается так

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

Выделить код

Код:

.
    scriptschrome: { // Для докум. окна браузера [ChromeOnly]
        domload: [ // По событию "DOMContentLoaded"
            ...
        ],
        load: [ // По событию "load"
            { path: "ucf_UndoBookmarksContextMenu.uc.js", ucfobj: false, },
        ],
    scriptsallchrome: { // Для докум. всех окон [ChromeOnly]
        domload: [ // По событию "DOMContentLoaded"
           ...
        ],
        load: [ // По событию "load"
            { path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /chrome:\/\/browser\/content\/places\/bookmarksSidebar\.xhtml/, ucfobj: false, },
            { path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /chrome:\/\/browser\/content\/places\/places\.xhtml/, ucfobj: false, },
        ],

    scriptscontent: {
        DOMWindowCreated: [ // По событию "DOMWindowCreated"
            ...
        ],
        DOMContentLoaded: [ // По событию "DOMContentLoaded"
            ...
        ],
        pageshow: [ // По событию "pageshow"
            { path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /chrome:\/\/browser\/content\/places\/places\.xhtml/, },
        ],
    },

Отредактировано _zt (26-06-2024 12:14:43)

Отсутствует

 

№163825-06-2024 15:12:15

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Автоматически открывать меню

Автоматически закрывать меню

наконец дошли руки для отлавливания этих менюшек, тестируйте кому надо новый скрипт

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

Выделить код

Код:

(async (
    id = Symbol("mouseover_openpopup"),
    delay = 300,
    hidedelay = 1000,
    btnSelectors = [
        "#PanelUI-menu-button",
        "#library-button",
        "#fxa-toolbar-menu-button",
        "#nav-bar-overflow-button",
        "#star-button-box",
        "#pageActionButton",
        "#unified-extensions-button",
        "#downloads-button",
        "#alltabs-button",
    ],
    excludeBtnSelectors = [
        "#tabs-newtab-button",
        "#new-tab-button",
        "#back-button",
        "#forward-button",
    ],
    areaSelectors = [
        "toolbar",
    ],
    hideAreaSelectors = [
        // "#PlacesToolbarItems",
    ],
    excludeHidePopupSelectors = [
        "#contentAreaContextMenu",
        "#contentAreaContextMenu :scope",
        "#PopupSearchAutoComplete",
        "#PopupAutoComplete",
    ],
) => (this[id] = {
    timer: null,
    hidetimer: null,
    hideArea: [],
    open_: false,
    get popups() {
        delete this.popups;
        return this.popups = new Set();
    },
    get btnSelectors() {
        delete this.btnSelectors;
        return this.btnSelectors = btnSelectors.join(",");
    },
    get ExtensionParent() {
        delete this.ExtensionParent;
        return this.ExtensionParent = ChromeUtils.importESModule("resource://gre/modules/ExtensionParent.sys.mjs").ExtensionParent;
    },
    get browserActionFor() {
        delete this.browserActionFor;
        return this.browserActionFor = this.ExtensionParent.apiManager.global.browserActionFor;
    },
    get exclude() {
        delete this.exclude;
        return this.exclude = excludeBtnSelectors.join(",");
    },
    get excludePopup() {
        delete this.excludePopup;
        return this.excludePopup = excludeHidePopupSelectors.join(",");
    },
    async init() {
        await delayedStartupPromise;
        for (let elm of (this.areasList = document.querySelectorAll(areaSelectors.join(",")))) {
            elm.addEventListener("mouseover", this);
            elm.addEventListener("mouseout", this);
            elm.addEventListener("mousedown", this);
        }
        for (let elm of (this.popupsList = document.querySelectorAll("toolbar, popupset")))
            elm.addEventListener("popupshown", this);
        setUnloadMap(id, this.destructor, this);
        if (!hideAreaSelectors.length) return;
        if (excludeHidePopupSelectors.length)
            this.popupShown = this.pShown;
        this.popupShown_ = this.popupShown.bind(this);
        this.popupHidden_ = this.popupHidden.bind(this);
        this.hidePopup = this.hPopup;
        for (let elm of (this.hideArea = document.querySelectorAll(hideAreaSelectors.join(","))))
            elm.addEventListener("popupshown", this.popupShown_);
    },
    destructor() {
        for (let elm of this.areasList) {
            elm.removeEventListener("mouseover", this);
            elm.removeEventListener("mouseout", this);
            elm.removeEventListener("mousedown", this);
        }
        for (let elm of this.popupsList)
            elm.removeEventListener("popupshown", this);
        for (let elm of this.hideArea)
            elm.removeEventListener("popupshown", this.popupShown_);
    },
    popupShown({target}) {
        if (target.localName === "tooltip") return;
        this.pShow(target);
    },
    pShown({target}) {
        if (target.localName === "tooltip" || target.matches(this.excludePopup)) return;
        this.pShow(target);
    },
    pShow(target) {
        target.addEventListener("mouseenter", this);
        target.addEventListener("popuphidden", this.popupHidden_, { once: true });
        if (this.open_) return;
        this.open_ = true;
        gBrowser.tabpanels.addEventListener("mouseenter", this);
    },
    popupHidden({target}) {
        target.removeEventListener("mouseenter", this);
    },
    handleEvent(e) {
        this[e.type](e);
    },
    mouseenter({currentTarget}) {
        clearTimeout(this.hidetimer);
        if (currentTarget != gBrowser.tabpanels) return;
        this.hidetimer = setTimeout(() => this.hidePopup(), hidedelay);
    },
    popuphidden({target}) {
        this.popups.delete(target);
    },
    popupshown({target}) {
        if (target.localName === "tooltip") return;
        this.popups.add(target);
        target.addEventListener("popuphidden", this, { once: true });
    },
    hidePopup() {
        this.popups.forEach(p => p.hidePopup?.());
        this.popups.clear();
    },
    hPopup() {
        this.popups.forEach(p => p.hidePopup?.());
        this.popups.clear();
        if (!this.open_) return;
        gBrowser.tabpanels.removeEventListener("mouseenter", this);
        this.open_ = false;
    },
    mousedown() {
        clearTimeout(this.timer);
    },
    mouseout() {
        clearTimeout(this.timer);
    },
    mouseover({target}) {
        clearTimeout(this.timer);
        this.timer = setTimeout(() => {
            if (target?.matches?.(`${this.exclude},:is(menupopup,panel) :scope`) ?? true) return;
            let extensionid, isbtn = target.matches(this.btnSelectors) || !!(target.parentElement.matches(this.btnSelectors) && (target = target.parentElement));
            if (!target.hasAttribute("open")
            && (isbtn
            || target.menupopup
            || target.getAttribute("widget-type") === "view"
            || target.classList.contains("toolbarbutton-combined-buttons-dropmarker")
            || ((extensionid = target.dataset?.extensionid) && this.browserActionFor(this.ExtensionParent.WebExtensionPolicy.getByID(extensionid).extension).action.tabContext.get(gBrowser.selectedTab).popup))) {
                this.hidePopup();
                let params = { bubbles: false, cancelable: true, };
                target.dispatchEvent(new MouseEvent("mousedown", params));
                target.dispatchEvent(new MouseEvent("click", params));
            }
        }, delay);
    },
}).init())();

Отредактировано Vitaliy V. (26-06-2024 15:10:34)

Отсутствует

 

№163925-06-2024 17:23:23

xrun1
Участник
 
Группа: Members
Зарегистрирован: 12-12-2013
Сообщений: 1224
UA: Firefox 127.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V.
Проверил на чистом профиле. Помимо указанных кнопок открывает при наведении на кнопки приложений меню, если оно есть. И даже при наведении на стрелочку из приложения ATB кнопки, типа "Восстановить", "Переключить прокси". В старом варианте так не было. Придётся делать большой список excludeBtnSelectors. Пока список exclude не делал, не проверил.
И ещё, было и в старом и в новом есть. При наведении на звёздочку (добавление в закладки) в адресной, происходит клик и страница добавляется в закладки. Это просто информация, у себя закомментарил.

Отсутствует

 

№164025-06-2024 18:57:31

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

egorsemenov06 пишет

а что бы менюшки сами закрывались можно сделать

Все что ли? тогда попробуйте добавить в hideAreaSelectors
"toolbar",
"popupset",
или раскомментируйте то что там есть только для закладок на панели,
кстати логика самозакрытия несколько отличается от того что было, они закрываются при наведении курсора на область контента, иначе получаем неожиданное закрытие меню например при при отводе курсора на другое меню вызываемое по ПКМ

Отредактировано Vitaliy V. (08-08-2024 14:46:25)

Отсутствует

 

№164125-06-2024 19:57:36

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

egorsemenov06 пишет

Но я так и не понял как исключить некоторые кнопки

Ну как в excludeBtnSelectors добавляете селекторы, ID или например так сразу для всех расширений
"toolbarbutton[data-extensionid]",

Отсутствует

 

№164226-06-2024 10:22:12

Dobrov
Участник
 
Группа: Members
Зарегистрирован: 04-10-2011
Сообщений: 471
UA: Firefox 124.0

Re: UCF - ваши кнопки, скрипты…

_zt пишет

Восстановить закладку (последний спойлер)
У меня давно работает вообще везде, даже в менюшках с закладками, подключается так

Спасибо! У меня не было подключено в pageshow:. И вот здесь правильней оставить только load:

Выделить код

Код:

domload: [ // По событию "DOMContentLoaded"
            { path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /chrome:\/\/browser\/content\/places\/bookmarksSidebar\.xhtml/, ucfobj: false, },
        ],
load: [ // По событию "load"
            { path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /chrome:\/\/browser\/content\/places\/places\.xhtml/, ucfobj: false, },

Отсутствует

 

№164326-06-2024 12:13:26

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 1644
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Dobrov
Это я накосячил при копировании, конечно первая запись в load находится. Пожалуй исправлю свой пост.

Отсутствует

 

№164426-06-2024 16:23:18

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

egorsemenov06 пишет

вроде работает как мне надо, но не знаю правильно или нет.
Не могли бы Вы обновить еще одну кнопку

Разве что обновить в смысле оформить для UCF

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

Выделить код

Код:

(async (
    timeout = 150,

    trg = document.querySelector("#tabbrowser-tabs tab.tabbrowser-tab").flattenedTreeParentNode,
) => ({
    id: 0,
    tab: null,
    init() {
        trg.addEventListener("mouseover", this);
        setUnloadMap(Symbol("tab_focus"), this.destructor, this);
    },
    handleEvent({target}) {
        var tab = target.closest("tab:not([selected])");
        if (tab && this.tab != tab)
            clearTimeout(this.id),
            this.id = setTimeout((t, x) => {
                if (t.matches(":hover") && Math.abs(x - t.screenX) < 50)
                    gBrowser.selectedTab = t;
                this.tab = null;
            }, timeout, this.tab = tab, tab.screenX);
    },
    destructor() {
        trg.removeEventListener("mouseover", this);
    },
}).init())();

egorsemenov06 пишет

и тут бы исключить меню по ПКМ

Добавил excludeHidePopupSelectors туда можно добавлять селекторы Pop-Up

Отредактировано Vitaliy V. (28-06-2024 14:44:33)

Отсутствует

 

№164526-06-2024 20:26:56

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

egorsemenov06 пишет

обнновите пожалуйста еще вот эту кнопку

Ничего себе кнопка это моё расширение, но модифицированное, почему бы вам к автору мода Dumby не обратится?

_zt пишет

подключается так

Многовато подключений это же регулярные выражения, можно заменить три в scriptschrome и scriptsallchrome
но одно в scriptsallchrome

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

Выделить код

Код:

{ path: "ucf_UndoBookmarksContextMenu.uc.js", urlregxp: /^chrome:\/\/browser\/content\/(?:browser|places\/(?:bookmarksSidebar|places))\.xhtml/, },

Отредактировано Vitaliy V. (26-06-2024 20:30:57)

Отсутствует

 

№164626-06-2024 21:11:13

Den199
Участник
 
Группа: Members
Зарегистрирован: 26-06-2024
Сообщений: 7
UA: Firefox 126.0

Re: UCF - ваши кнопки, скрипты…

Крайние оригинальные UserChromeFiles и sidebar_tabs.js.

  • Если устанавливаю на странице настроек UCF у вертикального тулбара чек-бокс "Automatically hide" и в файле sidebar_tabs.js устанавливаю AUTO_HIDE = true, то в такой комбинации панель sidebar_tabs появляется поверх контента на странице.
  • Если убираю на странице настроек UCF у вертикального тулбара чек-бокс "Automatically hide" и в файле sidebar_tabs.js устанавливаю AUTO_HIDE = true, то в такой комбинации панель sidebar_tabs при нажатии на кнопку или не появляется вообще, или один раз рандомно появляется и снова перестаёт реагировать на нажатие кнопки.
  • Если убираю на странице настроек UCF у вертикального тулбара чек-бокс "Automatically hide" и в файле sidebar_tabs.js устанавливаю AUTO_HIDE = false, то в такой комбинации панель sidebar_tabs при нажатии на кнопку появляется, сдвигая контент на странице.

Как сделать так, чтобы при постоянно видимом вертикальном тулбаре, при нажатии на кнопку панель sidebar_tabs появлялась поверх контента на странице?


Firefox 128 (64-bit) on windows 10 (64-bit).

Отсутствует

 

№164726-06-2024 21:30:14

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 1644
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V. пишет

одно в scriptsallchrome

Точно, спасибо. Даже не задумывался об этом.
   

Den199 пишет

Как сделать так, чтобы при постоянно видимом вертикальном тулбаре, при нажатии на кнопку панель sidebar_tabs появлялась поверх контента на странице?

Вот мне тоже по наведению не нравится, хотелось бы иметь возможность вызывать кнопкой. Но это не к sidebar_tabs относится, а к кнопке. Так будет меньше времени тратиться, а сейчас надо медленно позиционировать курсор или увеличивать область срабатывания, первое тратит время и отвлекает внимание, а второе приведет к ложным вызовам.

Отредактировано _zt (26-06-2024 21:41:31)

Отсутствует

 

№164828-06-2024 10:10:04

Den199
Участник
 
Группа: Members
Зарегистрирован: 26-06-2024
Сообщений: 7
UA: Chrome 126.0

Re: UCF - ваши кнопки, скрипты…

_zt пишет

Вот мне тоже по наведению не нравится, хотелось бы иметь возможность вызывать кнопкой. Но это не к sidebar_tabs относится, а к кнопке.

Всё равно не понимаю:( как скрестить кнопку+sidebar_tabs для нужного мне режима отображения.
По отдельной кнопке "Декодеры" https://forum.mozilla-russia.org/viewto … 21#p810021 панель sidebar_tabs ведёт себя ровно так как мне нужно. Я нажимаю на кнопку, выезжает боковая панель, не сдвигая содержимое страницы, а отображается поверх.
Более того, после первого открытия боковой панели этой отдельной кнопкой, начинает корректно работать (до закрытия браузера) и родная кнопка sidebar_tabs.

Есть ли какой-то вариант сделать так, чтобы нажимая на родную кнопку sidebar_tabs, выезжала боковая панель, но не сдвигая страницу вправо, а поверх содержимого страницы?

Отредактировано Den199 (28-06-2024 11:23:49)


Firefox 128 (64-bit) on windows 10 (64-bit).

Отсутствует

 

№164928-06-2024 13:17:41

Vitaliy V.
Участник
 
Группа: Members
Зарегистрирован: 19-09-2014
Сообщений: 2186
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Den199 пишет

сделать так, чтобы нажимая на родную кнопку sidebar_tabs, выезжала боковая панель, но не сдвигая страницу вправо, а поверх содержимого страницы?

Хорошо добавил параметр SHOW_HIDE https://github.com/VitaliyVstyle/Vitali … abs.js#L41
Параметр влияет на кнопку (кроме кнопки закрытия на самом Sidebar Tabs) и сочетания клавиш. Например клик по кнопке показывает панель, для скрытия можно использовать повторный клик или клик в области контента.
Для полного закрытия Sidebar Tabs (то что делала кнопка и раньше) можно использовать Shift + ЛКМ по кнопке, или без модификаторов по кнопке закрытия Sidebar Tabs.
Полное закрытие значит выгрузка контента из Sidebar Tabs, удаление всех слушателей а значит отключение показа панели по наведению курсора на область срабатывания.

Добавлено 28-06-2024 13:26:14

_zt пишет

Вот мне тоже по наведению не нравится, хотелось бы иметь возможность вызывать кнопкой.

Ну не знаю показать можно сделать но чтобы скрыть тоже кликать по кнопке придется, там по СКМ добавить можно или как?

Dumby пишет

папка long_left_click
Загружать из неё в сандбокс скрипт startup.js
Например

А почему не установить расширение например так
AddonManager.installBuiltinAddon("resource://..."); ?

Отредактировано Vitaliy V. (28-06-2024 15:50:21)

Отсутствует

 

№165028-06-2024 15:13:53

_zt
Участник
 
Группа: Members
Зарегистрирован: 10-11-2014
Сообщений: 1644
UA: Firefox 128.0

Re: UCF - ваши кнопки, скрипты…

Vitaliy V.
А закрывать по щелчку в поле контента нельзя? Но только именно контента, а не вкладок или родного сайдбара с TST.
Я оттуда не открываю вкладки, только поиск, добавление и микропересортировка, так что думаю нормально будет. Да повесьте пожалуйста на СКМ, а я потом переставлю, если понадобится. И, если можно, пример для Ctrl+ЛКМ.

Отредактировано _zt (28-06-2024 15:44:03)

Отсутствует

 

Board footer

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