Для одного из проектов, над которым я работаю, мне нужно использовать DOM Inspector для отладки расширения Firefox.
Проблема с DOM инспектором состоит в том, что он показывает только браузер под кодом, естьнет способа отсоединить браузер или раздел кода или браузер рядом.
Это не сработало для меня, потому что плагин, который я отлаживал, имел большой оверлейный оверлей, а проблемная область была в нижней части., поэтому нет физического способа увидеть код для этой области, а также для самой области.
Поэтому я решил изменить сам DOM Inspector, чтобы разместить браузер рядом с редактором кода.
Вот шаги, которые я предпринял:
- Взял существующий файл xpi из каталога профиля.
- Изменил его на zip.
- Зашел внутрь и извлек
inspector.jar
используя jar -xf <filename>
- Пошел на
inspectorOverlay.xul
и изменил <vbox id="bxInspectorMain">
на hbox.(Этого должно быть достаточно, чтобы расположить эти два окна по горизонтали.) - Затем я пересоздал файл jar, используя
jar cf
. - Архивировал каталог, убедившись, что имя совпадает, и изменил расширение обратно.к xpi.
Однако, когда я пытаюсь запустить его, я получаю следующие предупреждения:
Warning: WARN addons.xpi: Add-on is invalid: [Exception... "Component returned failure code: 0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST) [nsIZipReader.getInputStream]" nsresult: "0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST)" location: "JS frame :: resource://gre/modules/XPIProvider.jsm :: loadManifestFromZipReader :: line 740" data: no]
Source File: resource://gre/modules/XPIProvider.jsm
Line: 740
Warning: WARN addons.xpi: Could not uninstall invalid item from locked install location
Source File: resource://gre/modules/XPIProvider.jsm
Line: 2042
Мой вопрос - какие другие изменения мне обычно нужно сделать дляxpi правильно интерпретировать?