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

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

№1045113-06-2021 09:40:45

Retif
Участник
 
Группа: Members
Зарегистрирован: 14-09-2014
Сообщений: 111
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

А подскажите плиз, вот теперь в 89-м, на форумах, в формах ответа (в том числе на этом), при установке в нее курсора, рамка подкрашивается синим, вот так:

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

ACtC-3dHnTUPZdKQrDrodByJ4DTLRZ03Q0_k_AK3ZO-mqlgOzcXcy0NtQF-xjglG5gIPhU-AaFWXGKeGlt8YLBYVuCqFalmMJ1dmz57Y-6bwwFzCStBYyQdUQu8BNNJR49NoKKfTJzKzDo7MCjdTfmtAKMJe=w963-h197-no

Как можно цвет и толщину поменять обратно, чтобы было, как в 88-м?

скрытый текст
ACtC-3fzfBvs9FD1KDhVN9IwKY1Uxyl8SMja7d2ml2dG8CxULzHndYPhqThXjjDcfpMZHdNUn1B03uylH5hdlZ3fr6WCR9XnuV7DFuQj06Nu4D7u91ZApzWUb1uxiYWr3q4-Eg0MjLbRjgVihdwF2oG_HO7_=w762-h158-no

Отредактировано Retif (13-06-2021 09:41:10)

Отсутствует

 

№1045213-06-2021 14:11:13

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

Re: Настройка внешнего вида Firefox в userChrome.css

Retif
Код из полной темы Vitaliy V., немного мной подрихтованный. Цвета свои используйте.

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

Выделить код

Код:

@-moz-document regexp("(?:https?|ftp|file):\/\/.*") {
input, textarea {
    border: 1px solid transparent !important;
    outline: 1px solid rgba(131,137,150,.5) !important;
}
input:focus, textarea:focus {
    border: 1px solid transparent !important;
    outline: 1px solid rgba(49,140,231,.5) !important;
}
}

Отсутствует

 

№1045313-06-2021 14:24:59

Retif
Участник
 
Группа: Members
Зарегистрирован: 14-09-2014
Сообщений: 111
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

_zt, что-то на рамку формы ответа вообще ноль реакции, зато цвет меню "File, Edit, View" и панели вкладок изменились :/

Отсутствует

 

№1045413-06-2021 14:41:15

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

Re: Настройка внешнего вида Firefox в userChrome.css

Retif
Куда засунули, то и изменил. Причем тут браузер? Вы стиль для контента просили.

Себе так пока оставил. На мой взгляд лучше подходит для темных и светлых страниц. Прозрачность черного можно увеличить (уменьшить число).

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

Выделить код

Код:

@-moz-document regexp("(?:https?|ftp|file):\/\/.*") {
input, textarea {
    border: 1px solid rgba(131,137,150,.6) !important;
    outline: 1px solid transparent !important;
}
input:focus, textarea:focus {
    border: 1px solid rgba(10,10,10,.7) !important;
    outline: 1px solid rgba(49,140,231,.9) !important;
}
}

Отсутствует

 

№1045513-06-2021 15:07:35

Retif
Участник
 
Группа: Members
Зарегистрирован: 14-09-2014
Сообщений: 111
UA: Chrome 91.0

Re: Настройка внешнего вида Firefox в userChrome.css

_zt, а куда надо вставлять этот код? Я кроме userChrome.css ничего не знаю, извиняюсь.

Отсутствует

 

№1045613-06-2021 15:16:30

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

Re: Настройка внешнего вида Firefox в userChrome.css

_zt пишет

Код из полной темы Vitaliy V., немного мной подрихтованный

Не было у меня такого кроме первой строки с regexp.
Может тогда так

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

Выделить код

Код:

@-moz-document regexp("(?:https?|ftp|file):\/\/.*") {
input:not([type="file"],[type="image"]):focus-visible,
select:focus-visible,
button:focus-visible,
textarea:focus-visible {
  outline: 1px solid Highlight;
  outline-offset: -1px;
}
}

Отсутствует

 

№1045713-06-2021 15:47:13

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Я про нее и говорил.
Дело не в стиле, он его в userChrome пихает.
   
Retif
userChrome.css для браузера, userContent для контента. Я не знаю что еще сказать, воспользуйтесь поиском что ли.

Отсутствует

 

№1045813-06-2021 15:50:46

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

Re: Настройка внешнего вида Firefox в userChrome.css

_zt пишет

Дело не в стиле, он его в userChrome пихает.

Это понятно но ваш с !important; ломает стили сайтов например на yandex

Отредактировано Vitaliy V. (13-06-2021 15:51:05)

Отсутствует

 

№1045913-06-2021 16:30:40

Retif
Участник
 
Группа: Members
Зарегистрирован: 14-09-2014
Сообщений: 111
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

_zt пишет

userChrome.css для браузера, userContent для контента. Я не знаю что еще сказать, воспользуйтесь поиском что ли.

Да не, просто имя файла не знал, спасибо, всё получилось.

Отсутствует

 

№1046013-06-2021 17:35:38

leshiy_odessa
Участник
 
Группа: Members
Зарегистрирован: 13-02-2009
Сообщений: 294
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Я правильно убрал «ВОСПРОИЗВОДИТСЯ» в табе или есть решение получше?

Выделить код

Код:

hbox.tab-secondary-label{display: none !important;}

Отсутствует

 

№1046113-06-2021 22:37:20

sandro79
Участник
 
Группа: Members
Зарегистрирован: 15-11-2017
Сообщений: 1750
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V.
Dumby
Ну подскажите, как убрать это мелькание текста на вкладке при наведении указателя? Имею в виду окрашивание затенённого текста в основной цвет.
За недолгое время периодического использования 89+, уже начинает нервировать. --tab-label-mask-size пробовал подобрать, но тогда и затенения в конце заголовка не будет, тоже так себе решение.

скрытый текст
Image_001.png

leshiy_odessa пишет

Я правильно убрал «ВОСПРОИЗВОДИТСЯ» в табе или есть решение получше?

Vitaliy V. так сдвигал, я так скрывал.

Отсутствует

 

№1046213-06-2021 23:29:40

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

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

ломает стили сайтов например на yandex

Да уже заметил, поля нестандартной формы криво подсвечиваются. Вот эта часть вроде ничего не ломает, стандартно она 2-х пиксельная.

Выделить код

Код:

input, textarea {
    border: 1px solid rgba(131,137,150,.5);
    outline: 1px solid transparent;
}

Да, с контентом надо быть аккуратнее с !important;.

Отсутствует

 

№1046314-06-2021 00:56:51

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

Re: Настройка внешнего вида Firefox в userChrome.css

sandro79 пишет

--tab-label-mask-size пробовал подобрать, но тогда и затенения в конце заголовка не будет, тоже так себе решение.

почему не будет?

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

Выделить код

Код:

.tabbrowser-tab {
  --tab-label-mask-size: 2em !important;
}

можно ещё здесь прозрачность подкрутить было 11%

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

Выделить код

Код:

.tabbrowser-tab:hover > .tab-stack > .tab-background:not([selected=true], [multiselected]) {
  background-color: color-mix(in srgb, currentColor 8%, transparent) !important;
}

или добавить сюда например
color: gray !important;
чтобы другим цветом выделялось

Отредактировано Vitaliy V. (14-06-2021 01:13:33)

Отсутствует

 

№1046414-06-2021 01:34:17

sandro79
Участник
 
Группа: Members
Зарегистрирован: 15-11-2017
Сообщений: 1750
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

почему не будет?

Ну у меня его нет, если уменьшить значение. У меня вкладка то короче, на дефолтной может и будет. Этот вариант уже испробовал. Это не отменяет перекрашивание затенённого текста в основной. --tab-label-mask-size: 2em; - дефолтное значение в инспекторе, я его и менял.

Посмотрел на дефолтной вкладке, поведение обратное тому, что у меня. Виталий, ну может можно как-то сделать, чтоб текст на вкладке не реагировал при наведении указателя, не получается у меня выловить этот момент.

можно ещё здесь прозрачность подкрутить было 11%

Нет, не работает. Всё равно белым затенённый текст становится при наведении. Мне бы на активной вкладке сделать, так как у меня переключение скриптом при наведении идёт. Код использовал и ваш с color: gray !important; и такой

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

Выделить код

Код:

.tabbrowser-tab:hover > .tab-stack > .tab-background {
  background-color: color-mix(in srgb, currentColor 8%, transparent) !important;
  color: gray !important;
}

Отсутствует

 

№1046514-06-2021 01:46:45

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

Re: Настройка внешнего вида Firefox в userChrome.css

sandro79 пишет

--tab-label-mask-size: 2em; - дефолтное значение в инспекторе, я его и менял.

В том то и дело что нет когда наводится курсор он становится 1em из-за этого кода

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

Выделить код

Код:

.tabbrowser-tab[visuallyselected="true"]:hover, #tabbrowser-tabs:not([closebuttons="activetab"]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab:not([visuallyselected="true"]):hover {
    --tab-label-mask-size: 1em;
}


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

Ну или так задать mask-image

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

Выделить код

Код:

.tab-label-container[textoverflow][labeldirection=ltr]:not([pinned]),
.tab-label-container[textoverflow]:not([labeldirection], [pinned]):-moz-locale-dir(ltr) {
  mask-image: linear-gradient(to left, transparent, black 2em) !important;
}

.tab-label-container[textoverflow][labeldirection=rtl]:not([pinned]),
.tab-label-container[textoverflow]:not([labeldirection], [pinned]):-moz-locale-dir(rtl) {
  mask-image: linear-gradient(to right, transparent, black 2em) !important;
}

А вот ещё что может влиять

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

Выделить код

Код:

.tab-close-button {
    margin-inline-end: calc(var(--inline-tab-padding) / -2);
    width: 24px;
    height: 24px;
    padding: 7px;
}


когда курсор не на вкладке активен этот код
скрытый текст

Выделить код

Код:

.tabbrowser-tab:not(:hover) > .tab-stack > .tab-content > .tab-close-button {
    padding-inline-start: 0;
    width: 17px;
}

настройте как надо

Отредактировано Vitaliy V. (14-06-2021 02:15:10)

Отсутствует

 

№1046614-06-2021 02:06:27

sandro79
Участник
 
Группа: Members
Зарегистрирован: 15-11-2017
Сообщений: 1750
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

В том то и дело что нет когда наводится курсор он становится 1em из-за этого кода

Всё, теперь понятно.

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

Да вот же, вкладки покрашены стилем Ариса, да и много ещё там у него изменений по виду вкладок.

Ну или так задать mask-image

А вот это сработало на моих рихтованных вкладках.

скрытый текст
Image_001.png
Огромное Вам спасибо за помощь! :beer:

Добавлено 14-06-2021 02:20:20

Vitaliy V. пишет

А вот ещё что может влиять

Да, к этому, и не только, я тоже руку приложил. Кнопку вообще заменил, рихтовать там пришлось порядочно после этого.

когда курсор не на вкладке активен этот код
настройте как надо

Спасибо! Завтра буду разбираться основательно.

Отредактировано sandro79 (14-06-2021 02:20:20)

Отсутствует

 

№1046714-06-2021 07:54:24

Алексей У.
Участник
 
Группа: Members
Зарегистрирован: 10-04-2021
Сообщений: 182
UA: Firefox 68.0

Re: Настройка внешнего вида Firefox в userChrome.css

Подскажите, пожалуйста, код для userContent.css, с помощью которого можно вернуть старый нормальный выпадающий список поисковой строки Яндекса (который во всю ширину страницы). Или хотя бы убрать все скругления и заменить их на углы, а также придвинуть список вплотную к нижней границе поисковой строки.

скрытый текст
5915acd1ce29.jpg

Отсутствует

 

№1046814-06-2021 08:04:38

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

Добавил инструкцию по установке WebExtensions Experiments https://github.com/VitaliyVstyle/Vitali … xperiments
а то некоторые не знают как или им старый конфиг подсовывают а там конечно нет настройки extensions.experiments.enabled

Если следую инструкции, то у меня почему-то пропадают все кнопки Add Toolbar Buttons, хотя само расширение установлено. Все остальные расширения тоже работают. В чём может быть причина?

Отредактировано voqabuhe (14-06-2021 08:04:55)

Отсутствует

 

№1046914-06-2021 08:45:53

bezuma
Участник
 
Группа: Members
Откуда: Москва
Зарегистрирован: 26-01-2014
Сообщений: 256
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

voqabuhe пишет

Если следую инструкции, то у меня почему-то пропадают все кнопки Add Toolbar Buttons, хотя само расширение установлено. Все остальные расширения тоже работают. В чём может быть причина?

Решил эту проблему только проснувшись (осенило во сне :)) - изменил порядок в своем конфиге:
1. код от Dumby
2. код от Vitaliy V для UCF
3. код от wvxwxvw  для скриптов по методу №3 с сайта - https://github.com/Aris-t2/CustomJSforFx (прежде он был первым)

Отсутствует

 

№1047014-06-2021 09:59:30

falcon1598
Участник
 
Группа: Members
Зарегистрирован: 02-02-2019
Сообщений: 71
UA: Firefox 78.0

Re: Настройка внешнего вида Firefox в userChrome.css

del

Отредактировано falcon1598 (17-06-2021 19:59:37)

Отсутствует

 

№1047114-06-2021 13:54:49

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

Re: Настройка внешнего вида Firefox в userChrome.css

voqabuhe пишет

Если следую инструкции, то у меня почему-то пропадают все кнопки Add Toolbar Buttons, хотя само расширение установлено. Все остальные расширения тоже работают. В чём может быть причина?

Много раз это сказано уже было,
вот добавил ещё к инструкции
Если уже используется др. config.js то следует заменить или совместить его содержимое     
при этом важно чтобы данный код был в самом начале файла   


И ещё может быть ошибка у тех кто использует этот метод загрузки скриптов https://github.com/Aris-t2/CustomJSforF … /config.js
В нем надо удалить константу
const Cu = Components.utils;

Отредактировано Vitaliy V. (14-06-2021 13:59:07)

Отсутствует

 

№1047214-06-2021 14:25:55

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Vitaliy V. пишет

Много раз это сказано уже было

Ну сорри, как-то мимо меня просвистело.

важно чтобы данный код был в самом начале файла

Именно этого и нехватало. Спасибо.

Отсутствует

 

№1047314-06-2021 17:01:27

Аноним125876
Участник
 
Группа: Members
Зарегистрирован: 08-01-2021
Сообщений: 13
UA: Firefox 89.0

Re: Настройка внешнего вида Firefox в userChrome.css

Ребят подскажите, воспользовался стилем CSS из темы чтобы вкладки опустить вниз, и у меня теперь над строкой меню тонкая белая полоса...
Ps: и еще сюда же., можно ли полностью убрать строку меню как в полноэкранном режиме? (что бы кнопки свернуть/развернуть/закрыть были в адресной строке как в полноэкранном режиме)

Отсутствует

 

№1047414-06-2021 22:02:14

казявка
Участник
 
Группа: Members
Зарегистрирован: 13-08-2014
Сообщений: 139
UA: Firefox 91.0

Re: Настройка внешнего вида Firefox в userChrome.css

varmed пишет

sandro79 пишетvarmedскрытый текстВыделить кодКод:#urlbar-container,
#search-container {
    padding: 1px 0 !important;
    margin-inline: 1px !important; /* необязательно */
}Этот код вообще ни на что не повлиял.

а мне на ночнушке 91.0a1 именно этот код повлиял - СПС БЛШ!

Отсутствует

 

№1047515-06-2021 11:54:05

sandro79
Участник
 
Группа: Members
Зарегистрирован: 15-11-2017
Сообщений: 1750
UA: Firefox 78.0

Re: Настройка внешнего вида Firefox в userChrome.css

Аноним125876 пишет

можно ли полностью убрать строку меню как в полноэкранном режиме?

Там же, в посте, скрипт есть для этого комплекта. Добавить нужно в файл custom_script_win.js
Первый код скрипта нужно добавить выше строки  createSpecialWidgets() {, второй ниже строки // this.autohidesidebar.init(); // <-- Auto Hide Sidebar, ну а третий кусок, как сказано в посте в конце, custom_script_win.js Должна получится такая конструкция:

скрытый текст
______.PNG

Выделить код

Код:

// Этот скрипт работает в главном окне браузера если включено в настройках

var ucf_custom_script_win = {
    initialized: false,
    get unloadlisteners() {
        delete this.unloadlisteners;
        window.addEventListener("unload", this, { once: true });
        return this.unloadlisteners = [];
    },
    load() {
        if (this.initialized)
            return;
        this.initialized = true;
        // this.specialwidgets.init(); // <-- Special Widgets
        // this.autohidesidebar.init(); // <-- Auto Hide Sidebar
        this.menubarvisibilitychance.setbuttonboxwidth();
        /* ************************************************ */

        // Здесь может быть ваш код который сработает по событию "load" не раньше

        /* ************************************************ */
    },
    handleEvent(e) {
        this[e.type](e);
    },
    unload() {
        this.unloadlisteners.forEach(str => {
            try {
                this[str].destructor();
            } catch (e) {}
        });
    },
menubarvisibilitychance: {
        buttons: null,
        buttonsfullscreen: null,
        constructor() {
            var menubar = this.menubar = document.querySelector("#toolbar-menubar");
            if (!menubar) return;
            this.observer = new MutationObserver(() => {
                this.settoolbarvisibility();
            });
            this.observer.observe(menubar, {
                attributeFilter: ["autohide", "inactive"],
                attributes: true,
            });
            this.sizemodechange = new MutationObserver(() => {
                this.setbuttonboxwidth();
            });
            this.sizemodechange.observe(document.documentElement, {
                attributeFilter: ["sizemode"],
                attributes: true,
            });
            ucf_custom_script_win.unloadlisteners.push("menubarvisibilitychance");
            this.settoolbarvisibility();
        },
        settoolbarvisibility() {
            var docElm = document.documentElement;
            if (this.menubar.getAttribute("autohide") == "true" && this.menubar.getAttribute("inactive") == "true") {
                docElm.setAttribute("v_menubar_autohide", true);
                this.setbuttonboxwidth();
            } else
                docElm.setAttribute("v_menubar_autohide", false);
        },
        width(outerRect, innerRect) {
            if (!window.RTL_UI)
                this.width = (outerRect, innerRect) => outerRect.right - innerRect.left;
            else
                this.width = (outerRect, innerRect) => innerRect.right - outerRect.left;
            return this.width(outerRect, innerRect);
        },
        setbuttonboxwidth() {
            var buttons, docElm = document.documentElement;
            if (docElm.getAttribute("sizemode") != "fullscreen")
                buttons = (this.buttons || (this.buttons = this.menubar.querySelector(".titlebar-buttonbox-container")));
            else
                buttons = (this.buttonsfullscreen || (this.buttonsfullscreen = document.querySelector("#window-controls")));
            var innerRect = buttons.getBoundingClientRect();
            if (innerRect.width < 1) {
                docElm.style.setProperty("--v-titlebar-buttonbox-container-width", "0px");
                return;
            }
            var outerRect = docElm.getBoundingClientRect();
            docElm.style.setProperty("--v-titlebar-buttonbox-container-width", `${this.width(outerRect, innerRect)}px`);
        },
        destructor() {
            this.observer.disconnect();
            this.sizemodechange.disconnect();
            this.observer = null;
            this.sizemodechange = null;
        }
    },
    specialwidgets: {
        _timer: null,
        get Customizable() {
            delete this.Customizable;
            if ("createSpecialWidget" in CustomizableUI)
                return this.Customizable = CustomizableUI;
            var scope = null;
            try {
                scope = Cu.import("resource:///modules/CustomizableUI.jsm", {}).CustomizableUIInternal;
            } catch (e) { }
            return this.Customizable = scope;
        },
        init() {
            if (!("CustomizableUI" in window) || !("gCustomizeMode" in window))
                return;
            ucf_custom_script_win.unloadlisteners.push("specialwidgets");
            window.addEventListener("customizationready", this);
        },
        destructor() {
            window.removeEventListener("customizationready", this);
        },
        handleEvent(e) {
            this[e.type](e);
        },
        customizationchange() {
            clearTimeout(this._timer);
            this._timer = setTimeout(() => {
                this.createSpecialWidgets();
            }, 1000);
        },
        customizationready() {
            if (!this.Customizable)
                return;
            this.createSpecialWidgets();
            window.addEventListener("customizationchange", this);
            window.addEventListener("customizationending", this);
        },
        customizationending() {
            window.removeEventListener("customizationchange", this);
            window.removeEventListener("customizationending", this);
        },
        createSpecialWidgets() {
            try {
                let fragment = document.createDocumentFragment();
                if (this.findSpecialWidgets("spring")) {
                    let spring = this.Customizable.createSpecialWidget("spring", document);
                    spring.setAttribute("label", "Растягивающийся интервал");
                    fragment.append(gCustomizeMode.wrapToolbarItem(spring, "palette"));
                }
                if (this.findSpecialWidgets("spacer")) {
                    let spacer = this.Customizable.createSpecialWidget("spacer", document);
                    spacer.setAttribute("label", "Интервал");
                    fragment.append(gCustomizeMode.wrapToolbarItem(spacer, "palette"));
                }
                if (this.findSpecialWidgets("separator")) {
                    let separator = this.Customizable.createSpecialWidget("separator", document);
                    separator.setAttribute("label", "Разделитель");
                    fragment.append(gCustomizeMode.wrapToolbarItem(separator, "palette"));
                }
                gCustomizeMode.visiblePalette.append(fragment);
            } catch (e) {}
        },
        findSpecialWidgets(string) {
            try {
                if (!gCustomizeMode.visiblePalette.querySelector(`toolbar${string}[id^="customizableui-special-${string}"]`))
                    return true;
            } catch (e) {}
            return false;
        }
    },
    autohidesidebar: {
        events: ["dragenter", "drop", "dragexit", "MozLayerTreeReady"],
        init() {
            var sidebar = this.sidebar = document.querySelector("#sidebar-box");
            if (!sidebar) return;
            for (let type of this.events)
                sidebar.addEventListener(type, this);
            ucf_custom_script_win.unloadlisteners.push("autohidesidebar");
            var popup = this.popup = document.querySelector("#sidebarMenu-popup");
            if (!popup) return;
            popup.addEventListener("popupshowing", this);
        },
        destructor() {
            var sidebar = this.sidebar;
            for (let type of this.events)
                sidebar.removeEventListener(type, this);
            if (!this.popup) return;
            this.popup.removeEventListener("popupshowing", this);
        },
        handleEvent(e) {
            this[e.type](e);
        },
        MozLayerTreeReady(e) {
            if (e.originalTarget?.id == "webext-panels-browser" && !this.sidebar.hasAttribute("sidebardrag")) {
                window.addEventListener("mousedown", () => {
                    this.drop();
                }, { once: true });
                this.dragenter();
            }
        },
        popupshowing() {
            this.popup.addEventListener("popuphidden", () => {
                this.drop();
            }, { once: true });
            this.dragenter();
        },
        dragenter() {
            if (!this.sidebar.hasAttribute("sidebardrag"))
                this.sidebar.setAttribute("sidebardrag", "true");
        },
        drop() {
            if (this.sidebar.hasAttribute("sidebardrag"))
                this.sidebar.removeAttribute("sidebardrag");
        },
        dragexit(e) {
            var sidebar = this.sidebar;
            var boxObj = sidebar.getBoundingClientRect(), boxScrn = !sidebar.boxObject ? sidebar : sidebar.boxObject;
            if ((!e.relatedTarget || e.screenY <= (boxScrn.screenY + 5) || e.screenY  >= (boxScrn.screenY + boxObj.height - 5)
                || e.screenX <= (boxScrn.screenX + 5) || e.screenX >= (boxScrn.screenX + boxObj.width - 5))
                && sidebar.hasAttribute("sidebardrag"))
                sidebar.removeAttribute("sidebardrag");
        }
    },
};

if (window.document.readyState != "complete") {
    window.addEventListener("load", function load() {
        ucf_custom_script_win.load();
    }, { once: true });
} else
    ucf_custom_script_win.load();
ucf_custom_script_win.menubarvisibilitychance.constructor();

Отсутствует

 

Board footer

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