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

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

№113-03-2018 23:41:36

banbot
Moderator
 
Группа: Moderators
Зарегистрирован: 23-12-2007
Сообщений: 5283
UA: Firefox 61.0

Вышел Firefox 59.0

Состоялся релиз web-браузера Firefox 59, а также мобильной версии Firefox 59 для платформы Android. В ближайшие часы ожидается обновление ветки с длительным сроком поддержки 52.7.0. В ближайшее время на стадию бета-тестирования перейдёт ветка Firefox 60 (ESR), релиз которой намечен на 9 мая.
Основные новшества:

  • Продолжена работа по оптимизации производительности:  Ускорена загрузка содержимого стартовой страницы. Переработан механизм кэширования - если определяется, что дисковый ввод/вывод на текущей системе слишком медленный, то параллельно с обращением к кэшу на диске отправляется сетевой запрос и используется первый полученный результат. В ситуации наличия медленных дисков и высокоскоростного сетевого соединения данный подход позволяет ускорить загрузку страниц. На платформе macOS включена отрисовка в отдельном потоке (OMTP, Off-Main-Thread Painting), которая ранее уже была включена для Linux и Windows;
  • На стартовой странице появилась возможность перегруппировки избранных сайтов через перетаскивание пиктограмм мышью (Drag-and-drop), а также предоставлены средства для гибкой настройки выводимых блоков и их оформления;

    0_1520960286.png

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

    0_1520961269.png

  • В настройки (about:preferences) в секцию "Безопасность и Приватность" добавлена опция для временного блокирования вывода сайтами запросов на доставку уведомлений, а также на запросов доступа к микрофону, камере и местоположению. Выставление данной опции не влияет на явно добавленные пользователем разрешения для заслуживающих доверия сайтов;

    0_1520963052.png

  • В приватном режиме при обращении к внешнему ресурсу в заголовке HTTP Referer теперь передаётся только имя хоста, а путь и все параметры запроса вырезаются. Т.е. вместо "Referer: https://www.example.com/путь/?аргументы" будет передан "Referer: https://www.example.com/". Подобное поведение поможет предотвратить передачу лишних данных о пользователе рекламным сетям и прочим внешним ресурсам;
  • Прекращена поддержка сборки с использованием библиотеки GTK+ 2. Для платформы GNU/Linux теперь можно использовать только GTK+ 3;
  • Расширен API WebExtensions: улучшена поддержка децентрализованных протоколов (Secure Scuttlebutt, DATproject и IPFS), добавлена возможность динамической регистрации скриптов обработки контента, реализованы новые свойства для тем оформления, управления вкладками и доступом к настройкам, добавлены API  pageAction, browserAction и SidebarAction.
  • Улучшены возможности, связанные с организацией коммуникаций в режиме реального времени (WebRTC): реализован интерфейс  RTCRtpTransceiver, позволяющий создавать приёмопередатчики, использующие API RTCPeerConnection (RTCPeerConnection.addTransceiver() ) и предоставляющие более тонкий контроль за вызовами. Добавлена серия методов, необходимых для поддержки хорошо масштабируемых телеконференций;
  • В реализации формата WebVTT (Web Video Text Tracks, используется для вывода текста поверх видео) включена по умолчанию поддержка регионов (секция REGION, определяющая область вывода текста);
  • Добавлена поддержка API PointerEvents, позволяющего контролировать в одном обработчике все события, связанные с перемещением указателя. Добавлены отдельные устройства для управления указателем ввода для мыши, пера и сенсорного экрана;
  • Для HTML-элемента  textarea добавлена поддержка атрибута autocomplete, который позволяет управлять включением или выключением автозаполнения форм;
  • Добавлено новое CSS-свойство overscroll-behavior, позволяющее изменить поведение при достижении конца области прокрутки;
  • Реализована поддержка липкого позиционирования CSS - position:sticky, при которой можно определить, чтобы при скроллинге часть блока оставалась видимой, пока сам блок полностью не выйдет за пределы экрана. Например, можно легко сделать так, чтобы заголовок с пояснениями по столбцам для длинной таблицы был виден, пока видна хоть одна ячейка таблицы, не прибегая к усложнениям в виде перехвата событий прокрутки и переключения позиции с "relative" на "fixed";
  • Добавлено CSS-свойство font-optical-sizing;
  • Для вычисления задаваемых через CSS значений цветов и значений  media query  теперь можно использовать функцию calc();
  • Прекращена поддержка открытия в основной странице URL "data:", содержимое которых может быть использовано для отображения в адресной строке информации, вводящей пользователя в заблуждение (фишинга). Отныне не будет работать открытие ссылок "data:", которые включают в себя непосредственно данные страницы, через JavaScript-методы window.open("data:...") и window.location = "data:...", а также клики на ссылки с ‹a href="data:..."› и редиректы через meta refresh и код состояния 302. При этом останутся работоспособны такие способы как явное копирование блока "data:" в адресную строку через буфер обмена и открытие блоков с MIME-типами "plain/text", "data:application/pdf", "data:application/json" и "image/*" (за исключением "data:image/svg+xml");
  • Попытка загрузки изображений с внешних областей, требующих аутентификации, теперь не будет приводить к выводу диалога HTTP-аутентификации;
  • Передаваемые при HTTP-аутентификации значения имени пользователя и пароля теперь передаются в кодировке utf-8 вместо ISO-8859-1, что соответствует поведению других браузеров;
  • Расширены инструменты для web-разработчиков: В интерфейсе инспектирования хранилищ информация о  Cookie теперь включает столбец со значением флага sameSite. В инструменте Rulers в верхнем правом углу обеспечено отображение текущих размеров области просмотра. В инструменте Responsive Design Mode добавлена возможность установки разрешения экрана при помощи клавиш управления курсором. Во вкладке с HTTP-заголовками в Network Monitor реализовано отображение кодов ответа. Во вкладке Response интерфейса сетевого мониторинга обеспечен показ эскизов результатов отрисовки загруженного HTML-контента.

    response-html-preview.png"

  • В версии для Android добавлена поддержка воспроизведения потокового видео с использованием протокола HLS (HTTP Live Streaming). Удалена спецстраница "about:", вместо которой следует использовать секцию меню  "About Firefox". Обеспечена возможность регистрации Firefox как Assist App для организации поиска через Firefox длительным нажатием на клавишу Home. Отображение видео на весь экран теперь всегда производится в ландшафтном режиме.

Кроме новшеств и исправления ошибок в Firefox 59 закрыты 18 уведомлений об уязвимостях. В двух уведомлениях, охватывающих 21 ошибку (под CVE-2018-5126 сведено 19 ошибок и под CVE-2018-5125 сведено 12 ошибок) устранены  критические проблемы, которые потенциально могут привести к выполнению кода злоумышленника при открытии специально оформленных страниц.

Загрузить:

    Русская версия:
        ico-win.png Windows (32-bit) (установка через Интернет)
        ico-win.png Windows (32-bit) (установка в автономном режиме)
        ico-win.png Windows (64-bit) (установка в автономном режиме)
        ico-osx-uni.png Mac OS X (32-bit/64-bit)
        ico-tux.png Linux (32-bit)
        ico-tux.png Linux (64-bit)

    Английская версия:
        ico-win.png Windows (32-bit) (установка через Интернет)
        ico-win.png Windows (32-bit) (установка в автономном режиме)
        ico-win.png Windows (64-bit) (установка в автономном режиме)
        ico-osx-uni.png Mac OS X (32-bit/64-bit)
        ico-tux.png Linux (32-bit)
        ico-tux.png Linux (64-bit)

   Другие языки
   
   android.png Android (с Google Play)

        android.png Android (ARMv7, 4.1 Jelly Bean и выше) (мультиязычная версия с сайта Mozilla)
        android.png Android (x86, 4.1 Jelly Bean и выше) (мультиязычная версия с сайта Mozilla)
        android.png Android (ARMv7, 4.1 Jelly Bean и выше) (английская версия с сайта Mozilla)
        android.png Android (x86, 4.1 Jelly Bean и выше) (английская версия с сайта Mozilla)

   Другие языки

Что нового в Firefox 59 для разработчиков
Примечания к выпуску для Windows, Mac and Linux
Примечания к выпуску для Android

Новость взята с сайта opennet.ru


Do you feel lucky, punk?

Отсутствует

 

№214-03-2018 00:49:23

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 58.0

Re: Вышел Firefox 59.0

Когда-нибудь браузер треснет и лопнет по швам от инструментов для web-разработчиков.

Отсутствует

 

№314-03-2018 02:36:51

FMRUser
Участник
 
Группа: Members
Зарегистрирован: 01-03-2014
Сообщений: 817
UA: Firefox 57.0
Веб-сайт

Re: Вышел Firefox 59.0

Coroner
Они вроде и не мешают ни производительности, ни чему - если не пользоваться ими..)
Единственное могут иметь психологический эффект раздражения присутствием. Что то вроде - есть куча всего мне не нужного, значит тормозит браузер. Этакое нарушение эстетичности со стороны разработчиков по отношению ко мне любимому. :angel:
Да и., что то я не пойму, куда от мобильной версии четверть веса приложения откусили. :rolleyes:

Отсутствует

 

№414-03-2018 03:03:43

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 58.0

Re: Вышел Firefox 59.0

FMRUser пишет

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

Не знаю. :) Но когда люди от Симанки все куски отгрызают — они утверждают что всё работает быстрее и памяти меньше кушает.
Насчёт производительности и прочего — писали что и на Firefox это отгрызание действует положительно, сам не пробовал, как там и чего отгрызали — на совести авторов сборок. Даже не знаю возможно ли это вообще.

Не то что раздражает, просто когда видишь изменения в давно ожидаемой версии браузера, который по сути ещё недоделанный, а там значительные изменения лишь в инструментах разработки — невольно задумываешься: чего они там делают? Например может взяться и API WebExtensions домучать, или писатели дополнений так и будут по одной функции раз в два месяца получать?

FMRUser пишет

Да и., что то я не пойму, куда от мобильной версии четверть веса приложения откусили.

Задумались об оптимизации, может быть? Или кто-то случайно нашёл огромную кучу мусора.
Или что-то забыли. :D

Отсутствует

 

№514-03-2018 06:56:21

Niclaus
Участник
 
Группа: Members
Откуда: Мексика
Зарегистрирован: 10-11-2004
Сообщений: 169
UA: Firefox 58.0

Re: Вышел Firefox 59.0

TabMixPlus окончательно перестал работать. По крайней мере, не вызывается окно настроек, и не закрываются вкладки по клику на крестике. Откатился на 58.0.2 и запретил обновления. :angry:

Отсутствует

 

№614-03-2018 08:25:32

grassine
Участник
 
Группа: Members
Зарегистрирован: 06-07-2011
Сообщений: 79
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Всё стало на английском (русский языковый пакет установлен) в арчлинукс. Проблема арча или у кого ещё то же самое?
Сам отвечаю) Все языковые пакеты в репозитории помечены устаревшими. Значит чего-то нашли..

Отредактировано grassine (14-03-2018 08:32:09)

Отсутствует

 

№714-03-2018 08:54:03

dreamkz
Uchastnik
 
Группа: Members
Зарегистрирован: 04-03-2009
Сообщений: 784
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Вместо 300мб на 58.02 с одной открытой домашней страницей, теперь подъедает теперь 570мб памяти. Видимо, нужно на чистую переустановить?

Отсутствует

 

№814-03-2018 11:02:16

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 58.0

Re: Вышел Firefox 59.0

dreamkz пишет

Видимо, нужно на чистую переустановить?

А много ли дополнений установлено? 570мб это многовато.
Надо попробовать чистый профиль и посмотреть сколько сожрёт. Прикинуть на глаз — есть ли разница с 58.

Отсутствует

 

№914-03-2018 16:02:54

ofizer
Участник
 
Группа: Members
Зарегистрирован: 17-08-2013
Сообщений: 310
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Размер шрифта увеличился в about:addons:

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

Отсутствует

 

№1014-03-2018 16:12:04

Foma
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 14-03-2018
Сообщений: 6
UA: Firefox 58.0

Re: Вышел Firefox 59.0

После обновления Firefox с версии 58.2 до 59
У меня нормально не отображаются страницы любого поисковика (и любая веб страница)
вписанного как домашняя страница.
Все они выводяться на экран в виде фрагментов текста и изображения
а текст-ссылка отображается когда на нее наводится курсор мышки.

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

Отсутствует

 

№1114-03-2018 16:15:57

f00fc7c8
Участник
 
Группа: Members
Зарегистрирован: 02-10-2009
Сообщений: 668
UA: Firefox 52.0

Re: Вышел Firefox 59.0

ofizer пишет

Размер шрифта увеличился в about:addons:
скрытый текст

Банда идиотов :) Я только позавчера её настроил (держу новую версию, кастомизирую, ищу экстеншены, так-то на 52й :) ) Ну, ниче.. Пару строк в юзерхроме изменил..

Отсутствует

 

№1215-03-2018 00:51:45

Irishka
Участник
 
Группа: Members
Зарегистрирован: 15-03-2018
Сообщений: 2
UA: Firefox 58.0

Re: Вышел Firefox 59.0

Foma пишет

После обновления Firefox с версии 58.2 до 59 У меня нормально не отображаются страницы любого поисковика (и любая веб страница)вписанного как домашняя страница. Все они выводяться на экран в виде фрагментов текста и изображенияа текст-ссылка отображается когда на нее наводится курсор мышки.Если вписать их адрес в новой вкладке все отображается нормальнозакладки так же отображаются нормально

Такая же проблема. Не нашла как её решить. Откатилась до 58.2 версии, стало всё нормально. Запретила автоматическое обновление.

Отредактировано Irishka (15-03-2018 00:53:06)

Отсутствует

 

№1315-03-2018 01:05:45

Nerazzurro
Участник
 
Группа: Members
Зарегистрирован: 27-04-2015
Сообщений: 31
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Foma
Irishka

Данная проблема возникла у меня в ноябре 2017, когда 59 версия была еще Nightly (подробнее в теме Тестирование нестабильных сборок Firefox (Nightly))
Оказалось, она затронула тех, у кого отключен ClearType в системе. Второй вариант "решения" - отключить аппаратное ускорение.

Отсутствует

 

№1415-03-2018 03:06:36

Irishka
Участник
 
Группа: Members
Зарегистрирован: 15-03-2018
Сообщений: 2
UA: Firefox 58.0

Re: Вышел Firefox 59.0

Nerazzurro пишет

FomaIrishkaДанная проблема возникла у меня в ноябре 2017, когда 59 версия была еще Nightly (подробнее в теме Тестирование нестабильных сборок Firefox (Nightly))Оказалось, она затронула тех, у кого отключен ClearType в системе. Второй вариант "решения" - отключить аппаратное ускорение.

И правда, у меня ClearType отключён т.к. мой Windows 7 работает в режиме наивысшего быстродействия, а в этом режиме ClearType отключается  автоматически.
Спасибо :)

Отредактировано Irishka (15-03-2018 03:09:08)

Отсутствует

 

№1515-03-2018 12:02:08

dreamkz
Uchastnik
 
Группа: Members
Зарегистрирован: 04-03-2009
Сообщений: 784
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Coroner пишет

dreamkz пишет: Видимо, нужно на чистую переустановить?А много ли дополнений установлено? 570мб это многовато.Надо попробовать чистый профиль и посмотреть сколько сожрёт. Прикинуть на глаз — есть ли разница с 58.

Всего пять штук было. Из них три выключено и включаются только по мере надобности. Поставил новый профиль. Понаблюдаю :)

Отсутствует

 

№1615-03-2018 12:53:35

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 59.0

Re: Вышел Firefox 59.0

dreamkz пишет

Всего пять штук было. Из них три выключено и включаются только по мере надобности. Поставил новый профиль. Понаблюдаю

Я у себя разницы не вижу. Но у меня один процесс лишь, возможно что какие-то изменения меня и вовсе прошли стороной. :D
Единственное это неработоспособность некоторых кнопок CB (видимо из-за "data:text/css", "data:uri").

f00fc7c8 пишет

Пару строк в юзерхроме изменил..

Не подскажете эту пару строк?

Отсутствует

 

№1715-03-2018 16:38:43

Foma
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 14-03-2018
Сообщений: 6
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Nerazzurro пишет

Foma
Irishka

Данная проблема возникла у меня в ноябре 2017, когда 59 версия была еще Nightly (подробнее в теме Тестирование нестабильных сборок Firefox (Nightly))
Оказалось, она затронула тех, у кого отключен ClearType в системе. Второй вариант "решения" - отключить аппаратное ускорение.

Спасибо включил ClearType все работает, а ведь началось и на Firefox 58.2
редко но слетали иные страници.

Отсутствует

 

№1815-03-2018 18:47:28

Ultima2m
Участник
 
Группа: Members
Откуда: Россия
Зарегистрирован: 28-11-2013
Сообщений: 608
UA: Firefox 58.0

Re: Вышел Firefox 59.0

Народ, чего делать-то? Если на 58 старые расширения еще как-то работали, то на 59 вообще мрак. А на 60 видимо все кончится.
ТМР еще можно стилями как-то отработать. А СВ? Я к кнопкам привык.
Можно, конечно, на 58 посидеть годик, но это изначально тупиковый путь.
Кнопки это ведь скрипты в основном. Можно ли их как-то через greasemonkey / tampermonkey подключить?
Многие кнопки работают "в фоне" (Autocopy или Context Search, например), т.е. не требуют нажатия.
Можно ли такие кнопки конвертировать или через js+css как-то замутить?
В "Дополнительной панели" от Vitaliy V. кнопки работают же без СВ.

Отсутствует

 

№1915-03-2018 18:56:57

f00fc7c8
Участник
 
Группа: Members
Зарегистрирован: 02-10-2009
Сообщений: 668
UA: Firefox 52.0

Re: Вышел Firefox 59.0

Coroner пишет

Не подскажете эту пару строк?

Вот весь мой кусок про about:addons (последний кусочек, про версию, тупо украден у Ариса (ссылка есть), как её (версию) сейчас вытянуть не нашёл. Она появляется только в тултипе при наведении на аддонс штатно, ну и хранится только для этого аддонса. JS надо ваять. И, пардон, это юзерконтент, конечно.

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

Выделить код

Код:

/* Compact add-ons list */
@-moz-document url(chrome://mozapps/content/extensions/extensions.xul), url(about:addons) {
 .main-content {
  padding-bottom: 0px !important; padding-left: 0px !important; font-size: 12px !important;
 }

 #headered-views-content > #updates-view > #updates-list > scrollbox,
 #headered-views-content > #list-view > #addon-list > scrollbox {
  padding-left: 0px !important; padding-right: 0px !important;
 }

 #updates-list,#addon-list {
  border-top: 2px solid menu !important;
 }

 #categories {
  max-width: 70px !important;
 }

 #categories >.category {
  margin-left: 0px !important;margin-right: 0px !important;
 }

 #categories, #categories > .category, #categories > .category[selected=true],
 #updates-list .addon-view[selected=true], #list-view .addon-view[selected=true] {
  background-color: menu !important;
 }

 #updates-list .addon-view, #list-view .addon-view, #categories > .category {
  border-left: 0px !important; padding-left: 11px !important;
 }

 #addons-page .category-name,
 #updates-list .addon-view .warning, #list-view .addon-view .warning,
 #updates-list .description-outer-container, #list-view .description-outer-container {
  display: none !important;
 }

 #updates-list .addon-view[notification=warning], #list-view .addon-view[notification=warning] {
  background-color: #fffff0 !important;
 }

 #updates-list .addon-view *, #list-view .addon-view * {
  -moz-box-orient: horizontal !important;
  -moz-box-align: center !important;
  vertical-align: middle !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-right: 0 !important;
  white-space: nowrap !important;
 }

 #updates-list .addon-view .date-updated {
  color: green;
 }

 #updates-view>.view-header {
  border-bottom-width: 0px !important;
 }

 #updates-list .content-container, #list-view :-moz-any(.error, .pending, .warning) {
  margin-left: 11px !important;
 }

 #updates-list .content-container, #list-view :-moz-any(.error, .pending, .warning) >  label {
  margin-left: 10px !important;
 }

 #updates-list .name-container *, #list-view .name-container * {
  font-size: 14px !important;
 }

 #updates-list .advancedinfo-container, #list-view .advancedinfo-container {
  -moz-box-pack: end !important; margin-left: 10px !important;
 }

 #addons-page .category {
  margin-right: 10px !important;
 }

 #updates-list .icon, #list-view .icon,
 #updates-list .icon-container #list-view .icon-container {
  width: 24px !important; height: 24px !important;
 }

 #list-view:-moz-any([type]) .addon:first-child     {counter-reset: enabled; counter-reset: disabled;}
 #list-view:-moz-any([type]) .addon[active="true"]  {counter-increment: enabled;}
 #list-view:-moz-any([type]) .addon[active="false"] {counter-increment: disabled;}
 #list-view:-moz-any([type]) #addon-list::after {
  content: counter(enabled)" enabled, "counter(disabled)" disabled";
  background-color: #e0e0ff;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 1px;
  padding-bottom: 1px;
  position: fixed;
  font-weight: bold;
  top: 35px;
  margin-left: 10px;
  font-size: 110%;
 }

 .addon[selected="true"]::after {
  content: attr(value);
  position: fixed;
  top: 55px;
  margin-left: -5px;
  }
}

/* Firefox 57+ userChrome.css tweaks ****************************************************/
/* code mostly taken from 'Classic Theme Restorer' & 'Classic Toolbar Buttons' add-ons **/
/* by Aris (aris-addons@gmx.net)*********************************************************/
/* Github: https://github.com/aris-t2/customcssforfx ************************************/
/****************************************************************************************/

/* Add-on version */

@-moz-document url-prefix(chrome://mozapps/content/extensions/extensions.xul), url-prefix(about:addons) {
/*  addonversion.xml contains a copy of the 'addon-generic' binding Mozilla removed from Fx40+ builds! */
    
 .addon:not([pending="uninstall"])[status="installed"] {
  -moz-binding: url("./myAddOn57.xml#addon-generic") !important;
  }

 .addon:not([pending="uninstall"])[status="installing"] .name-container .version,
 .addon:not([pending="uninstall"])[status="installed"] .name-container .version {
  visibility: visible !important;
  }
    
 .addon:not([pending="uninstall"])[status="installing"] {
  -moz-binding: url("./myAddOn57.xml#addon-installing");
  }
}

Irishka пишет

И правда, у меня ClearType отключён т.к. мой Windows 7 работает в режиме наивысшего быстродействия, а в этом режиме ClearType отключается  автоматически

За N лет пользования им (считая XP), считаю, что без него - издевательство над глазами...


Ultima2m пишет

ТМР еще можно стилями как-то отработать.

Я ещё не видел ни одного стиля multirow, который был бы безглючен. Проверка номер один - перенести мышью таб на более высокую строку.

Отредактировано f00fc7c8 (15-03-2018 19:11:38)

Отсутствует

 

№2015-03-2018 20:15:11

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 59.0

Re: Вышел Firefox 59.0

f00fc7c8, благодарю.
Про стиль Ариса — я тоже никак XML подцепить не могу, как не менял адрес в -moz-binding: url("./myAddOn57.xml#addon-generic"), да и сам файл куда только не совал.
Более старое решение (https://forum.mozilla-russia.org/viewto … 51#p748251) тоже не работает.
Но версию хоть при наведении видно — и ладно. :)
P. S. Странная забота о безопасности пользователей — прятать номера версий. Давайте уж тогда и урл прятать, нечего пользователей пугать закорючками, название сайта туда выводить надо. И красивше будет. :)

Отсутствует

 

№2115-03-2018 20:55:31

Northtech
Участник
 
Группа: Members
Зарегистрирован: 16-04-2011
Сообщений: 265
UA: Firefox 56.0

Re: Вышел Firefox 59.0

Более старое решение (https://forum.mozilla-russia.org/viewto … 51#p748251) тоже не работает.

Хм, у меня в 60 версии работает (как работало и в 57-59). Как вариант, возможно у вас не закрыты где-нибудь кавычки например. Попробуйте разместить этот код в самом начале userContent.css. Или сделайте для проверки чистый файл только с этим кодом и кодировкой utf-8.

Отсутствует

 

№2215-03-2018 21:18:28

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 59.0

Re: Вышел Firefox 59.0

Northtech пишет

Или сделайте для проверки чистый файл только с этим кодом и кодировкой utf-8.

Пересохранил в utf-8 (почему то 1251 было, хотя вроде следил за этим).
Всё равно никак. Все стили повыключал. Если только предположить что из-за дополнений или костыля для проверки цифровых подписей?

Вам верю, поэтому на новом профиле пробовать не буду, попробую с действующим разобраться.

Отсутствует

 

№2315-03-2018 23:35:16

f00fc7c8
Участник
 
Группа: Members
Зарегистрирован: 02-10-2009
Сообщений: 668
UA: Firefox 52.0

Re: Вышел Firefox 59.0

Coroner пишет

Про стиль Ариса — я тоже никак XML подцепить не могу, как не менял адрес в -moz-binding: url("./myAddOn57.xml#addon-generic"), да и сам файл куда только не совал.

Я его переименовал

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

Выделить код

Код:

<?xml version="1.0"?>

<!DOCTYPE page [
<!ENTITY % extensionsDTD SYSTEM "chrome://mozapps/locale/extensions/extensions.dtd">
%extensionsDTD;
]>

<!-- import-globals-from extensions.js -->

<bindings id="addonBindings"
          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">

  <!-- Addon - generic - A normal addon item, or an update to one -->
  <binding id="addon-generic"
           extends="chrome://mozapps/content/extensions/extensions.xml#addon-generic">
    <content>
      <xul:hbox anonid="warning-container"
                class="warning">
        <xul:image class="warning-icon"/>
        <xul:label anonid="warning" flex="1"/>
        <xul:label anonid="warning-link" class="text-link"/>
        <xul:button anonid="warning-btn" class="button-link" hidden="true"/>
        <xul:spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
      </xul:hbox>
      <xul:hbox anonid="error-container"
                class="error">
        <xul:image class="error-icon"/>
        <xul:label anonid="error" flex="1"/>
        <xul:label anonid="error-link" class="text-link" hidden="true"/>
        <xul:spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
      </xul:hbox>
      <xul:hbox anonid="pending-container"
                class="pending">
        <xul:image class="pending-icon"/>
        <xul:label anonid="pending" flex="1"/>
        <xul:button anonid="restart-btn" class="button-link"
                    label="&addon.restartNow.label;"
                    oncommand="document.getBindingParent(this).restart();"/>
        <xul:button anonid="undo-btn" class="button-link"
                    label="&addon.undoAction.label;"
                    tooltipText="&addon.undoAction.tooltip;"
                    oncommand="document.getBindingParent(this).undo();"/>
        <xul:spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
      </xul:hbox>

      <xul:hbox class="content-container" align="center">
        <xul:vbox class="icon-container">
          <xul:image anonid="icon" class="icon"/>
        </xul:vbox>
        <xul:vbox class="content-inner-container" flex="1">
          <xul:hbox class="basicinfo-container">
              <xul:hbox class="name-container">
                <xul:label anonid="name" class="name" crop="end" flex="1"
                           tooltip="addonitem-tooltip" xbl:inherits="value=name"/>
                <xul:label anonid="version" class="version"/>                     
                <xul:label anonid="legacy" class="legacy-warning text-link" value="&addon.legacy.label;"/>
                <xul:label class="disabled-postfix" value="&addon.disabled.postfix;"/>
                <xul:label class="update-postfix" value="&addon.update.postfix;"/>
                <xul:spacer flex="5000"/> <!-- Necessary to make the name crop -->
              </xul:hbox>
            <xul:label anonid="date-updated" class="date-updated"
                       unknown="&addon.unknownDate;"/>
          </xul:hbox>
          <xul:hbox class="experiment-container">
            <svg width="6" height="6" viewBox="0 0 6 6" version="1.1"
                 xmlns="http://www.w3.org/2000/svg"
                 class="experiment-bullet-container">
              <circle cx="3" cy="3" r="3" class="experiment-bullet"/>
            </svg>
            <xul:label anonid="experiment-state" class="experiment-state"/>
            <xul:label anonid="experiment-time" class="experiment-time"/>
          </xul:hbox>

          <xul:hbox class="advancedinfo-container" flex="1">
            <xul:vbox class="description-outer-container" flex="1">
              <xul:hbox class="description-container">
                <xul:label anonid="description" class="description" crop="end" flex="1"/>
                <xul:button anonid="details-btn" class="details button-link"
                            label="&addon.details.label;"
                            tooltiptext="&addon.details.tooltip;"
                            oncommand="document.getBindingParent(this).showInDetailView();"/>
                <xul:spacer flex="5000"/> <!-- Necessary to make the description crop -->
              </xul:hbox>
              <xul:vbox anonid="relnotes-container" class="relnotes-container">
                <xul:label class="relnotes-header" value="&addon.releaseNotes.label;"/>
                <xul:label anonid="relnotes-loading" value="&addon.loadingReleaseNotes.label;"/>
                <xul:label anonid="relnotes-error" hidden="true"
                           value="&addon.errorLoadingReleaseNotes.label;"/>
                <xul:vbox anonid="relnotes" class="relnotes"/>
              </xul:vbox>
              <xul:hbox class="relnotes-toggle-container">
                <xul:button anonid="relnotes-toggle-btn" class="relnotes-toggle"
                            hidden="true" label="&cmd.showReleaseNotes.label;"
                            tooltiptext="&cmd.showReleaseNotes.tooltip;"
                            showlabel="&cmd.showReleaseNotes.label;"
                            showtooltip="&cmd.showReleaseNotes.tooltip;"
                            hidelabel="&cmd.hideReleaseNotes.label;"
                            hidetooltip="&cmd.hideReleaseNotes.tooltip;"
                            oncommand="document.getBindingParent(this).toggleReleaseNotes();"/>
              </xul:hbox>
            </xul:vbox>
          </xul:hbox>
        </xul:vbox>
        <xul:vbox class="status-control-wrapper">
          <xul:hbox class="status-container">
            <xul:hbox anonid="checking-update" hidden="true">
              <xul:image class="spinner"/>
              <xul:label value="&addon.checkingForUpdates.label;"/>
            </xul:hbox>
            <xul:vbox anonid="update-available" class="update-available"
                      hidden="true">
              <xul:checkbox anonid="include-update" class="include-update"
                            label="&addon.includeUpdate.label;" checked="true"
                            oncommand="document.getBindingParent(this).onIncludeUpdateChanged();"/>
              <xul:hbox class="update-info-container">
                <xul:label class="update-available-notice"
                           value="&addon.updateAvailable.label;"/>
                <xul:button anonid="update-btn" class="addon-control update"
                            label="&addon.updateNow.label;"
                            tooltiptext="&addon.updateNow.tooltip;"
                            oncommand="document.getBindingParent(this).upgrade();"/>
              </xul:hbox>
            </xul:vbox>
            <xul:hbox anonid="install-status" class="install-status"
                      hidden="true"/>
          </xul:hbox>
          <xul:hbox anonid="control-container" class="control-container">
            <xul:button anonid="preferences-btn"
                        class="addon-control preferences"
                        label="&cmd.showPreferencesWin.label;"
                        tooltiptext="&cmd.showPreferencesWin.tooltip;"
                        oncommand="document.getBindingParent(this).showPreferences();"/>
            <xul:button anonid="enable-btn"  class="addon-control enable"
                        label="&cmd.enableAddon.label;"
                        oncommand="document.getBindingParent(this).userDisabled = false;"/>
            <xul:button anonid="disable-btn" class="addon-control disable"
                        label="&cmd.disableAddon.label;"
                        oncommand="document.getBindingParent(this).userDisabled = true;"/>
            <xul:button anonid="replacement-btn" class="addon-control replacement"
                        label="&cmd.findReplacement.label;"
                        oncommand="document.getBindingParent(this).findReplacement();"/>
            <xul:button anonid="remove-btn" class="addon-control remove"
                        label="&cmd.uninstallAddon.label;"
                        oncommand="document.getBindingParent(this).uninstall();"/>
            <xul:menulist anonid="state-menulist"
                          class="addon-control state"
                          tooltiptext="&cmd.stateMenu.tooltip;">
              <xul:menupopup>
                <xul:menuitem anonid="ask-to-activate-menuitem"
                              class="addon-control"
                              label="&cmd.askToActivate.label;"
                              tooltiptext="&cmd.askToActivate.tooltip;"
                              oncommand="document.getBindingParent(this).userDisabled = AddonManager.STATE_ASK_TO_ACTIVATE;"/>
                <xul:menuitem anonid="always-activate-menuitem"
                              class="addon-control"
                              label="&cmd.alwaysActivate.label;"
                              tooltiptext="&cmd.alwaysActivate.tooltip;"
                              oncommand="document.getBindingParent(this).userDisabled = false;"/>
                <xul:menuitem anonid="never-activate-menuitem"
                              class="addon-control"
                              label="&cmd.neverActivate.label;"
                              tooltiptext="&cmd.neverActivate.tooltip;"
                              oncommand="document.getBindingParent(this).userDisabled = true;"/>
              </xul:menupopup>
            </xul:menulist>
          </xul:hbox>
        </xul:vbox>
      </xul:hbox>
    </content>

    <implementation>

      <field name="_version">
        document.getAnonymousElementByAttribute(this, "anonid", "version");
      </field> 

      <method name="_initWithAddon">
        <parameter name="aAddon"/>
        <body><![CDATA[
          this.mAddon = aAddon;

          this._installStatus.mAddon = this.mAddon;
          this._updateDates();
          this._updateState();

          this.setAttribute("name", aAddon.name);

          var iconURL = AddonManager.getPreferredIconURL(aAddon, 48, window);
          if (iconURL)
            this._icon.src = iconURL;
          else
            this._icon.src = "";

          if (shouldShowVersionNumber(this.mAddon))
            this._version.value = this.mAddon.version;
          else
            this._version.hidden = true;
            
          if (this.mAddon.description)
            this._description.value = this.mAddon.description;
          else
            this._description.hidden = true;

          let legacyWarning = legacyExtensionsEnabled && !this.mAddon.install &&
            isLegacyExtension(this.mAddon);
          this.setAttribute("legacy", legacyWarning);
          document.getAnonymousElementByAttribute(this, "anonid", "legacy").href = SUPPORT_URL + "webextensions";

          if (!("applyBackgroundUpdates" in this.mAddon) ||
              (this.mAddon.applyBackgroundUpdates == AddonManager.AUTOUPDATE_DISABLE ||
               (this.mAddon.applyBackgroundUpdates == AddonManager.AUTOUPDATE_DEFAULT &&
                !AddonManager.autoUpdateDefault))) {
            AddonManager.getAllInstalls(aInstallsList => {
              // This can return after the binding has been destroyed,
              // so try to detect that and return early
              if (!("onNewInstall" in this))
                return;
              for (let install of aInstallsList) {
                if (install.existingAddon &&
                    install.existingAddon.id == this.mAddon.id &&
                    install.state == AddonManager.STATE_AVAILABLE) {
                  this.onNewInstall(install);
                  this.onIncludeUpdateChanged();
                }
              }
            });
          }
        ]]></body>
      </method>
      
      <method name="onNewInstall">
        <parameter name="aInstall"/>
        <body><![CDATA[
          if (this.mAddon.applyBackgroundUpdates == AddonManager.AUTOUPDATE_ENABLE)
            return;
          if (this.mAddon.applyBackgroundUpdates == AddonManager.AUTOUPDATE_DEFAULT &&
              AddonManager.autoUpdateDefault)
            return;

          this.mManualUpdate = aInstall;
          this._showStatus("update-available");
          this._updateUpgradeInfo();
        ]]></body>
      </method>

      <method name="_updateUpgradeInfo">
        <body><![CDATA[
          // Only update the version string if we're displaying the upgrade info
          if (this.hasAttribute("upgrade") && shouldShowVersionNumber(this.mAddon))
            this._version.value = this.mManualUpdate.version;
        ]]></body>
      </method>
      
    </implementation>

  </binding>

  <!-- Addon - installing - an addon item that is currently being installed -->
  <binding id="addon-installing"
           extends="chrome://mozapps/content/extensions/extensions.xml#addon-installing">
    <content>
      <xul:hbox anonid="warning-container" class="warning">
        <xul:image class="warning-icon"/>
        <xul:label anonid="warning" flex="1"/>
        <xul:button anonid="warning-link" class="button-link"
                   oncommand="document.getBindingParent(this).retryInstall();"/>
        <xul:spacer flex="5000"/> <!-- Necessary to allow the message to wrap -->
      </xul:hbox>
      <xul:hbox class="content-container">
        <xul:vbox class="icon-outer-container">
          <xul:vbox class="icon-container">
            <xul:image anonid="icon" class="icon"/>
          </xul:vbox>
        </xul:vbox>
        <xul:vbox class="fade name-outer-container" flex="1">
          <xul:hbox class="name-container">
            <xul:label anonid="name" class="name" crop="end" tooltip="addonitem-tooltip"/>
            <xul:label anonid="version" class="version" hidden="true"/>
          </xul:hbox>
        </xul:vbox>
        <xul:vbox class="install-status-container">
          <xul:hbox anonid="install-status" class="install-status"/>
        </xul:vbox>
      </xul:hbox>
    </content>

    <implementation>

      <field name="_version">
        document.getAnonymousElementByAttribute(this, "anonid", "version");
      </field>

      <method name="refreshInfo">
        <body><![CDATA[
          this.mAddon = this.mAddon || this.mInstall.addon;
          if (this.mAddon) {
            this._icon.src = this.mAddon.iconURL ||
                             (this.mInstall ? this.mInstall.iconURL : "");
            this._name.value = this.mAddon.name;
            
            if (this.mAddon.version) {
              this._version.value = this.mAddon.version;
              this._version.hidden = false;
            } else {
              this._version.hidden = true;
            }

          } else {
            this._icon.src = this.mInstall.iconURL;
            // AddonInstall.name isn't always available - fallback to filename
            if (this.mInstall.name) {
              this._name.value = this.mInstall.name;
            } else if (this.mInstall.sourceURI) {
              var url = Components.classes["@mozilla.org/network/standard-url-mutator;1"]
                                  .createInstance(Components.interfaces.nsIStandardURLMutator)
                                  .init(Components.interfaces.nsIStandardURL.URLTYPE_STANDARD,
                                        80, this.mInstall.sourceURI.spec,
                                        null, null)
                                  .finalize()
                                  .QueryInterface(Components.interfaces.nsIURL);
              this._name.value = url.fileName;
            }
            
            if (this.mInstall.version) {
              this._version.value = this.mInstall.version;
              this._version.hidden = false;
            } else {
              this._version.hidden = true;
            }
          }

          if (this.mInstall.state == AddonManager.STATE_DOWNLOAD_FAILED) {
            this.setAttribute("notification", "warning");
            this._warning.textContent = gStrings.ext.formatStringFromName(
              "notification.downloadError",
              [this._name.value], 1
            );
            this._warningLink.label = gStrings.ext.GetStringFromName("notification.downloadError.retry");
            this._warningLink.tooltipText = gStrings.ext.GetStringFromName("notification.downloadError.retry.tooltip");
          } else if (this.mInstall.state == AddonManager.STATE_INSTALL_FAILED) {
            this.setAttribute("notification", "warning");
            this._warning.textContent = gStrings.ext.formatStringFromName(
              "notification.installError",
              [this._name.value], 1
            );
            this._warningLink.label = gStrings.ext.GetStringFromName("notification.installError.retry");
            this._warningLink.tooltipText = gStrings.ext.GetStringFromName("notification.downloadError.retry.tooltip");
          } else {
            this.removeAttribute("notification");
          }
        ]]></body>
      </method>

    </implementation>
  </binding>

</bindings>

Coroner пишет

прятать номера версий

Это уже давно. С 40х. Пока вытащить через яваскрипт не получается..

Coroner пишет

Пересохранил в utf-8 (почему то 1251 было, хотя вроде следил за этим).

У меня, за редким исключением, всё по-аглицки. УТФ8 - по боку.

Отредактировано f00fc7c8 (15-03-2018 23:46:44)

Отсутствует

 

№2415-03-2018 23:53:16

Coroner
Участник
 
Группа: Members
Зарегистрирован: 29-10-2012
Сообщений: 4001
UA: Firefox 59.0

Re: Вышел Firefox 59.0

f00fc7c8 пишет

Я его переименовал

Я на своём файле пробовал. Раньше ещё пытался.

f00fc7c8 пишет

У меня, за редким исключением, всё по-аглицки. УТФ8 - по боку.

Уже в привычку вошло. Но как оказалось — не до конца. :)
В основном тоже по-аглицки, да вот папка на панели закладок когда-то была с русским названием, а мне её подкрасить вздумалось.
А она toolbarbutton.bookmark-item[label="имя"]. С тех пор стараюсь UTF-8 сохранять.

Отсутствует

 

№2516-03-2018 00:06:48

f00fc7c8
Участник
 
Группа: Members
Зарегистрирован: 02-10-2009
Сообщений: 668
UA: Firefox 52.0

Re: Вышел Firefox 59.0

Coroner пишет

Я на своём файле пробовал. Раньше ещё пытался.

Ммм. И не выходит? У меня такое содержимое файла c:\Users\...\AppData\Roaming\Mozilla\Firefox\Profiles\...\chrome\myAddOn57.xml
Я просто подсократил Арисовские заморочки. Нужное оставил как my****

Отсутствует

 

Board footer

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