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

Пользователи не любят читать документацию. Станьте оригинальным, будьте не как все. Ознакомьтесь с нашей базой знаний.

№17616-12-2015 19:57:09

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

difabor пишет

Как добавить иконку пока не знаю.

Удали:

Выделить код

Код:

%button% .toolbarbutton-text {\
     display: -moz-box !important;\
   }\

Отсутствует

 

№17716-12-2015 20:27:10

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: [CB]Memory Monitor

bunda1 пишет
difabor пишет

Как добавить иконку пока не знаю.

Удали:

Выделить код

Код:

%button% .toolbarbutton-text {\
     display: -moz-box !important;\
   }\

Спасибо.
Только у меня так не получилось.
А получилось так:
Я удалил:

Выделить код

Код:

%button% .toolbarbutton-icon {\
     display: none !important;\
   }\

и добавил:

Выделить код

Код:

var btn = this;
...
btn.image = <path_to_some_image>;

Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№17816-12-2015 22:27:50

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

difabor пишет

Только у меня так не получилось.

Извиняюсь, в спешке не то скопировал.

difabor пишет

добавил:

Выделить код

Код:

var btn = this;
btn.image = <path_to_some_image>;

Это ты зря, можно было просто сменить иконку у кнопки.

Отсутствует

 

№17916-12-2015 23:28:05

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: [CB]Memory Monitor

bunda1 пишет
difabor пишет

добавил:

Выделить код

Код:

var btn = this;
btn.image = <path_to_some_image>;

Это ты зря, можно было просто сменить иконку у кнопки.

Спасибо.
Но так можно задать иконку статически, а через btn.image - динамически - задать несколько картинок и по определённым условиям выбирать нужную.
Уважаемый bunda1, безусловно, Ваш Memory Monitor не требует иконки - это я спросил для общего развития, чтобы знать как управлять.
Надеюсь, я своими вопросами не сильно Вам морочу голову :)
Офф-топ.
Есть ли возможность найти в вэб архиве тему о сниппетах, управлением файлами и т.д.?


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№18017-12-2015 02:01:50

PEAKTOP
Участник
 
Группа: Members
Зарегистрирован: 07-10-2009
Сообщений: 116
UA: Firefox 38.0

Re: [CB]Memory Monitor

bunda1, подскажи, пожалуйста, если я в раздел удаления кэша и кукисов добавлю вот этот код, действие "Минимизировать использование памяти" выполнится?

Выделить код

Код:

if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { 
          e.preventDefault();  

// Минимизировать использование памяти
Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager)
           .minimizeMemoryUsage(null);

// очистить кэш ....
          try { 
              Services.cache.evictEntries(Ci.nsICache.STORE_IN_MEMORY);
              Services.cache.evictEntries(Ci.nsICache.STORE_ON_DISK);
              } 
          catch(e) { Services.cache2.clear() }

Оставшуюся часть кода  — удаление кукисов, для экономии места не стал вставлять.

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

Выделить код

Код:

if ( e.button == 1 ) {
Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager)
           .minimizeMemoryUsage(null);
 Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).
          showAlertNotification('chrome://global/skin/icons/information-16.png', 'Минимизировать использование памяти', 'Минимизирование использование памяти - выполнено', false, "", null, "");
}

Ещё попутно вопрос — можно при очистке памяти выполнять не одно, а три действия —  кнопки CG, CC, Minimize Memory  Usage?
z1dpzu4kicyv.png


1. Приму из добрых рук щедрый дар - инвайт на Хабр и Лепру
2. Бессмысленно осмысливать смысл неосмысленными мыслями!
3. Прежде чем подумать - подумай!

Отсутствует

 

№18117-12-2015 03:17:40

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

Отсутствует

 

№18217-12-2015 20:30:21

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

difabor пишет

Есть ли возможность найти в вэб архиве тему о сниппетах, управлением файлами и т.д.?

Инструменты для создателей Custom Buttons | Форум Mozilla Россия

Добавлено 17-12-2015 20:39:05
PEAKTOP
Выполнится по e.button == 2 и по e.button == 1, но такой код освобождает память максимум до 7 МБ как и CG, CC, Minimize Memory  Usage, так что нет толка от этого.

Отредактировано bunda1 (17-12-2015 20:39:05)

Отсутствует

 

№18317-12-2015 20:43:42

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: [CB]Memory Monitor

bunda1 пишет
difabor пишет

Есть ли возможность найти в вэб архиве тему о сниппетах, управлением файлами и т.д.?

Инструменты для создателей Custom Buttons | Форум Mozilla Россия

Спасибо!!!


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№18431-01-2016 15:28:30

Garider
Участник
 
Группа: Members
Зарегистрирован: 02-07-2014
Сообщений: 48
UA: Firefox 44.0

Re: [CB]Memory Monitor

В FF44.0 у меня поломалось что-то.Так показывает, т.е нет инфы с правой стороны:

скрытый текст
BcO7X6ql.jpg

CB версии 0.0.5.9pre1, ставил отсюда: Custom Buttons • View topic - Custom Buttons broken on all Firefox versions higher than 43
Кнопку использую эту: №161

Отсутствует

 

№18504-02-2016 07:35:10

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: [CB]Memory Monitor

Уважаемый bunda1,
у меня есть небольшой вопрос:
После того, как я создал кнопку у которой и иконка и ярлык (label), как мне отличить - находится курсор на иконке или на label? Что-то типа:

Выделить код

Код:

if (e.target.id == "<ИД кнопки>" && <что-то> == "image") alert("image");
if (e.target.id == "<ИД кнопки>" && <что-то> == "label") alert("label");

Что надо подставить вместо <что-то>?


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№18604-02-2016 11:48:41

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

difabor пишет

После того, как я создал кнопку у которой и иконка и ярлык (label), как мне отличить - находится курсор на иконке или на label?

Я проверил - обработчики не видят иконку или label, тут наверно нужно отдельно создать label - document.createElement("label") и поставить у кнопки. Не нужны такие сложности.

Отсутствует

 

№18704-02-2016 12:51:46

difabor
Участник
 
Группа: Members
Зарегистрирован: 21-09-2013
Сообщений: 539
UA: Firefox 36.0
Веб-сайт

Re: [CB]Memory Monitor

bunda1 пишет
difabor пишет

После того, как я создал кнопку у которой и иконка и ярлык (label), как мне отличить - находится курсор на иконке или на label?

Я проверил - обработчики не видят иконку или label, тут наверно нужно отдельно создать label - document.createElement("label") и поставить у кнопки. Не нужны такие сложности.

Да нет, мне - чтобы понять...
Спасибо большое!


Хорошо, когда у человека есть выбор, но плохо, когда он перед ним стоит ©

Отсутствует

 

№18804-02-2016 20:24:19

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

Garider пишет

В FF44.0 у меня поломалось что-то.Так показывает, т.е нет инфы с правой стороны:
Кнопку использую эту: №161

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E%u041F%u0430%u043C%u044F%u0442%u044C%20%u0432%20%u0430%u0434%u0440%u0435%u0441%u043D%u043E%u0439%20%u0441%u0442%u0440%u043E%u043A%u0435%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAADHklEQVQ4jYWTXUxTBxiG32hn62h1GLASoWoY+JNaZBtLmIMjyyKixLgEspEFkJZNHDHOAdmBU6RkUZzZsmK1+EOyOspAQ92QpjhbEEaUSmLXru4s4WLdxSgmrhCdEGSL7640ahb23L3J99w9H/AsiwBoHo9dOcu+fydvuQuAGoAKQBwWQvMiCps/TPo9WbvYBEDnatHOXTu7nnm5b1w/3NQUliRpHEDO895qnVYhAtiSrV9yfP7mBnY0Jz9am6z1W1v2/3Pj+jDn5h7yMXa7PaZUKnc9sVNWKmvv/5hBW03Cg7ffXHe343Q9f/BcYiTyG/+amefM7BxjsRgnJyc5MTHBWCxGq9X6QKlUFgAA9giaDu/pjfzmjJnBn3/h1PQsp6bvMRqdZCQS4fj4OGVZZjgcZjAYZCAQoCzLrK+vn1IoFNmo3K0ZFvfn0uH8jtFolLIsMxQKMRAIcGxsjKOjoxwZGeHQ0BB9Ph99Ph8HBgbo8XgoCEIIB4rUv3aek9jy+Rd0Op30+/0cHByk1+tlf38/3W43+/r66Ha76XL1sK2tjQ1SIz+pqWP+9u1/wlyx4u6pryT2X/GyurqaXV1d7O3tZU9PD10uF7u7u2m32ylJZlZVVbGy8gOWFO+guaGGpWVlf0DYovK+/kraja8d52mz2Wg0Gtne3s7W1laKokiTyUSj0cjSchMls4W1dSI9J1LZeXQjl7208ksAUAJQZ2VlDTscDoqiyMLCQpaX72Vp+T42NR+hubGR5ywZPLRXP5+UpGsr2Kq5PDW4mZkblhx9uoc1giCELRYLKyqMtDSZeeTQqywrKXik12++9e1nKXd+6kyfB/AyACF6xcCPihN8z0eVmpaWdnNb3luzBoM+PHBq7f1rZ1L/BrAzP1ttDXVtIoAMQ7qq4c5VA3XaFz7+z6IBpANQ5b0W1/7Qn8nlmkW1+4oSnOeb18wASDj4buKtk5/q7gFIWvA3SnbEO29f2EQA+ccPro4ceC9xCEDcqkTFMZUC2xaUAShsdSm3Lx5bNw1gVW5mnEcbv7jk/6SnWfp+fnwwJ1NtX+joXwJBlDIWFgabAAAAAElFTkSuQmCC%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B%28function%20%28%29%20%7B%0A%20%20%20if%20%28%20document.getElementById%28%27memoryDisplay%27%29%20%29%20return%3B%0A%20%20%20%20%0A%20%20%20//%20%u0421%u043E%u0437%u0434%u0430%u0442%u044C%20%u0432%20%u0430%u0434%u0440%u0435%u0441%u043D%u043E%u0439%20%u0441%u0442%u0440%u043E%u043A%u0435%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%20%u043F%u0430%u043C%u044F%u0442%u0438%20....%0A%20%20%20var%20memoryDisplay%20%3D%20document.createElement%28%22statusbarpanel%22%29%3B%0A%20%20%20var%20urlbarIcons%20%3D%20document.getElementById%28%22urlbar-icons%22%29%3B%0A%20%20%20urlbarIcons.insertBefore%28%20memoryDisplay%2C%20urlbarIcons.lastChild%20%29%3B%20//%20%u043F%u0435%u0440%u0435%u0434%20%u043F%u0435%u0440%u0432%u043E%u0439%20%u0438%u043A%u043E%u043D%u043A%u043E%u0439%20%u0430%u0434%u0440%u0435%u0441%u043D%u043E%u0439%20%u0441%u0442%u0440%u043E%u043A%u0438%0A%20%20%20memoryDisplay.id%20%3D%20%22memoryDisplay%22%3B%0A%20%20%20memoryDisplay.label%20%3D%20getMemory%28%29%20+%20%27%20MB%27%3B%20%20%0A%20%20%20self.timer%20%3D%20setInterval%28function%28%29%20%7B%0A%20%20%20%20%20%20var%20mv%20%3D%20getMemory%28%29%3B%0A%20%20%20%20%20%20memoryDisplay.label%20%3D%20mv%20+%20%27%20MB%27%3B%0A%20%20%20%7D%2C%202000%20%29%3B%20%20//%20%u0442%u0430%u0439%u043C%u0435%u0440%20%u043E%u0431%u043D%u043E%u0432%u043B%u044F%u0435%u0442%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%20%u0440%u0430%u0437%20%u0432%202000%u043C%u0441%28%202%20%u0441%u0435%u043A%20%29%0A%20%20%0A%20%20%0A//%20%u0412%u0441%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0430%u044F%20%u043F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20%u0443%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%u0430%20%u043E%u0442%u043E%u0431%u0440%u0430%u0436%u0430%u0435%u0442%20%u0437%u0430%u043F%u043E%u043B%u043D%u0435%u043D%u0438%u0435%20%u0434%u0438%u0441%u043A%u043E%u0432%u043E%u0433%u043E%20%u043A%u0435%u0448%u0430%20....%0A%20%20%20var%20title%20%3D%20%22%u041B%3A%20%u041E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20Flash-%u043A%u0443%u043A%u0438%5Cn%u0421%3A%20%u041C%u0438%u043D%u0438%u043C%u0438%u0437%u0438%u0440%u043E%u0432%u0430%u0442%u044C%20%u0438%u0441%u043F%u043E%u043B%u044C%u0437%u043E%u0432%u0430%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%5Cn%5Cn%22%3B%0A%20%20%20var%20data%20%3D%20%7B%0A%20%20%20%20%20%20%20memory%3A%20%22Memory%20Cache%3A%20%20%22%2C%0A%20%20%20%20%20%20%20disk%3A%20%22Disk%20Cache%3A%20%20%22%2C%0A%20%20%20%20%20%20%20offline%3A%20%22Offline%20Cache%3A%20%20%22%0A%20%20%20%7D%3B%20%20%20%0A%20%20%20%20%20%20function%20getSize%28size%29%20%7B%0A%20%20%20%20%20%20if%20%28%21size%29%20return%20size%20%3D%3D%3D%200%20%3F%20%220%22%20%3A%20%22%3F%22%3B%0A%20%20%20%20%20%20for%28var%20count%20%3D%20-1%3B%20size%20%3E%3D%201024%3B%20size%20/%3D%201024%2C%20count++%29%3B%0A%20%20%20%20%20%20return%20size.toFixed%282%29.replace%28/0+%24/%2C%20%22%22%29.replace%28/%5C.%24/%2C%20%22%22%29%20+%20%22%20%22%20+%20%28%22KMGT%22%5Bcount%5D%20%7C%7C%20%22%22%29%20+%20%22B%22%3B%0A%20%20%20%7D%0A%20%20%20function%20setInf%28tot%2C%20max%2C%20type%2C%20i%29%20%7B%0A%20%20%20%20%20%20var%20inf%20%3D%20getSize%28tot%29%20+%20%22%20/%20%22%20+%20getSize%28max%29%3B%0A%20%20%20%20%20%20var%20key%20%3D%20%22browser.cache.%22%20+%20type%20+%20%22.enable%22%3B%0A%20%20%20%20%20%20if%20%28%21Services.prefs.getBoolPref%28key%29%29%20inf%20+%3D%20%22%20%28disabled%29%22%3B%0A%20%20%20%20%20%20memoryDisplay.tooltipText%20%3D%20memoryDisplay.tooltipText.replace%28zws%28i%29%2C%20inf%29%3B%0A%20%20%20%7D%0A%20%20%20function%20zws%28ind%29%20%22%5Cu200B%5Cu200B%5Cu200B%22.slice%280%2C%20++ind%29%3B%0A%0A%20%20%20var%20types%20%3D%20Object.keys%28data%29%3B%0A%20%20%20var%20ttt%20%3D%20title%20+%20types.map%28function%28key%2C%20i%29%20data%5Bkey%5D%20+%20zws%28i%29%29.join%28%22%5Cn%22%29%3B%0A%20%20%20%0A%20%20%20var%20context%20%3D%20Cu.import%28%22resource%3A//gre/modules/LoadContextInfo.jsm%22%2C%20%7B%7D%29.LoadContextInfo.default%3B%0A%20%20%20memoryDisplay.onmouseenter%20%3D%20function%28%29%20%7B%0A%20%20%20%20%20%20%20memoryDisplay.tooltipText%20%3D%20ttt%3B%0A%20%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20var%20entries%20%3D%20%7B%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20Services.cache.visitEntries%28%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20visitDevice%3A%20function%28device%2C%20info%29%20entries%5Bdevice%5D%20%3D%20info%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20visitEntry%3A%20function%28%29%20%7B%7D%0A%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20info%20%3D%20entries%5Btype%5D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20setInf%28info%20%26%26%20info.totalSize%2C%20info%20%26%26%20info.maximumSize%2C%20type%2C%20i%29%0A%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%7D%20catch%28ex%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20Services.cache2%20%26%26%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20func%20%3D%20function%28aEntryCount%2C%20aConsumption%2C%20aCapacity%2C%20aDiskDirectory%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setInf%28aConsumption%2C%20aCapacity%2C%20type%2C%20i%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20storage%20%3D%20Services.cache2%5B%28type%20%3D%3D%20%22offline%22%20%3F%20%22app%22%20%3A%20type%29%20+%20%22CacheStorage%22%5D%28context%2C%20null%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20try%20%7B%20storage.asyncVisitStorage%28%7BonCacheStorageInfo%3A%20func%7D%2C%20false%29%20%7D%20catch%28ex%29%20%7B%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%7D%0A%20%20%20%7D%3B%0A%20%20%20%0A%20%20%20%0A%20%20%20//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u0432%u0441%u044E%20%u0437%u0430%u043D%u0438%u043C%u0430%u0435%u043C%u0443%u044E%20%u043E%u043F%u0435%u0440%u0430%u0442%u0438%u0432%u043D%u0443%u044E%20%u043F%u0430%u043C%u044F%u0442%u044C%20%u0432%20MB%20....%0A%20%20%20function%20getMemory%28%29%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20var%20reporterManager%20%3D%20Cc%5B%22@mozilla.org/memory-reporter-manager%3B1%22%5D.getService%28Ci.nsIMemoryReporterManager%29%3B%0A%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20var%20e%20%3D%20reporterManager.enumerateReporters%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20while%20%28%20e.hasMoreElements%28%29%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20mr%20%3D%20e.getNext%28%29.QueryInterface%28Ci.nsIMemoryReporter%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20self%5Bmr.path%5D%20%3D%20mr%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20var%20memory%20%3D%20self%5B%22resident%22%5D.amount%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20catch%28e%29%20%7B%20var%20memory%20%3D%20reporterManager.resident%20%7D%3B%20//%20%u0434%u043B%u044F%20Nightly%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20return%20%28%20Math.round%28%20memory/1048576%20%29%20%29%3B%0A%20%20%20%7D%3B%20%20%20%20%20%20%0A%20%20%20%0A%20%0A%20//%20%u041D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0430%20%u0444%u0443%u043D%u043A%u0446%u0438%u0439%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u043C%u044B%u0448%u0438%20%u0434%u043B%u044F%20Memory%20Monitor%20.....%0A%20%20%20memoryDisplay.onclick%20%3D%20function%28e%29%20%7B%0A%20%20%20%20%20%20//%20%u043F%u043E%20%u041B%u041A%u041C%20%u043E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20Flash%20%u043A%u0443%u043A%u0438%u0441%u044B%0A%20%20%20%20%20%20if%20%28%20e.button%20%3D%3D%200%20%29%7B%0A%20%20%20%20%20%20%20%20%20%20%20try%20%7B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_IN_MEMORY%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_ON_DISK%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20%20%20%20%20%20catch%28e%29%20%7B%20Services.cache2.clear%28%29%20%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20var%20dir%20%3D%20Services.dirsvc.get%28%27Home%27%2C%20Ci.nsIFile%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20dir.append%28%22Application%20Data%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20dir.append%28%22Macromedia%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20dir.exists%28%29%20%26%26%20dir.remove%28true%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%21dir.exists%28%29%20%26%26%20dir.create%28Ci.nsIFile.DIRECTORY_TYPE%2C%200777%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20//%20%u0432%u0441%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0435%u0435%20%u0441%u043E%u043E%u0431%u0449%u0435%u043D%u0438%u0435%20....%0A%20%20%20%20%20%20%20%20%20%20%20Cc%5B%22@mozilla.org/alerts-service%3B1%22%5D.getService%28Ci.nsIAlertsService%29.%0A%20%20%20%20%20%20%20%20%20%20%20showAlertNotification%28self.image%2C%20self.label%2C%20%27%u041E%u0447%u0438%u0441%u0442%u0438%u043B%20%u043A%u0435%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u043B%20Flash-%u043A%u0443%u043A%u0438%27%2C%20false%2C%20%22%22%2C%20null%2C%20%22%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20//%20%u043F%u043E%20%u0421%u041A%u041C%20%u043C%u0438%u043D%u0438%u043C%u0438%u0437%u0438%u0440%u043E%u0432%u0430%u0442%u044C%20%u0438%u0441%u043F%u043E%u043B%u044C%u0437%u043E%u0432%u0430%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%0A%20%20%20%20%20%20if%20%28%20e.button%20%3D%3D%201%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20memoryDisplay.style.color%20%3D%20%22red%22%3B%0A%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20if%20%28%20self.interval%20%29%20%7B%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20clearInterval%28%20self.interval%20%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20delete%20self.interval%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20self.interval%20%3D%20setInterval%28function%28%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Cc%5B%22@mozilla.org/memory-reporter-manager%3B1%22%5D.getService%28Ci.nsIMemoryReporterManager%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20.minimizeMemoryUsage%28null%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%7D%2C%2040000%20%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%7D%3B%0A%20%20%20%0A%20%20%20%20%20%0A%20%20%20//%20Css%20%u0441%u0442%u0438%u043B%u044C%20%u0434%u043B%u044F%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%u0430%20....%0A%20%20%20var%20uri%20%3D%20makeURI%28%27data%3Atext/css%2C%27+%20encodeURIComponent%28%27%5C%0A%20%20%20%20%20%20%23memoryDisplay%20%7B%20-moz-appearance%3A%20none%20%21important%3B%20margin-left%3A%20-4px%20%21important%3B%20margin-right%3A%20-4px%20%21important%3B%20border%3A%200%20%21important%3B%20padding%3A%200%20%21important%3B%20text-align%3A%20right%3B%20%7D%5C%0A%20%20%20%20%20%20%23memoryDisplay%5BresetMemory%5D%20%7B%20color%3A%20red%20%21important%3B%20%7D%5C%0A%20%20%20%27%29%29%3B%0A%20%20%20const%20sss%20%3D%20Cc%5B%22@mozilla.org/content/style-sheet-service%3B1%22%5D.getService%28Ci.nsIStyleSheetService%29%3B%0A%20%20%20sss.loadAndRegisterSheet%28uri%2C%20sss.AGENT_SHEET%29%3B%20%0A%20%20%20%0A%20%20%20%0A%20%20%20//%20%u0423%u0434%u0430%u043B%u044F%u0442%u044C%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%20%u043F%u0430%u043C%u044F%u0442%u0438%20%u0438%20%u0434%u0440%u0443%u0433%u0438%u0435%20%u0438%u0437%u043C%u0435%u043D%u0435%u043D%u0438%u044F%20....%0A%20%20%20addDestructor%28function%28%29%20%7B%20%0A%20%20%20%20%20%20sss.unregisterSheet%28uri%2C%20sss.AGENT_SHEET%29%3B%0A%20%20%20%20%20%20urlbarIcons.removeChild%28%20memoryDisplay%20%29%0A%20%20%20%20%20%20try%20%7B%20window.clearTimeout%28%20self.timer%20%29%20%7D%20catch%28e%29%20%7B%7D%3B%0A%20%20%20%7D%29%3B%0A%20%20%20%0A%7D%29%28%29%3B%0A%0A%0A%0A%0A%0A%0A%0A%20%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

№18907-02-2016 15:13:41

Garider
Участник
 
Группа: Members
Зарегистрирован: 02-07-2014
Сообщений: 48
UA: Firefox 44.0

Re: [CB]Memory Monitor

bunda1
Спасибо! Теперь норм.

Отсутствует

 

№19012-02-2016 17:50:11

Saenko
Участник
 
Группа: Members
Зарегистрирован: 03-11-2012
Сообщений: 140
UA: Firefox 44.0

Re: [CB]Memory Monitor

bunda1, можно ли исправить отображение размера кэш в таком варианте? :blush:

скрытый текст
// Показывать потребление памяти в адресной строке, от 04.09.2014. ................................
(function () {
   if ( document.getElementById('memoryDisplay') ) return;
   
   // Создать в адресной строке счётчик памяти ....
   var memoryDisplay = document.createElement("statusbarpanel");
   var urlbarIcons = document.getElementById("urlbar-icons");
   urlbarIcons.insertBefore( memoryDisplay, urlbarIcons.lastChild ); // перед первой иконкой адресной строки
   
   memoryDisplay.id = "memoryDisplay";
   memoryDisplay.label = getMemory() + ' MB'; 
   self.timer = setInterval(function() {
      var mv = getMemory();
      memoryDisplay.label = mv + ' MB';
      memoryDisplay.style.background = (mv > 800) ? 'Red' : '';
   }, 2000 );  // таймер обновляет счётчик раз в 2000мс( 2 сек )
   
   
   // Всплывающая подсказка у счётчика отображает заполнение дискового кеша ....
   var title = "Л: Подробно показать потребление памяти \nС: Очистить кэш и удалить Flash-куки\n\n";
   var data = {
       memory: "Memory Cache:  ",
       disk: "Disk Cache:  ",
       offline: "Offline Cache:  "
   };
   function getSize(size) {
      if (!size) return size === 0 ? "0" : "?";
      for(var count = -1; size >= 1024; size /= 1024, count++);
      return size.toFixed(2).replace(/0+$/, "").replace(/\.$/, "") + " " + ("KMGT"[count] || "") + "B";
   }
   function setInf(tot, max, type, i) {
      var inf = getSize(tot) + " / " + getSize(max);
      var key = "browser.cache." + type + ".enable";
      if (!Services.prefs.getBoolPref(key)) inf += " (disabled)";
      memoryDisplay.tooltipText = memoryDisplay.tooltipText.replace(zws(i), inf);
   }
   function zws(ind) "\u200B\u200B\u200B".slice(0, ++ind);

   var types = Object.keys(data);
   var ttt = title + types.map(function(key, i) data[key] + zws(i)).join("\n");

   memoryDisplay.onmouseenter = function() {
       memoryDisplay.tooltipText = ttt;
       try {
           var entries = {};
           Services.cache.visitEntries({
              visitDevice: function(device, info) entries[device] = info,
              visitEntry: function() {}
           });
           types.forEach(function(type, i) {
              var info = entries[type];
              setInf(info && info.totalSize, info && info.maximumSize, type, i)
           });
       } catch(ex) {
           Services.cache2 && types.forEach(function(type, i) {
               var func = function(aEntryCount, aConsumption, aCapacity, aDiskDirectory)
                          setInf(aConsumption, aCapacity, type, i);
               var storage = Services.cache2[(type == "offline" ? "app" : type) + "CacheStorage"]({}, null);
               try { storage.asyncVisitStorage({onCacheStorageInfo: func}, false) } catch(ex) {};
           });
       }
   };
   
   
   // Получить всю занимаемую оперативную память в MB ....
   function getMemory() {           
      var reporterManager = Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager);
      try {
          var e = reporterManager.enumerateReporters();
          while ( e.hasMoreElements() ) {
                  var mr = e.getNext().QueryInterface(Ci.nsIMemoryReporter);
                  self[mr.path] = mr;
                  }
          var memory = self["resident"].amount;
          }
      catch(e) { var memory = reporterManager.resident }; // для Nightly
     
      return ( Math.round( memory/1048576 ) );
   };     
   
   
   // По клику подробно показать потребление памяти в вкладке ....
   memoryDisplay.onclick = function(e) {
      if ( e.button == 0 ) {
       var memoryTab = gBrowser.getBrowserForTab( gBrowser.selectedTab = gBrowser.addTab("about:memory") );
         
       // oбработчик ждет пока откроется "about:memory", удаляет себя и нажимает кнопку на странице
       memoryTab.addEventListener("pageshow", function c(e) {         
          this.removeEventListener( e.type, c );           

          setTimeout(function() { try { e.originalTarget.getElementById('measureButton').click() } catch(e) {} }, 0);     
       });
       }

      // по СКМ очистить кэш и удалить Flash кукисы
      if ( e.button == 1 ) {
           // очистить кэш ....
           try {
                Services.cache.evictEntries(Ci.nsICache.STORE_IN_MEMORY);
                Services.cache.evictEntries(Ci.nsICache.STORE_ON_DISK);
                }
           catch(e) { Services.cache2.clear() };

           // удалить Flash кукисы ....
           var dir = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties).get("Home", Ci.nsIFile);
           dir.append("Application Data");
           dir.append("Macromedia");
           if ( dir.exists() ) dir.remove(true);
           if ( !dir.exists() ) dir.create(Ci.nsIFile.DIRECTORY_TYPE, 0777);

           // всплывающее сообщение ....
           Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).
           showAlertNotification("chrome://global/skin/icons/question-16.png", self.label, 'Очистил кеш и удалил Flash-куки', false, "", null, "");
           }

   };
   
     
   // Css стиль для счётчика ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
      #memoryDisplay { -moz-appearance: none !important; margin-left: -3px !important; margin-right: -5px !important; border: 0 !important; padding: 0 !important; text-align: right; }\
      #memoryDisplay[resetMemory] { color: red !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);
      urlbarIcons.removeChild( memoryDisplay )
      try { window.clearTimeout( self.timer ) } catch(e) {};
   });
   
})();


Спасибо...

Отсутствует

 

№19112-02-2016 21:41:21

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

Saenko пишет

bunda1, можно ли исправить отображение размера кэш в таком варианте?

Выделить код

Код:

// Показывать потребление памяти в адресной строке, от 04.09.2014. ................................
(function () {
   if ( document.getElementById('memoryDisplay') ) return;
   
   // Создать в адресной строке счётчик памяти ....
   var memoryDisplay = document.createElement("statusbarpanel");
   var urlbarIcons = document.getElementById("urlbar-icons");
   urlbarIcons.insertBefore( memoryDisplay, urlbarIcons.lastChild ); // перед первой иконкой адресной строки
   
   memoryDisplay.id = "memoryDisplay";
   memoryDisplay.label = getMemory() + ' MB'; 
   self.timer = setInterval(function() {
      var mv = getMemory();
      memoryDisplay.label = mv + ' MB';
      memoryDisplay.style.background = (mv > 800) ? 'Red' : '';
   }, 2000 );  // таймер обновляет счётчик раз в 2000мс( 2 сек )
   
   
// Всплывающая подсказка у счётчика отображает заполнение дискового кеша ....
   var title = "Л: Очистить кэш и удалить Flash-куки\nС: Минимизировать использование памяти\n\n";
   var data = {
       memory: "Memory Cache:  ",
       disk: "Disk Cache:  ",
       offline: "Offline Cache:  "
   };   
      function getSize(size) {
      if (!size) return size === 0 ? "0" : "?";
      for(var count = -1; size >= 1024; size /= 1024, count++);
      return size.toFixed(2).replace(/0+$/, "").replace(/\.$/, "") + " " + ("KMGT"[count] || "") + "B";
   }
   function setInf(tot, max, type, i) {
      var inf = getSize(tot) + " / " + getSize(max);
      var key = "browser.cache." + type + ".enable";
      if (!Services.prefs.getBoolPref(key)) inf += " (disabled)";
      memoryDisplay.tooltipText = memoryDisplay.tooltipText.replace(zws(i), inf);
   }
   function zws(ind) "\u200B\u200B\u200B".slice(0, ++ind);

   var types = Object.keys(data);
   var ttt = title + types.map(function(key, i) data[key] + zws(i)).join("\n");
   
   var context = Cu.import("resource://gre/modules/LoadContextInfo.jsm", {}).LoadContextInfo.default;
   memoryDisplay.onmouseenter = function() {
       memoryDisplay.tooltipText = ttt;
       try {
           var entries = {};
           Services.cache.visitEntries({
              visitDevice: function(device, info) entries[device] = info,
              visitEntry: function() {}
           });
           types.forEach(function(type, i) {
              var info = entries[type];
              setInf(info && info.totalSize, info && info.maximumSize, type, i)
           });
       } catch(ex) {
           Services.cache2 && types.forEach(function(type, i) {
               var func = function(aEntryCount, aConsumption, aCapacity, aDiskDirectory)
                          setInf(aConsumption, aCapacity, type, i);
               var storage = Services.cache2[(type == "offline" ? "app" : type) + "CacheStorage"](context, null);
               try { storage.asyncVisitStorage({onCacheStorageInfo: func}, false) } catch(ex) {};
           });
       }
   };
   
   
   // Получить всю занимаемую оперативную память в MB ....
   function getMemory() {           
      var reporterManager = Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager);
      try {
          var e = reporterManager.enumerateReporters();
          while ( e.hasMoreElements() ) {
                  var mr = e.getNext().QueryInterface(Ci.nsIMemoryReporter);
                  self[mr.path] = mr;
                  }
          var memory = self["resident"].amount;
          }
      catch(e) { var memory = reporterManager.resident }; // для Nightly
     
      return ( Math.round( memory/1048576 ) );
   };     
   
   
   // По клику подробно показать потребление памяти в вкладке ....
   memoryDisplay.onclick = function(e) {
      if ( e.button == 0 ) {
       var memoryTab = gBrowser.getBrowserForTab( gBrowser.selectedTab = gBrowser.addTab("about:memory") );
         
       // oбработчик ждет пока откроется "about:memory", удаляет себя и нажимает кнопку на странице
       memoryTab.addEventListener("pageshow", function c(e) {         
          this.removeEventListener( e.type, c );           

          setTimeout(function() { try { e.originalTarget.getElementById('measureButton').click() } catch(e) {} }, 0);     
       });
       }

      // по СКМ очистить кэш и удалить Flash кукисы
      if ( e.button == 1 ) {
           // очистить кэш ....
           try {
                Services.cache.evictEntries(Ci.nsICache.STORE_IN_MEMORY);
                Services.cache.evictEntries(Ci.nsICache.STORE_ON_DISK);
                }
           catch(e) { Services.cache2.clear() };

           // удалить Flash кукисы ....
           var dir = Cc["@mozilla.org/file/directory_service;1"].getService(Ci.nsIProperties).get("Home", Ci.nsIFile);
           dir.append("Application Data");
           dir.append("Macromedia");
           if ( dir.exists() ) dir.remove(true);
           if ( !dir.exists() ) dir.create(Ci.nsIFile.DIRECTORY_TYPE, 0777);

           // всплывающее сообщение ....
           Cc["@mozilla.org/alerts-service;1"].getService(Ci.nsIAlertsService).
           showAlertNotification("chrome://global/skin/icons/question-16.png", self.label, 'Очистил кеш и удалил Flash-куки', false, "", null, "");
           }

   };
   
     
   // Css стиль для счётчика ....
   var uri = makeURI('data:text/css,'+ encodeURIComponent('\
      #memoryDisplay { -moz-appearance: none !important; margin-left: -3px !important; margin-right: -5px !important; border: 0 !important; padding: 0 !important; text-align: right; }\
      #memoryDisplay[resetMemory] { color: red !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);
      urlbarIcons.removeChild( memoryDisplay )
      try { window.clearTimeout( self.timer ) } catch(e) {};
   });
   
})();

Отсутствует

 

№19213-02-2016 00:28:36

Saenko
Участник
 
Группа: Members
Зарегистрирован: 03-11-2012
Сообщений: 140
UA: Firefox 44.0

Re: [CB]Memory Monitor

bunda1, премного благодарен..! :beer: Чуток переписал обозначения действий для Л: и С: ... Всё как и хотелось...

Отсутствует

 

№19320-05-2016 15:43:48

DmFedorov
Участник
 
Группа: Members
Зарегистрирован: 20-05-2016
Сообщений: 1
UA: Palemoon 26.0

Re: [CB]Memory Monitor

bunda1
Я тут новенький, прочитал не все. Но понял так, что я выпаду из общего хора.

В принципе размер потребляемой памяти показывают многие проги.
По опыту с хромоногами знаю - мониторинг сам по себе несоразмерно (по сравнению со спец прогами) жрет и памяти и процессор.

Хотелось бы другого: Не общего на всю прогу потребления ресурсов, а по вкладкам.
Допустим загрузил 20 вкладок, все тип-топ, потребление в норме. Загрузил еще одну, а она жрет как голодная крыса. И я об этом ни сном ни духом.
А делов то - знать какая пакость это делает и закрыть ее в таком случае. Нечего ей висеть.

Если получится такое сотворить возможны два варианта:
Мониторинг (очень редкий, к примеру раз в минуту) и второй вариант просто инфа по требованию.
Вот тогда была бы реальная польза от фичи. Работаешь себе и вдруг бац - сообщение: вкладка жрет там больше нормы в 5 раз. Ок. Я знаю. Я конечно закрою.
Как итог браузер жил бы без перезапуска долго-долго. Что удобно.

Ну и к тому же знание сила: такая информация могла бы сподвигнуть некоторых разработчиков на конкретные шаги. А так ведь не знают просто.

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

Если в лоб задачу решить невозможно, можно еще попробовать простую логическую вещь: При открытии вкладки всегда после загрузки сверять потребление памяти до и после, хранить эту информацию и выдавать по требованию.
В итоге я буду видеть какая вкладка требует закрытия. Мониторинг вести опять же редко, но при загрузке вкладки - обязательно.

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

Отредактировано DmFedorov (20-05-2016 15:57:14)

Отсутствует

 

№19420-05-2016 16:01:59

oleg.sgh
Участник
 
Группа: Members
Зарегистрирован: 19-04-2014
Сообщений: 3141
UA: Firefox 46.0

Re: [CB]Memory Monitor

DmFedorov

Не общего на всю прогу потребления ресурсов, а по вкладкам.

Tab Memory Usage :: Add-ons for Firefox

Отсутствует

 

№19521-05-2016 17:45:18

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

DmFedorov пишет

Не общего на всю прогу потребления ресурсов, а по вкладкам.

Как тут написал oleg.sgh уже есть такое расширение.

Отсутствует

 

№19620-06-2016 03:30:24

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

Re: [CB]Memory Monitor

bunda1
Да, только оно фризит и скроллинг и открытие вкладок. Так как напихали в него не пойми что, я так думаю. Надо то, просто отображение потребляемой памяти в подсказках и миниатюрах вкладок, а не тупые графики и постоянный мониторинг уже открытых вкладок. Зачем мониторить открытую вкладку вообще не понятно!? Открыл вкладку - получил размер, обновил - получил еще раз.

Упс. Извиняюсь, не о том расширении писал. Был под впечатлением беспонтовости и неоптимизированности вот этого шедевра - Tab Data (+Memory usage)

Однако, все же неплохо было бы увидеть кнопку с функционалом описанным выше.

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

Отредактировано _zt (20-06-2016 03:43:09)

Отсутствует

 

№19703-02-2017 14:46:39

sthprog
Участник
 
Группа: Members
Зарегистрирован: 29-06-2009
Сообщений: 112
UA: Firefox 51.0

Re: [CB]Memory Monitor

Кнопка пропала с панели адреса, куда копнуть, чтобы найти причину?

Отсутствует

 

№19803-02-2017 16:58:45

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

sthprog пишет

Кнопка пропала с панели адреса, куда копнуть, чтобы найти причину?

24-01-2017 15:55:57

Отсутствует

 

№19904-03-2017 04:41:47

mahtanoronra
Участник
 
Группа: Members
Зарегистрирован: 08-03-2009
Сообщений: 63
UA: Firefox 45.0

Re: [CB]Memory Monitor

bunda1 пишет
PEAKTOP пишет

bunda1? перемещаемая кнопка не перемещается. После захода в режим "настройка интерфейса" индикатор Memory Monitor пропадает с панели, такое же поведение было и со старой кнопкой.

Упс, ну тогда вот так:

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E222MB%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bcustombuttons-stdicon-2%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B//%20%u041D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0430%20%u0444%u0443%u043D%u043A%u0446%u0438%u0439%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u043C%u044B%u0448%u0438%20%u0434%u043B%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%20................................%0Athis.onclick%20%3D%20function%28e%29%20%7B%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%200%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20var%20memoryTab%20%3D%20gBrowser.getBrowserForTab%28%20gBrowser.selectedTab%20%3D%20gBrowser.addTab%28%22about%3Amemory%22%29%20%29%3B%20%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20o%u0431%u0440%u0430%u0431%u043E%u0442%u0447%u0438%u043A%20%u0436%u0434%u0435%u0442%20%u043F%u043E%u043A%u0430%20%u043E%u0442%u043A%u0440%u043E%u0435%u0442%u0441%u044F%20%22about%3Amemory%22%2C%20%u0443%u0434%u0430%u043B%u044F%u0435%u0442%20%u0441%u0435%u0431%u044F%20%u0438%20%u043D%u0430%u0436%u0438%u043C%u0430%u0435%u0442%20%u043A%u043D%u043E%u043F%u043A%u0443%20%u043D%u0430%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u0435%0A%20%20%20%20%20%20%20%20%20%20memoryTab.addEventListener%28%22pageshow%22%2C%20function%20c%28e%29%20%7B%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20this.removeEventListener%28%20e.type%2C%20c%20%29%3B%20%20%20%20%20%20%20%20%20%20%20%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20setTimeout%28function%28%29%20%7B%20try%20%7B%20e.originalTarget.getElementById%28%27measureButton%27%29.click%28%29%20%7D%20catch%28e%29%20%7B%7D%20%7D%2C%200%29%3B%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%7D%29%3B%20%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%201%20%29%20gShowPopup%28this%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%202%20%26%26%20%21e.ctrlKey%20%26%26%20%21e.shiftKey%20%26%26%20%21e.altKey%20%26%26%20%21e.metaKey%20%29%20%7B%20%0A%20%20%20%20%20%20%20%20%20%20e.preventDefault%28%29%3B%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20%u043E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20....%0A%20%20%20%20%20%20%20%20%20%20try%20%7B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_IN_MEMORY%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_ON_DISK%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20%20%20%20%20catch%28e%29%20%7B%20Services.cache2.clear%28%29%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20//%20%u0423%u0434%u0430%u043B%u0438%u0442%u044C%20Flash%20%u043A%u0443%u043A%u0438%u0441%u0438%20....%0A%20%20%20%20%20%20%20%20%20%20var%20dir%20%3D%20Cc%5B%22@mozilla.org/file/directory_service%3B1%22%5D.getService%28Ci.nsIProperties%29.get%28%22Home%22%2C%20Ci.nsIFile%29%3B%0A%20%20%20%20%20%20%20%20%20%20dir.append%28%22Application%20Data%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20dir.append%28%22Macromedia%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20if%20%28%20dir.exists%28%29%20%29%20dir.remove%28true%29%3B%0A%20%20%20%20%20%20%20%20%20%20if%20%28%20%21dir.exists%28%29%20%29%20dir.create%28Ci.nsIFile.DIRECTORY_TYPE%2C%200777%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20//%20%u0412%u0441%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0435%u0435%20%u0441%u043E%u043E%u0431%u0449%u0435%u043D%u0438%u0435%20....%0A%20%20%20%20%20%20%20%20%20%20Cc%5B%22@mozilla.org/alerts-service%3B1%22%5D.getService%28Ci.nsIAlertsService%29.%0A%20%20%20%20%20%20%20%20%20%20showAlertNotification%28%27chrome%3A//global/skin/icons/information-16.png%27%2C%20%27%u041F%u043E%u043A%u0430%u0437%u044B%u0432%u0430%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%27%2C%20%27%u041E%u0447%u0438%u0441%u0442%u0438%u043B%20%u043A%u0435%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u043B%20Flash%20%u043A%u0443%u043A%u0438%u0441%u0438%27%2C%20false%2C%20%22%22%2C%20null%2C%20%22%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%7D%3B%0A%0A%0A%0A//%20%u041F%u043E%u043A%u0430%u0437%u044B%u0432%u0430%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%20%u043D%u0430%20%u0442%u0435%u043A%u0443%u0449%u0435%u0439%20%u043A%u043D%u043E%u043F%u043A%u0435%20................................%0A%28function%20%28%29%20%7B%0A%20%20%20self.label%20%3D%20getMemory%28%29%20+%20%27MB%27%3B%20%20%0A%20%20%20self.timer%20%3D%20setInterval%28function%28%29%20self.label%20%3D%20getMemory%28%29%20+%20%27MB%27%2C%202000%20%29%3B%20//%20%u0442%u0430%u0439%u043C%u0435%u0440%20%u043E%u0431%u043D%u043E%u0432%u043B%u044F%u0435%u0442%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%20%u0440%u0430%u0437%20%u0432%202000%u043C%u0441%28%202%20%u0441%u0435%u043A%20%29%20%20%20%0A%20%20%20%0A%20%20%20//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%20%u0432%20MB%20....%0A%20%20%20function%20getMemory%28%29%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20var%20reporterManager%20%3D%20Cc%5B%22@mozilla.org/memory-reporter-manager%3B1%22%5D.getService%28Ci.nsIMemoryReporterManager%29%3B%0A%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20var%20e%20%3D%20reporterManager.enumerateReporters%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20while%20%28%20e.hasMoreElements%28%29%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20mr%20%3D%20e.getNext%28%29.QueryInterface%28Ci.nsIMemoryReporter%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20self%5Bmr.path%5D%20%3D%20mr%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20var%20memory%20%3D%20self%5B%22resident%22%5D.amount%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20catch%28e%29%20%7B%20var%20memory%20%3D%20reporterManager.resident%20%7D%3B%20//%20%u0434%u043B%u044F%20Nightly%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20return%20%28%20Math.round%28%20memory/1048576%20%29%20%29%3B%0A%20%20%20%7D%3B%20%0A%0A%20%20%20//%20%u0421%u0442%u0438%u043B%u044C%20%u0434%u043E%u0431%u0430%u0432%u043B%u044F%u0435%u0442%20%u0442%u0435%u043A%u0441%u0442%20%u043D%u0430%20%u043A%u043D%u043E%u043F%u043A%u0443%20....%0A%20%20%20var%20uri%20%3D%20makeURI%28%27data%3Atext/css%2C%27+%20encodeURIComponent%28%27%5C%0A%20%20%20%25button%25%20.toolbarbutton-icon%20%7B%5C%0A%20%20%20%20%20display%3A%20none%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%25button%25%20.toolbarbutton-text%20%7B%5C%0A%20%20%20%20%20display%3A%20-moz-box%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%25button%25%20%7B%5C%0A%20%20%20%20%20-moz-box-orient%3A%20horizontal%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%27.replace%28/%25button%25/g%2C%20%22%23%22%20+%20_id%29%20%29%29%3B%0A%20%20%20const%20sss%20%3D%20Cc%5B%22@mozilla.org/content/style-sheet-service%3B1%22%5D.getService%28Ci.nsIStyleSheetService%29%3B%0A%20%20%20sss.loadAndRegisterSheet%28uri%2C%20sss.AGENT_SHEET%29%3B%20%0A%20%20%20%0A%20%20%20//%20%u0423%u0434%u0430%u043B%u044F%u0442%u044C%20%u0438%u0437%u043C%u0435%u043D%u0435%u043D%u0438%u044F%20....%0A%20%20%20addDestructor%28function%28%29%20%7B%20%0A%20%20%20%20%20%20try%20%7B%20window.clearTimeout%28%20self.timer%20%29%20%7D%20catch%28e%29%20%7B%7D%3B%0A%20%20%20%7D%29%3B%0A%20%20%20%20%20%0A%7D%29%28%29%3B%0A%0A%0A//%20%u0421%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0430%u044F%20%u043F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20%u0443%20%u043A%u043D%u043E%u043F%u043A%u0438%20................................%0A%28function%28%29%20%7B%20%20%20%0A%20%20%20%20var%20title%20%3D%20%22%u041B%3A%20%u041F%u043E%u0434%u0440%u043E%u0431%u043D%u043E%20%u043F%u043E%u043A%u0430%u0437%u0430%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%20%5Cn%u0421%3A%20CB%20%u041C%u0435%u043D%u044E%20%5Cn%u041F%3A%20%u041E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20Flash-%u043A%u0443%u043A%u0438%5Cn%5Cn%22%3B%0A%20%20%20%20var%20data%20%3D%20%7B%0A%20%20%20%20%20%20%20%20memory%3A%20%22Memory%20Cache%3A%20%20%22%2C%0A%20%20%20%20%20%20%20%20disk%3A%20%22Disk%20Cache%3A%20%20%22%2C%0A%20%20%20%20%20%20%20%20offline%3A%20%22Offline%20Cache%3A%20%20%22%0A%20%20%20%20%7D%3B%0A%20%20%20%20function%20getSize%28size%29%20%7B%0A%20%20%20%20%20%20%20%20if%20%28%21size%29%20return%20size%20%3D%3D%3D%200%20%3F%20%220%22%20%3A%20%22%3F%22%3B%0A%20%20%20%20%20%20%20%20for%28var%20count%20%3D%20-1%3B%20size%20%3E%3D%201024%3B%20size%20/%3D%201024%2C%20count++%29%3B%0A%20%20%20%20%20%20%20%20return%20size.toFixed%282%29.replace%28/0+%24/%2C%20%22%22%29.replace%28/%5C.%24/%2C%20%22%22%29%20+%20%22%20%22%20+%20%28%22KMGT%22%5Bcount%5D%20%7C%7C%20%22%22%29%20+%20%22B%22%3B%0A%20%20%20%20%7D%0A%20%20%20%20function%20setInf%28tot%2C%20max%2C%20type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20%20var%20inf%20%3D%20getSize%28tot%29%20+%20%22%20/%20%22%20+%20getSize%28max%29%3B%0A%20%20%20%20%20%20%20%20var%20key%20%3D%20%22browser.cache.%22%20+%20type%20+%20%22.enable%22%3B%0A%20%20%20%20%20%20%20%20if%20%28%21Services.prefs.getBoolPref%28key%29%29%20inf%20+%3D%20%22%20%28disabled%29%22%3B%0A%20%20%20%20%20%20%20%20self.tooltipText%20%3D%20self.tooltipText.replace%28zws%28i%29%2C%20inf%29%3B%0A%20%20%20%20%7D%0A%20%20%20%20function%20zws%28ind%29%20%22%5Cu200B%5Cu200B%5Cu200B%22.slice%280%2C%20++ind%29%3B%0A%0A%20%20%20%20var%20types%20%3D%20Object.keys%28data%29%3B%0A%20%20%20%20var%20ttt%20%3D%20title%20+%20types.map%28function%28key%2C%20i%29%20data%5Bkey%5D%20+%20zws%28i%29%29.join%28%22%5Cn%22%29%3B%0A%0A%20%20%20%20self.onmouseenter%20%3D%20function%28%29%20%7B%0A%20%20%20%20%20%20%20%20self.tooltipText%20%3D%20ttt%3B%0A%20%20%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20var%20entries%20%3D%20%7B%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.visitEntries%28%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20visitDevice%3A%20function%28device%2C%20info%29%20entries%5Bdevice%5D%20%3D%20info%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20visitEntry%3A%20function%28%29%20%7B%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20info%20%3D%20entries%5Btype%5D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setInf%28info%20%26%26%20info.totalSize%2C%20info%20%26%26%20info.maximumSize%2C%20type%2C%20i%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%7D%20catch%28ex%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20Services.cache2%20%26%26%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20func%20%3D%20function%28aEntryCount%2C%20aConsumption%2C%20aCapacity%2C%20aDiskDirectory%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setInf%28aConsumption%2C%20aCapacity%2C%20type%2C%20i%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20storage%20%3D%20Services.cache2%5B%28type%20%3D%3D%20%22offline%22%20%3F%20%22app%22%20%3A%20type%29%20+%20%22CacheStorage%22%5D%28%7B%7D%2C%20null%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20try%20%7B%20storage.asyncVisitStorage%28%7BonCacheStorageInfo%3A%20func%7D%2C%20false%29%20%7D%20catch%28ex%29%20%7B%7D%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%3B%0A%7D%29%28%29%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

а тут можно тоже сделать фикс отоброжения кеша и т д ?

Отсутствует

 

№20004-03-2017 22:36:08

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 24.0

Re: [CB]Memory Monitor

mahtanoronra пишет

а тут можно тоже сделать фикс отоброжения кеша и т д ?

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3E222MB%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bcustombuttons-stdicon-2%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B//%20%u041D%u0430%u0441%u0442%u0440%u043E%u0439%u043A%u0430%20%u0444%u0443%u043D%u043A%u0446%u0438%u0439%20%u043A%u043B%u0438%u043A%u043E%u0432%20%u043C%u044B%u0448%u0438%20%u0434%u043B%u044F%20%u043A%u043D%u043E%u043F%u043A%u0438%20................................%0Athis.onclick%20%3D%20function%28e%29%20%7B%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%200%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20var%20memoryTab%20%3D%20gBrowser.getBrowserForTab%28%20gBrowser.selectedTab%20%3D%20gBrowser.addTab%28%22about%3Amemory%22%29%20%29%3B%20%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20o%u0431%u0440%u0430%u0431%u043E%u0442%u0447%u0438%u043A%20%u0436%u0434%u0435%u0442%20%u043F%u043E%u043A%u0430%20%u043E%u0442%u043A%u0440%u043E%u0435%u0442%u0441%u044F%20%22about%3Amemory%22%2C%20%u0443%u0434%u0430%u043B%u044F%u0435%u0442%20%u0441%u0435%u0431%u044F%20%u0438%20%u043D%u0430%u0436%u0438%u043C%u0430%u0435%u0442%20%u043A%u043D%u043E%u043F%u043A%u0443%20%u043D%u0430%20%u0441%u0442%u0440%u0430%u043D%u0438%u0446%u0435%0A%20%20%20%20%20%20%20%20%20%20memoryTab.addEventListener%28%22pageshow%22%2C%20function%20c%28e%29%20%7B%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20this.removeEventListener%28%20e.type%2C%20c%20%29%3B%20%20%20%20%20%20%20%20%20%20%20%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20setTimeout%28function%28%29%20%7B%20try%20%7B%20e.originalTarget.getElementById%28%27measureButton%27%29.click%28%29%20%7D%20catch%28e%29%20%7B%7D%20%7D%2C%200%29%3B%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%7D%29%3B%20%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%201%20%29%20gShowPopup%28this%29%3B%0A%20%20%20%20%20%20%0A%20%20%20%20%20if%20%28%20e.button%20%3D%3D%202%20%26%26%20%21e.ctrlKey%20%26%26%20%21e.shiftKey%20%26%26%20%21e.altKey%20%26%26%20%21e.metaKey%20%29%20%7B%20%0A%20%20%20%20%20%20%20%20%20%20e.preventDefault%28%29%3B%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20//%20%u043E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20....%0A%20%20%20%20%20%20%20%20%20%20try%20%7B%20%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_IN_MEMORY%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20Services.cache.evictEntries%28Ci.nsICache.STORE_ON_DISK%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20%20%20%20%20catch%28e%29%20%7B%20Services.cache2.clear%28%29%20%7D%0A%0A%20%20%20%20%20%20%20%20%20%20//%20%u0423%u0434%u0430%u043B%u0438%u0442%u044C%20Flash%20%u043A%u0443%u043A%u0438%u0441%u0438%20....%0A%20%20%20%20%20%20%20%20%20%20var%20dir%20%3D%20Cc%5B%22@mozilla.org/file/directory_service%3B1%22%5D.getService%28Ci.nsIProperties%29.get%28%22Home%22%2C%20Ci.nsIFile%29%3B%0A%20%20%20%20%20%20%20%20%20%20dir.append%28%22Application%20Data%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20dir.append%28%22Macromedia%22%29%3B%0A%20%20%20%20%20%20%20%20%20%20if%20%28%20dir.exists%28%29%20%29%20dir.remove%28true%29%3B%0A%20%20%20%20%20%20%20%20%20%20if%20%28%20%21dir.exists%28%29%20%29%20dir.create%28Ci.nsIFile.DIRECTORY_TYPE%2C%200777%29%3B%0A%0A%20%20%20%20%20%20%20%20%20%20//%20%u0412%u0441%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0435%u0435%20%u0441%u043E%u043E%u0431%u0449%u0435%u043D%u0438%u0435%20....%0A%20%20%20%20%20%20%20%20%20%20var%20alertService%20%3D%20Cc%5B%22@mozilla.org/alerts-service%3B1%22%5D.getService%28Ci.nsIAlertsService%29%3B%0A%20%20%20%20%20%20%20%20%20%20alertService.showAlertNotification%28%27chrome%3A//global/skin/icons/information-16.png%27%2C%20%27%u041F%u043E%u043A%u0430%u0437%u044B%u0432%u0430%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%27%2C%20%27%u041E%u0447%u0438%u0441%u0442%u0438%u043B%20%u043A%u0435%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u043B%20Flash%20%u043A%u0443%u043A%u0438%u0441%u0438%27%29%3B%0A%20%20%20%20%20%20%20%20%20%20setTimeout%28function%28%29%20%7B%20alertService.closeAlert%28%29%20%7D%2C%202500%29%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%7D%3B%0A%0A%0A%0A//%20%u041F%u043E%u043A%u0430%u0437%u044B%u0432%u0430%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%20%u043D%u0430%20%u0442%u0435%u043A%u0443%u0449%u0435%u0439%20%u043A%u043D%u043E%u043F%u043A%u0435%20................................%0A%28function%20%28%29%20%7B%0A%20%20%20self.label%20%3D%20getMemory%28%29%20+%20%27MB%27%3B%20%20%0A%20%20%20self.timer%20%3D%20setInterval%28function%28%29%20self.label%20%3D%20getMemory%28%29%20+%20%27MB%27%2C%202000%20%29%3B%20//%20%u0442%u0430%u0439%u043C%u0435%u0440%20%u043E%u0431%u043D%u043E%u0432%u043B%u044F%u0435%u0442%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%20%u0440%u0430%u0437%20%u0432%202000%u043C%u0441%28%202%20%u0441%u0435%u043A%20%29%20%20%20%0A%20%20%20%0A%20%20%20//%20%u041F%u043E%u043B%u0443%u0447%u0438%u0442%u044C%20%u043F%u043E%u0442%u0440%u0435%u0431%u043B%u0435%u043D%u0438%u0435%20%u043F%u0430%u043C%u044F%u0442%u0438%20%u0432%20MB%20....%0A%20%20%20function%20getMemory%28%29%20%7B%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20var%20reporterManager%20%3D%20Cc%5B%22@mozilla.org/memory-reporter-manager%3B1%22%5D.getService%28Ci.nsIMemoryReporterManager%29%3B%0A%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20var%20e%20%3D%20reporterManager.enumerateReporters%28%29%3B%0A%20%20%20%20%20%20%20%20%20%20while%20%28%20e.hasMoreElements%28%29%20%29%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20var%20mr%20%3D%20e.getNext%28%29.QueryInterface%28Ci.nsIMemoryReporter%29%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20self%5Bmr.path%5D%20%3D%20mr%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20var%20memory%20%3D%20self%5B%22resident%22%5D.amount%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%20%0A%20%20%20%20%20%20catch%28e%29%20%7B%20var%20memory%20%3D%20reporterManager.resident%20%7D%3B%20//%20%u0434%u043B%u044F%20Nightly%0A%20%20%20%20%20%20%0A%20%20%20%20%20%20return%20%28%20Math.round%28%20memory/1048576%20%29%20%29%3B%0A%20%20%20%7D%3B%20%0A%0A%20%20%20//%20%u0421%u0442%u0438%u043B%u044C%20%u0434%u043E%u0431%u0430%u0432%u043B%u044F%u0435%u0442%20%u0442%u0435%u043A%u0441%u0442%20%u043D%u0430%20%u043A%u043D%u043E%u043F%u043A%u0443%20....%0A%20%20%20var%20uri%20%3D%20makeURI%28%27data%3Atext/css%2C%27+%20encodeURIComponent%28%27%5C%0A%20%20%20%25button%25%20.toolbarbutton-icon%20%7B%5C%0A%20%20%20%20%20display%3A%20none%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%25button%25%20.toolbarbutton-text%20%7B%5C%0A%20%20%20%20%20display%3A%20-moz-box%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%25button%25%20%7B%5C%0A%20%20%20%20%20-moz-box-orient%3A%20horizontal%20%21important%3B%5C%0A%20%20%20%7D%5C%0A%20%20%20%27.replace%28/%25button%25/g%2C%20%22%23%22%20+%20_id%29%20%29%29%3B%0A%20%20%20const%20sss%20%3D%20Cc%5B%22@mozilla.org/content/style-sheet-service%3B1%22%5D.getService%28Ci.nsIStyleSheetService%29%3B%0A%20%20%20sss.loadAndRegisterSheet%28uri%2C%20sss.AGENT_SHEET%29%3B%20%0A%20%20%20%0A%20%20%20//%20%u0423%u0434%u0430%u043B%u044F%u0442%u044C%20%u0438%u0437%u043C%u0435%u043D%u0435%u043D%u0438%u044F%20....%0A%20%20%20addDestructor%28function%28%29%20%7B%20%0A%20%20%20%20%20%20try%20%7B%20window.clearTimeout%28%20self.timer%20%29%20%7D%20catch%28e%29%20%7B%7D%3B%0A%20%20%20%7D%29%3B%0A%20%20%20%20%20%0A%7D%29%28%29%3B%0A%0A%0A//%20%u0412%u0441%u043F%u043B%u044B%u0432%u0430%u044E%u0449%u0430%u044F%20%u043F%u043E%u0434%u0441%u043A%u0430%u0437%u043A%u0430%20%u0443%20%u0441%u0447%u0451%u0442%u0447%u0438%u043A%u0430%20%u043E%u0442%u043E%u0431%u0440%u0430%u0436%u0430%u0435%u0442%20%u0437%u0430%u043F%u043E%u043B%u043D%u0435%u043D%u0438%u0435%20%u0434%u0438%u0441%u043A%u043E%u0432%u043E%u0433%u043E%20%u043A%u0435%u0448%u0430%20..............%0Avar%20data%20%3D%20%7B%0A%20%20%20%20memory%3A%20%22Memory%20Cache%3A%20%20%22%2C%0A%20%20%20%20disk%3A%20%22Disk%20Cache%3A%20%20%22%2C%0A%20%20%20%20offline%3A%20%22Offline%20Cache%3A%20%20%22%0A%7D%3B%20%20%20%0Afunction%20getSize%28size%29%20%7B%0A%20%20%20if%20%28%21size%29%20return%20size%20%3D%3D%3D%200%20%3F%20%220%22%20%3A%20%22%3F%22%3B%0A%20%20%20for%28var%20count%20%3D%20-1%3B%20size%20%3E%3D%201024%3B%20size%20/%3D%201024%2C%20count++%29%3B%0A%20%20%20return%20size.toFixed%282%29.replace%28/0+%24/%2C%20%22%22%29.replace%28/%5C.%24/%2C%20%22%22%29%20+%20%22%20%22%20+%20%28%22KMGT%22%5Bcount%5D%20%7C%7C%20%22%22%29%20+%20%22B%22%3B%0A%7D%0Afunction%20setInf%28tot%2C%20max%2C%20type%2C%20i%29%20%7B%0A%20%20%20var%20inf%20%3D%20getSize%28tot%29%20+%20%22%20/%20%22%20+%20getSize%28max%29%3B%0A%20%20%20var%20key%20%3D%20%22browser.cache.%22%20+%20type%20+%20%22.enable%22%3B%0A%20%20%20if%20%28%21Services.prefs.getBoolPref%28key%29%29%20inf%20+%3D%20%22%20%28disabled%29%22%3B%0A%20%20%20self.tooltipText%20%3D%20self.tooltipText.replace%28zws%28i%29%2C%20inf%29%3B%0A%7D%0Afunction%20zws%28ind%29%20%22%5Cu200B%5Cu200B%5Cu200B%22.slice%280%2C%20++ind%29%3B%0A%0Avar%20types%20%3D%20Object.keys%28data%29%3B%0Avar%20ttt%20%3D%20types.map%28function%28key%2C%20i%29%20data%5Bkey%5D%20+%20zws%28i%29%29.join%28%22%5Cn%22%29%3B%0A%20%20%20%0Avar%20context%20%3D%20Cu.import%28%22resource%3A//gre/modules/LoadContextInfo.jsm%22%2C%20%7B%7D%29.LoadContextInfo.default%3B%0Aself.onmouseenter%20%3D%20function%28%29%20%7B%0A%20%20%20self.tooltipText%20%3D%20%22%u041B%3A%20%u041E%u0447%u0438%u0441%u0442%u0438%u0442%u044C%20%u043A%u044D%u0448%20%u0438%20%u0443%u0434%u0430%u043B%u0438%u0442%u044C%20Flash-%u043A%u0443%u043A%u0438%5Cn%22%20+%20ttt%3B%0A%20%20%20try%20%7B%0A%20%20%20%20%20%20%20var%20entries%20%3D%20%7B%7D%3B%0A%20%20%20%20%20%20%20Services.cache.visitEntries%28%7B%0A%20%20%20%20%20%20%20visitDevice%3A%20function%28device%2C%20info%29%20entries%5Bdevice%5D%20%3D%20info%2C%0A%20%20%20%20%20%20%20visitEntry%3A%20function%28%29%20%7B%7D%0A%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20var%20info%20%3D%20entries%5Btype%5D%3B%0A%20%20%20%20%20%20setInf%28info%20%26%26%20info.totalSize%2C%20info%20%26%26%20info.maximumSize%2C%20type%2C%20i%29%0A%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%7D%20%0A%20%20%20catch%28ex%29%20%7B%0A%20%20%20%20%20%20%20Services.cache2%20%26%26%20types.forEach%28function%28type%2C%20i%29%20%7B%0A%20%20%20%20%20%20%20var%20func%20%3D%20function%28aEntryCount%2C%20aConsumption%2C%20aCapacity%2C%20aDiskDirectory%29%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20setInf%28aConsumption%2C%20aCapacity%2C%20type%2C%20i%29%3B%0A%20%20%20%20%20%20%20var%20storage%20%3D%20Services.cache2%5B%28type%20%3D%3D%20%22offline%22%20%3F%20%22app%22%20%3A%20type%29%20+%20%22CacheStorage%22%5D%28context%2C%20null%29%3B%0A%20%20%20%20%20%20%20try%20%7B%20storage.asyncVisitStorage%28%7BonCacheStorageInfo%3A%20func%7D%2C%20false%29%20%7D%20catch%28ex%29%20%7B%7D%3B%0A%20%20%20%20%20%20%20%7D%29%3B%0A%20%20%20%20%20%20%20%7D%0A%7D%3B%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Отсутствует

 

Board footer

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