QuickContext2 расширение сыпет ошибками, но работает

Обсуждения на русском языке
User avatar
jars_
Lunatic
Lunatic
Posts: 398
Joined: 2016-12-27, 00:12

QuickContext2 расширение сыпет ошибками, но работает

Unread post by jars_ » 2016-12-27, 00:32

привет.
Всего-то через полтора года :lol: нашел реально работающее как надо (т.е. всегда) расширение чтоб было как в Опере - выделил текст и сразу меню. Quick Context 2
По двойному клику, по тройному, все настраивается, работает как нада... пока на заглянешь в консоль ошибок. Там сплошные ошибки на одну функцию:

Code: Select all

Timestamp: 27.12.2016 2:18:49
Error: TypeError: event.detail is undefined
Source File: resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///d:/MyPROGRAMs/INET/Pale%20Moon/Profiles/main-profile/extensions/%7Bd2a46ca0-999d-11da-a72b-0800200c9a66%7D.xpi!/bootstrap.js
Line: 148
Ошибка вылезает всегда при переключении вкладок. там такое , в строке 148 :

Code: Select all

function onTabSelect(event) {
  addListeners(event.target);
  
  let oldTab = event.detail.previousTab;       // имено тут ругается
  if (oldTab && oldTab.parentNode) {
    removeListeners(oldTab);
  }
}
Help. Любые способы. подскажите что (можно ли) исправить. Кроме ошибок в консоли, работает, что удивило.
На версии PM 26,5 ошибок нету и тоже работает(пришлось подправить версию в манифесте), без ошибок. Что-то изменилось в 27.0.3.

JustOff

Re: QuickContext2 расширение сыпет ошибками, но работает

Unread post by JustOff » 2016-12-27, 11:53

Поддержка event.detail.previousTab для TabSelect появилась только в FF29 вместе с Australis, поэтому ее нет ни в PM26, ни в PM27. В обоих случаях это приводит к тому, что у Quick Context 2 в Pale Moon течет память, только в PM26 еще и молча.

В принципе это несложно исправить, я сейчас зашлю соответствующий патч в апстрим.

UPD: https://github.com/MoonchildProductions ... n/pull/791

User avatar
jars_
Lunatic
Lunatic
Posts: 398
Joined: 2016-12-27, 00:12

Re: QuickContext2 расширение сыпет ошибками, но работает

Unread post by jars_ » 2016-12-28, 16:47

... написал пост позавчера, нету ничего. :wtf: повторюсь , вкратце.
благодарю JustOff , понял что не так. А можно это поправить, не дожидаясь будет\не_будет в обновлении. Яб сам изменил, но не знаю что вписать в функцию. Пробовал код из CB примерно такой(методом тыка):

Code: Select all

var activeTab = gBrowser.selectedTab;
//alert(activeTab.getAttribute('lastselected'));
let oldTab = activeTab.getAttribute('lastselected')
отдаётся какое-то число , типа такого: 1482943460502 это не то? (но ругается на gBrowser. все равно и не работает плугин )
Из ссылки увидел что там ребята создали customEvent, тот самый которого нету в нашем случае:

Code: Select all

let event = new CustomEvent("TabSelect", {
                   event.initEvent("TabSelect", true, false);
                         bubbles: true,
                         cancelable: false,
                         detail: {
                         previousTab: oldTab
                         }
         });
его можно самому куда-нибудь добавить? Скрипт, кнопкой, внутри какого-нить скрипта в omni.ja...
Любые способы, руки прямые. Знаний у нас маловато, в этом вопросе, это да...

JustOff

Re: QuickContext2 расширение сыпет ошибками, но работает

Unread post by JustOff » 2016-12-28, 18:33

jars_ wrote:А можно это поправить, не дожидаясь будет\не_будет в обновлении.
Патч уже принят и будет в 27.1 (а может и раньше). Можно и самому ручками в omni.ja его применить, но я бы не советовал без должного опыта. По другому - расширение проще переписать чем пропатчить)

User avatar
jars_
Lunatic
Lunatic
Posts: 398
Joined: 2016-12-27, 00:12

Re: QuickContext2 расширение сыпет ошибками, но работает

Unread post by jars_ » 2016-12-28, 21:27

JustOff wrote: Можно и самому ручками в omni.ja его применить, но я бы не советовал без должного опыта. По другому - расширение проще переписать чем пропатчить)
А ты советуй, да. Переписать, я тупо не могу. Т.е. можно это исправить, можно добавить в омни.йя. только что?
зы. Мысли вслух: былоб отлично , ежелиб комманда PM запихнула этот код(его реализацию) внутрь PM. Так, как это сделали с плугом S4E. Это былаб отличная фишка, я вам зубдаю! Эта штука(меню по выделению\двойному\тройному клику, без глюков!) - просто МЕГО интересная и нужная , практически всем юзерам, хто оторвался от IE, т.е. нарастил чуть моска.
Ребят, сделайте эту фишку в бразере - и увидите сразу же результат. Сам плугин на 12kb и так как он сделан - работает просто отлично, без нареканий, везде. У вас, это уместится в ещё меньший размер кода. Опции в prefs.js сделайте и всё. засуньте эту фишку в PM с теми жеж тремя настройками(по типу ка сделали с S4E) и это будет реально - фишка! Такого, нет ни у кого и не было ни у кого, никогда. Кроме Опера(уверен ЕЁ встретили Викинги дружным рёвом ООООодииииин! искупали в медовухе, когда Она к ним пожаловала :D ибо годнота).
всё что попадалось подобное, это плуги\кнопки наполовину глючащие\работающие. не везде. не всегда.

Locked