Показывать индикатор прогресса загрузки на вкладках которые загружаются ( Firefox 17+ )
Автор: bunda1
Версия: от 08.06.2014.
Описание: добавляет на всех вкладках которые загружаются индикатор прогресса загрузки и удаляет стандартный вращающийся индикатор загрузки( throbber ).
http://img838.imageshack.us/img838/3514/uobk.jpg
Использование: положите код в любую Custom Buttons кнопку, в инициализацию. Не обязательно создавать новую CB кнопку, можно использовать уже существующую.

Выделить код

Код:

// Показывать индикатор прогресса загрузки на вкладках которые загружаются, от 08.06.2014. ................................
(function () { 

   // Css стиль для индикатора загрузки вкладок ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
      /* binding для добавления индикатора под "xul:label" каждой вкладки */\
      tabs.tabbrowser-tabs label.tab-text {\
         -moz-binding: url("data:application/xml,%3Cbindings%20id%3D%22tabprogressbarBindings%22%0A%09xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%0A%09xmlns%3Axul%3D%22http%3A%2F%2Fwww.mozilla.org%2Fkeymaster%2Fgatekeeper%2Fthere.is.only.xul%22%0A%09xmlns%3Axbl%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%0A%3Cbinding%20id%3D%22tab-label%22%20extends%3D%22xul%3Ahbox%22%3E%0A%09%3Ccontent%3E%0A%09%09%3Cxul%3Avbox%20class%3D%22tab-label-inner-box%22%20flex%3D%221%22%3E%0A%09%09%09%3Cxul%3Astack%20xbl%3Ainherits%3D%22flex%22%20flex%3D%221%22%3E%0A%09%09%09%09%3Cxul%3Ahbox%20class%3D%22label-behind-box%22%20flex%3D%221%22%2F%3E%0A%09%09%09%09%3Cxul%3Avbox%20class%3D%22tab-progress-box%22%20flex%3D%221%22%3E%0A%09%09%09%09%09%3Cxul%3Aprogressmeter%0A%09%09%09%09%09%09class%3D%22tab-progress%22%0A%09%09%09%09%09%09mode%3D%22normal%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%3Dtab-progress%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Avbox%3E%0A%09%09%09%09%3Cxul%3Ahbox%0A%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09align%3D%22center%22%3E%0A%09%09%09%09%09%3Cxul%3Alabel%0A%09%09%09%09%09%09class%3D%22tab-real-text%22%0A%09%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%2Ccrop%2Caccesskey%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Ahbox%3E%0A%09%09%09%3C%2Fxul%3Astack%3E%0A%09%09%3C%2Fxul%3Avbox%3E%0A%09%3C%2Fcontent%3E%0A%3C%2Fbinding%3E%0A%3C%2Fbindings%3E#tab-label");\
      }\
      /* цвет, тень и фоновое изображение прогресса в base64 */\
      .tab-progress > .progress-remainder {\
         background-color: #5d9856 !important;\
      }\
      .tab-progress > .progress-bar {\
         box-shadow: 0 0 2px #7ffa52;\
         background: #4fca32 url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAADCAYAAABPsHHBAAADDElEQVRYhe3Y+U/TdxzHcf+GKYNSoBQoUMtValtpgdZCa60wKFBtAQFndkSzw+ye12Z2GjXOEGOMMcb4zwxK+dJSncect5tzbut9P/cD137QRDRbRb8/PH5/fd755HO8VvVMNPPC+rGZngl1/nOI/jevTahFz4Wmp9L9CPlfy0ryuNnmO9dK8vR7N//Z82Hh/NXQM6Ghd1JD7+S6Rc5JLU6vFqdXh9Oro8+ro8+rp8+rp39KT//U+kUDUy3zDAz4DLh8Blw+Iy6fkS0+I1umWxdtnW5bIrTjFtpxCybcggmPYMIjmPEIZgZnzAzObJhnYXDGwpDfwpC/gyF/B8P/si3QOc/KtoCVkYCVkYBtzqyN0dmNi8Zm7YwG54wFN81zMBZ0sP2CA/l4GasWLqWuySa6vE04vI04phqx+xqw+xqwTddhE+qxCnV0ztTR4Vdh8avYEFiLeVaJKaikPVhL24VaWi/WYLxYg+GnalouVbP+sgL9ZQW6K1Vor1ax7molmp8raL5WgfqanKZf5DReL6fhejn1N2TU3ZShulXG2ltlKG+XUnunhJo7JVTflaK4J6XqXjGVvxZT8ZsE+X0J5feLkP1eRNmDQkofFFLyx6tIHxZQ/LAAyZ9rKPprDYV/r54TEr0cXhGJRCLRf2o1klAB0lAhpSEJspAUebiUyrAMRVhOTbgSZViBKlxLfURJQ0SFOlJPc6QRbUSNLqKhJarFENXTGm2hPWrEHG3DEjPRGbNgi3Vgj1lxxDbSFdtEd3wzvfFu+uK9DMSduOL9uOMuPImtDCc8jCSGGU2MsD0xyo7k67yR3MFbyTfZmXybXcmdvJPcxXupd9mdep8PUrv5KPUhn6Q+5rPUp+xJf86+9F4OpPfzZfoLDqYP8nXmK77NfMP3me84lDnEkcxhjmaO8kP2GMezxxnPjnMie4KT2ZOcyp7idO40Z3JnOJs7y7ncOc7nzi89sESiF0H+f3KiJWKD9XzNPd+5VhKxwVqehTP42RqsgWdosNzLaLCGlt1gWR/RYNmfqMH6B9+z4Mt4YIdNAAAAAElFTkSuQmCC") no-repeat right;\
      }\
      /* когда показывать, размеры, расположение */\
      .tabbrowser-tab[busy="true"]:not([progress="true"]) .tab-progress,\
      .tabbrowser-tab:not([busy="true"]) .tab-progress,\
      label.tab-text:not([tab-progress]) .tab-progress {\
         visibility: collapse;\
      }\
      .tab-progress,\
      .tab-real-text,\
      label.tab-text > .tab-label-inner-box,\
      label.tab-text > .tab-label-inner-box > *,\
      label.tab-text > .tab-label-inner-box > stack > *,\
      label.tab-text > .tab-label-inner-box > stack > * > spacer {\
         margin: 0 !important;\
         padding: 0 !important;\
         text-indent: 0 !important;\
      }\
      .tab-progress {\
         min-width: 0 !important;\
         height: 2px !important;\
         min-height: 3px !important;\
         max-height: 3px !important;\
         -moz-appearance: none !important;\
         border: none !important;\
         outline: none !important;\
         margin: 0 0 -4px !important;\
         position: relative !important;\
      }\
      .tab-progress > .progress-bar,\
      .tab-progress > .progress-remainder {\
         -moz-appearance: none !important;\
      }\
      .tab-progress-box { -moz-box-pack: end !important; }\
      \
      /* удалить стандартный индикатор загрузки( throbber ) */\
      .tab-throbber:not([pinned="true"]) { display: none !important; }\
      .tab-icon-image:not([pinned="true"]) { display: block !important; }\
      '));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET); 
   addDestructor(function() sss.unregisterSheet(uri, sss.AGENT_SHEET) );

   
   // Отслеживать прогресс загрузки всех вкладок ....
   var tabsProgressListener = {      
          onProgressChange: function( browser, w, r, c, m, curProgr, maxProgr ) {
             if ( !maxProgr ) return;
         
             // добавлять атрибут с прогрессом загрузки к 'xul:label' каждой вкладки  
             var percentage = parseInt(curProgr * 100 / maxProgr);        
             var tab = gBrowser._getTabForBrowser( browser );
             var label = document.getAnonymousElementByAttribute( tab, 'class', 'tab-content').querySelector(".tab-text.tab-label");
             
             label.setAttribute('tab-progress', percentage );
          }        
   };
   gBrowser.addTabsProgressListener( tabsProgressListener );
   addDestructor(function() gBrowser.removeTabsProgressListener( tabsProgressListener ) );

})();

Заменить стандартный вращающийся индикатор загрузки( throbber ) на индикатор прогресса загрузки ( Firefox 17+ )
Автор: Dumby, bunda1
Версия: от 11.05.2014.
Описание: заменяет на всех вкладках которые загружаются стандартный вращающийся индикатор загрузки( throbber ) на индикатор прогресса загрузки.
http://s1.ipicture.ru/uploads/20140511/S1h17rua.jpg
Использование: положите код в любую Custom Buttons кнопку, в инициализацию. Не обязательно создавать новую CB кнопку, можно использовать уже существующую.

Выделить код

Код:

// Заменить стандартный вращающийся индикатор загрузки( throbber ) на индикатор прогресса загрузки, от 11.05.2014. ................................
(function () {  
   const
       pr = "#0086df", // цвет прогресса
       bg = "white";   // фоновой цвет прогресса


   // Css стиль для троббера ....
   var uri = makeURI("data:text/css,"+ encodeURIComponent("\
      .tab-throbber { border: 1px solid black; list-style-image: none !important; }\
   "));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET);
   addDestructor(function() sss.unregisterSheet(uri, sss.AGENT_SHEET) ); 


   // Отслеживать прогресс загрузки всех вкладок и соответственно менять Css стиль тробберов ....
   var tabsProgressListener = {
          
      onProgressChange: function( browser, w, r, c, m, curProgr, maxProgr ) {
         if ( !maxProgr ) return;
         var percentage = parseInt(curProgr * 100 / maxProgr);            
         var throbber = this.getThrobber( browser.contentDocument );
         throbber.style.cssText = "background: linear-gradient( 0deg, " + pr + ", " + pr + " " + percentage + "%, " + bg + ", " + bg + " " + percentage + "%);"
      },
     
      onStatusChange: function( aWebProgress ) {   
         var throbber = this.getThrobber( aWebProgress.contentDocument );
         if ( !throbber.hasAttribute('progress') ) throbber.removeAttribute("style");          
      },
     
      getThrobber: function( doc ) {
         var tabIndex = gBrowser.getBrowserIndexForDocument( doc );
         var tab = gBrowser.mTabs[tabIndex];
         return document.getAnonymousElementByAttribute( tab, "class", "tab-throbber");
      } 
   };
   gBrowser.addTabsProgressListener( tabsProgressListener );
   addDestructor(function() gBrowser.removeTabsProgressListener(tabsProgressListener) );   
})();

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

скрытый текст
https://i.imgur.com/XEBjSGq.png

Да есть такая проблема и с закреплёнными вкладками тоже. Буду исправлять. Кстати, вкладки у тебя странно выглядят местами.

bunda1
ещё заметил, что появился глюк с визуальной задержкой при начале перехода по введённому адресу в адресную строку: адрес ввёл, enter нажал, а секунду-две визуально может ничего не происходить (кроме статус-бара, показывающего "Waiting for %адрес%").

Не понял, что за визуальная задержка. Индикатор не работает или что?

iDev.Pi пишет:

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

Измени:

Выделить код

Код:

margin: 0 0 -4px !important;\

10-04-2014 05:05:33
И можно индикатор сверху:

Выделить код

Код:

.tab-progress-box { -moz-box-pack: start ! important; }\

bunda1
не помогло.

bunda1 пишет:

Не понял, что за визуальная задержка. Индикатор не работает или что?

я пока не уверен, что дело в КБ, может лиса чудит. После рестарта вроде глюк пропал.

10-04-2014 06:22:32
тем более, что у тебя не правильно: http://htmlbook.ru/css/margin смотри "количество значений" в таблице.

iDev.Pi пишет:

тем более, что у тебя не правильно: http://htmlbook.ru/css/margin смотри "количество значений" в таблице.

Там же:

Табл. 1. Зависимость от числа значений Число значений     Результат
1     Отступы будут установлены одновременно от каждого края элемента.
2     Первое значение устанавливает отступ от верхнего и нижнего края, второе — от левого и правого.
3     Первое значение задает отступ от верхнего края, второе — одновременно от левого и правого края, а третье — от нижнего края.
4     Поочередно устанавливается отступ от верхнего, правого, нижнего и левого края.

10-04-2014 06:34:00

iDev.Pi пишет:

не помогло.

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

bunda1
нет, просто после -4px надо ещё добавить -20px, вот тогда прогрессбар будет и под фавиконкой отображаться (растянется-сместится влево на 20 пх)

bunda1
Огромное спасибо - а то расширение г-на Пири, как всегда, тихо умерло, а без прогресс-бара как-то тоскливо.
Теперь просьба объяснить, что нужно изменить для того, чтобы:
1. Цвет бара был бы не зеленым, а синим.
2. В соответствии с рекомендацией (end/start) я перегнал бар в верхние части вкладок. Но желательно еще поднять ближе к верхней кромке, а то низковато:
http://storage7.static.itmages.ru/i/14/0410/h_1397106106_8466174_197ce2675f.jpg
3. Нельзя ли оставить (не убирать) троббер - пусть себе крутится?
Спасибо.

Vladimir_S пишет:

1. цвет бара синий.
2. бар в верхние части вкладок.
3. не убирать троббер, пусть себе крутится.

http://img849.imageshack.us/img849/6436/mze9.jpg

Выделить код

Код:

// Показывать синий индикатор прогресса загрузки на вкладках которые загружаются, от 10.04.2014. ................................
(function () { 

   // Css стиль для индикатора загрузки вкладок ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
      /* binding для добавления индикатора под "xul:label" каждой вкладки */\
      tabs.tabbrowser-tabs label.tab-text {\
         -moz-binding: url("data:application/xml,%3Cbindings%20id%3D%22tabprogressbarBindings%22%0A%09xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%0A%09xmlns%3Axul%3D%22http%3A%2F%2Fwww.mozilla.org%2Fkeymaster%2Fgatekeeper%2Fthere.is.only.xul%22%0A%09xmlns%3Axbl%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%0A%3Cbinding%20id%3D%22tab-label%22%20extends%3D%22xul%3Ahbox%22%3E%0A%09%3Ccontent%3E%0A%09%09%3Cxul%3Avbox%20class%3D%22tab-label-inner-box%22%20flex%3D%221%22%3E%0A%09%09%09%3Cxul%3Astack%20xbl%3Ainherits%3D%22flex%22%20flex%3D%221%22%3E%0A%09%09%09%09%3Cxul%3Ahbox%20class%3D%22label-behind-box%22%20flex%3D%221%22%2F%3E%0A%09%09%09%09%3Cxul%3Avbox%20class%3D%22tab-progress-box%22%20flex%3D%221%22%3E%0A%09%09%09%09%09%3Cxul%3Aprogressmeter%0A%09%09%09%09%09%09class%3D%22tab-progress%22%0A%09%09%09%09%09%09mode%3D%22normal%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%3Dtab-progress%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Avbox%3E%0A%09%09%09%09%3Cxul%3Ahbox%0A%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09align%3D%22center%22%3E%0A%09%09%09%09%09%3Cxul%3Alabel%0A%09%09%09%09%09%09class%3D%22tab-real-text%22%0A%09%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%2Ccrop%2Caccesskey%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Ahbox%3E%0A%09%09%09%3C%2Fxul%3Astack%3E%0A%09%09%3C%2Fxul%3Avbox%3E%0A%09%3C%2Fcontent%3E%0A%3C%2Fbinding%3E%0A%3C%2Fbindings%3E#tab-label");\
      }\
      /* цвет, тень и фоновое изображение прогресса в base64 */\
      .tab-progress > .progress-remainder {\
         background-color: #5d9856 !important;\
      }\
      .tab-progress > .progress-bar {\
         box-shadow: 0 0 2px #7ffa52;\
         background: #4fca32 url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAADCAYAAABPsHHBAAAD10lEQVRYhe3Y+0/VdRzHcf+Go4SIgqgoBMo5Gh0FFRIJrLXVWmttrbbaWqut1dZaa601zjnfc74IiIiIiAhIooCC2gHFG5DUPDcPh3NAgZC4BMKR8Hvu11c/nA+dT99VO9gFpfPD4/f35/3L5/N5LtsqUWHJyrsF0WLPEPafEoU9FoR5/5zFPsuTZMnsUEqR8TCEnEfBw/LkE/t5CiiFKggLVBAW8hTxHKAUB4kOqiAqoRyilFIO85TxHKGUU45SKijHeCp5jlOqeE5Qqik1lFqek0Fb6wK2zTulxjPz6tVIrVcj9bQGz54hGjQQN2ggbtRA3KTF9iYttp8N2EGkndMirVmHtGYd0pt1SG8J2Hn+NnZeCNh1MWi3Uo/dSj0ylHpktAZktuqR2aZHZlsPnrsUsOcy0W5AVrsBWVd+b++1Xuy91ovs60HP3yA6jMjpMCKnMyC304jcLhNyvzNhH/HCTaK7DzFMKZbNX0pCiRpCiQYpEg1SJFpskeiwRaJDsuQ2Nkv1SJbokSztQZLUgCSpAU9Le5EoNSJRZkKC1IQEWR82yfqxSdaPjbI72MjcRbxsAPGyAWxgBrGBGcJ6ZgjrmB+xjhlGHDOMOOYe1jIjWMuMIJb5CbHyUcTIxxAjH8Ma+ThWyyewWj6BaPnPiFZMYpV8EqsUU4hS3EeUYhorFdNYyc4gkjUjkjXjKfYBIthZRLCzWMH+ghXsHJazDwPyubD/AQEbFhb2RMsn9lMKOAgKKUUcBAcoxZSDRAnlEAdBKeUwUUYcoZRzEBylVBDHKJXEcaKKOEFUU2qIWuIkpY74hjhF1BOnKWeIBqKR0kScJc4RzZQW4jwHwQWei8S3hJLSykHQRrnEYfllDhHtHCLbOURd5RB9lcOa6xbE3rAgrsOC9Z0WxHdZkNBlQeJNK5K6rdjcbUXK91aIfrBi2y0rUlU2iNU27NDYkK61YZfWhgydHXv0dmTp7cjusSPHYMc+gx0vGh14yejAyyYHXulz4NV+B16748Drd514Y8CJNwedeGvQibeHnHhn2IV3h114b9iF9++58MGICx+OuPDRqBsfj7rxyZgbn4678dm4G59PuPHFpAdfTnrw1ZQHX095kHffA+m0F8yMF4oZL/LNXhSYvSgye1H8wIeSWR9KZ30om/OhfM6Hioc+VHJ+VHF+VHN+1Fr8qLP4gw+ssLClYNF/3WG/CResx2vviz3XgoVSsPgV66/q1UILFr9i/Vm9etSCxa9Yf7dg8SvWoxas+YpVo/r3C1aDBuLGEApWywILljLEgnUltIKV/QcFKzfEgvUrTkoMxlOixu0AAAAASUVORK5CYII=") no-repeat right;\
      }\
      /* когда показывать, размеры, расположение */\
      .tabbrowser-tab:not([busy="true"]) .tab-progress,\
      label.tab-text:not([tab-progress]) .tab-progress {\
         visibility: collapse;\
      }\
      .tab-progress,\
      .tab-real-text,\
      label.tab-text > .tab-label-inner-box,\
      label.tab-text > .tab-label-inner-box > *,\
      label.tab-text > .tab-label-inner-box > stack > *,\
      label.tab-text > .tab-label-inner-box > stack > * > spacer {\
         margin: 0 !important;\
         padding: 0 !important;\
         text-indent: 0 !important;\
      }\
      .tab-progress {\
         min-width: 0 !important;\
         height: 2px !important;\
         min-height: 3px !important;\
         max-height: 3px !important;\
         -moz-appearance: none !important;\
         border: none !important;\
         outline: none !important;\
         margin: -3px 0 0 !important;\
         position: relative !important;\
      }\
      .tab-progress > .progress-bar,\
      .tab-progress > .progress-remainder {\
         -moz-appearance: none !important;\
      }\
      .tab-progress-box { -moz-box-pack: start !important; }\
      '));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET); 
   addDestructor(function() sss.unregisterSheet(uri, sss.AGENT_SHEET) );

   
   // Отслеживать прогресс загрузки всех вкладок ....
   var tabsProgressListener = {
          onProgressChange: function( browser, webProgr, request, curSelfProgr, maxSelfProgr, curProgr, maxProgr ) {
             if ( !maxProgr ) return;

             // добавлять атрибут с прогрессом загрузки к 'xul:label' каждой вкладки  
             var percentage = parseInt( (curProgr * 100) / maxProgr );                           
             var tab = gBrowser._getTabForBrowser( browser );
             var label = document.getAnonymousElementByAttribute( tab, 'class', 'tab-content').querySelector(".tab-text.tab-label");
             
             browser.webProgress.isLoadingDocument && percentage > 0 && percentage < 100
             ? label.setAttribute('tab-progress', percentage )
             : label.removeAttribute('tab-progress');             
          }
   };
   gBrowser.addTabsProgressListener( tabsProgressListener );
   addDestructor(function() gBrowser.removeTabsProgressListener( tabsProgressListener ) );

})();

bunda1
О! Ну вот - совсем хорошо стало. То, что надо. Огромное спасибо. https://forum.mozilla-russia.org/uploaded/bt.gif

Благодарю, а то единственный рабочий аналог - Infomationaltab уж сильно крут в извращениях =)

iDev.Pi пишет:

нет, просто после -4px надо ещё добавить -20px, вот тогда прогрессбар будет и под фавиконкой отображаться (растянется-сместится влево на 20 пх)

заметил, что это не решает проблему tree-twisties, значков сворачивания/разворачивания групп вкладок, создаваемых дополнением tree-style-tab. попробую похимичить.

feas пишет:

Благодарю, а то единственный рабочий аналог - Infomationaltab уж сильно крут в извращениях

Да ладно бы крут - у меня и вовсе это расширение "тихо умерло", причем действительно умирало постепенно. Сначала в сплотке Australis+CTR работало и в 29.0, и в 30.0, потом, с выходом обновлений браузера, сперва бар скукожился, потом только мелькал на первой открытой вкладке, а потом и вовсе исчез. А кнопка CB работает. Дома вечером еще на 30.0 поставлю.

iDev.Pi пишет:

заметил, что это не решает проблему tree-twisties, значков сворачивания/разворачивания групп вкладок, создаваемых дополнением tree-style-tab. попробую похимичить.

Можно атрибут загрузки добавлять на вкладку и менять стандартный throbber зависимости от прогресса загрузки, это легко сделать. И наверно можно добавлять вертикальный индикатор прогресса загрузки перед иконкой вкладки, но это по труднее будет.

bunda1
да не, и горизонтальный нормально.
Лучше перед тем, как прикручивать новые фишки - занялся бы пока стабильностью текущего функционала.
Я вот сейчас заметил, что вместо прогрессбара на вкладке иногда на долю секунды мелькает текст, насколько я успел прочитать его - там написано "Connecting...", а потом он исчезает и появляется прогрессбар.

EDIT: проявляется не всегда.

iDev.Pi пишет:

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

Мой код тут не причём, "Connecting..." появляется и без его.

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

iDev.Pi пишет:

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

У себя не наблюдаю.

iDev.Pi пишет:

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

конфликт расширений?

Здравствуйте, а у меня стандартный  индикатор загрузки все крутится и крутится на странице http://tv.mail.ru/ , как же его остановить?

HW
https://forum.mozilla-russia.org/viewtopic.php?id=53145

HW пишет:

Здравствуйте, а у меня стандартный  индикатор загрузки все крутится и крутится на странице http://tv.mail.ru/ , как же его остановить?

На некоторых страницах криво написание скрипты которые на дают поностя загрузить станицу. Можно на таком сайте полностью выключить JavaScript Переключить JavaScript для сайтов или расширением NoScript Security Suite :: Add-ons for Firefox найти и отключить глючний скрипт.

Караул, спасайте!!!
До сего дня великолепно работал код инициализации, что в №11, а вот после сегодняшнего обновления Авроры Progress Bar опустился почти на середину вкладки, что некрасиво. Как бы это опять его загнать под верхнюю кромку?
http://storage9.static.itmages.ru/i/14/0805/h_1407227963_1875632_29fc7393ba.jpg

okkamas_knife пишет:

Vladimir_S
попробуй margin в стиле поменять чтоб переместить его

Попробовал. Увы, ноль эмоций. Да и странно было бы - ведь работало ж до сего дня.

Vladimir_S пишет:

Караул, спасайте!!!
До сего дня великолепно работал код инициализации, что в №11, а вот после сегодняшнего обновления Авроры Progress Bar опустился почти на середину вкладки, что некрасиво. Как бы это опять его загнать под верхнюю кромку?
http://storage9.static.itmages.ru/i/14/ … 7393ba.jpg

Установил аврору и у меня с №11 вроде проблем нет, может обнови аврору или попробуй изменить в коде:

Выделить код

Код:

margin: -3px 0 0 !important;\

Лучше перейти на [nightly]

bunda1 пишет:

Установил аврору и у меня с №11 вроде проблем нет, может обнови аврору или попробуй изменить в коде:

Что касается "изменить в коде", так я это еще вчера проделал и не узрел ни малейшей реакции на изменения сии (пробовал изменить на "-1").
Впрочем, виновник обнаружен: вчера обновилось дополнение Classic Theme Restorer до версии 1.2.3 - вот с ней-то и возник конфликт. Откатился до 1.2.2 с запретом обновляться, и всё восстановилось, т.е. получил опять нормальный Progress Bar.

Да вечная проблема конфликт с расширениями.

https://forum.mozilla-russia.org/viewto … 86#p658686

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

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

Выделить код

Код:

// Индикатор загрузки в виде полоски
(function () { 

   // Css стиль для индикатора загрузки вкладок ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
      /* binding для добавления индикатора под "xul:label" каждой вкладки */\
      tabs.tabbrowser-tabs label.tab-text {\
         -moz-binding: url("data:application/xml,%3Cbindings%20id%3D%22tabprogressbarBindings%22%0A%09xmlns%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%0A%09xmlns%3Axul%3D%22http%3A%2F%2Fwww.mozilla.org%2Fkeymaster%2Fgatekeeper%2Fthere.is.only.xul%22%0A%09xmlns%3Axbl%3D%22http%3A%2F%2Fwww.mozilla.org%2Fxbl%22%3E%0A%3Cbinding%20id%3D%22tab-label%22%20extends%3D%22xul%3Ahbox%22%3E%0A%09%3Ccontent%3E%0A%09%09%3Cxul%3Avbox%20class%3D%22tab-label-inner-box%22%20flex%3D%221%22%3E%0A%09%09%09%3Cxul%3Astack%20xbl%3Ainherits%3D%22flex%22%20flex%3D%221%22%3E%0A%09%09%09%09%3Cxul%3Ahbox%20class%3D%22label-behind-box%22%20flex%3D%221%22%2F%3E%0A%09%09%09%09%3Cxul%3Avbox%20class%3D%22tab-progress-box%22%20flex%3D%221%22%3E%0A%09%09%09%09%09%3Cxul%3Aprogressmeter%0A%09%09%09%09%09%09class%3D%22tab-progress%22%0A%09%09%09%09%09%09mode%3D%22normal%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%3Dtab-progress%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Avbox%3E%0A%09%09%09%09%3Cxul%3Ahbox%0A%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09align%3D%22center%22%3E%0A%09%09%09%09%09%3Cxul%3Alabel%0A%09%09%09%09%09%09class%3D%22tab-real-text%22%0A%09%09%09%09%09%09flex%3D%221%22%0A%09%09%09%09%09%09xbl%3Ainherits%3D%22value%2Ccrop%2Caccesskey%22%2F%3E%0A%09%09%09%09%3C%2Fxul%3Ahbox%3E%0A%09%09%09%3C%2Fxul%3Astack%3E%0A%09%09%3C%2Fxul%3Avbox%3E%0A%09%3C%2Fcontent%3E%0A%3C%2Fbinding%3E%0A%3C%2Fbindings%3E#tab-label");\
      }\
      /* цвет, тень и фоновое изображение прогресса в base64 */\
      .tab-progress > .progress-remainder {\
         background-color: rgba(255, 255, 255, 0) !important;\
      }\
      .tab-progress > .progress-bar {\
         //box-shadow: 0 0 2px rgba(34, 153, 221, 0.26);\
         box-shadow: 0 0 2px rgba(255, 255, 255, 0);\
          background: #2299DD url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAACCAIAAAD5BB1nAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuNWWFMmUAAAAhSURBVEhLY1CaeXcUjaJRNIqGBBotsEbRKBpFQwTNvAsAqmb7PRUziHUAAAAASUVORK5CYII=") no-repeat right;\
      }\
      /* когда показывать, размеры, расположение */\
      .tabbrowser-tab[busy="true"]:not([progress="true"]) .tab-progress,\
      .tabbrowser-tab:not([busy="true"]) .tab-progress,\
      label.tab-text:not([tab-progress]) .tab-progress {\
         visibility: collapse;\
      }\
      .tab-progress,\
      .tab-real-text,\
      label.tab-text > .tab-label-inner-box,\
      label.tab-text > .tab-label-inner-box > *,\
      label.tab-text > .tab-label-inner-box > stack > *,\
      label.tab-text > .tab-label-inner-box > stack > * > spacer {\
         margin: 0 !important;\
         padding: 0 !important;\
         text-indent: 0 !important;\
      }\
      .tab-progress {\
         min-width: 0 !important;\
         height: 2px !important;\
         min-height: 2px !important;\
         max-height: 2px !important;\
         -moz-appearance: none !important;\
         border: none !important;\
         outline: none !important;\
         margin: 0 0 -4px !important;\
         position: relative !important;\
      }\
      .tab-progress > .progress-bar,\
      .tab-progress > .progress-remainder {\
         -moz-appearance: none !important;\
      }\
      .tab-progress-box { -moz-box-pack: end !important; }\
      \
      /* удалить стандартный индикатор загрузки( throbber ) */\
      .tab-throbber:not([pinned="true"]) { display: none !important; }\
      .tab-icon-image:not([pinned="true"]) { display: block !important; }\
      '));
   const sss = Cc["@mozilla.org/content/style-sheet-service;1"].getService(Ci.nsIStyleSheetService);
   sss.loadAndRegisterSheet(uri, sss.AGENT_SHEET); 
   addDestructor(function() sss.unregisterSheet(uri, sss.AGENT_SHEET) );

   
   // Отслеживать прогресс загрузки всех вкладок ....
   var tabsProgressListener = {      
          onProgressChange: function( browser, w, r, c, m, curProgr, maxProgr ) {
             if ( !maxProgr ) return;
         
             // добавлять атрибут с прогрессом загрузки к 'xul:label' каждой вкладки  
             var percentage = parseInt(curProgr * 100 / maxProgr);        
             var tab = gBrowser._getTabForBrowser( browser );
             var label = document.getAnonymousElementByAttribute( tab, 'class', 'tab-content').querySelector(".tab-text.tab-label");
             
             label.setAttribute('tab-progress', percentage );
          }        
   };
   gBrowser.addTabsProgressListener( tabsProgressListener );
   addDestructor(function() gBrowser.removeTabsProgressListener( tabsProgressListener ) );

})();

JSoul пишет:

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

Может тут посмотри тут: http://custombuttons.sourceforge.net/fo … amp;t=1795

Кто бы под симанку адаптировал?)

перестал работать в Firefox 53