Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Firefox extension overlays bind to window objects. One way around this is to create an XPCOM component or find one that someone else already created to allow you to build functionality without binding it to the window objects. </p> <p>Of course, section #2 below on Observer Notifications may be helpful as well.</p> <p><strong>Possible workaround: #1</strong></p> <p>Instead of calling "startServer()" each time a window is opened, you could have a flag called windowCount that you could increment each time you open a new window. If windowCount is greater than 0, don't call startServer(). </p> <p>As windows close, you could decrement the count. Once it hits 0, stop the server.</p> <p>Here is information from the Mozilla forums on this problem: <a href="http://forums.mozillazine.org/viewtopic.php?f=19&amp;t=2030279" rel="nofollow">http://forums.mozillazine.org/viewtopic.php?f=19&amp;t=2030279</a></p> <p><strong>Possible workaround #2:</strong></p> <p>With that said, I've also found documentation for Observer Notifications, which may be helpful as there is a section on Application Startup and Shutdown: <a href="https://developer.mozilla.org/en/Observer_Notifications" rel="nofollow">https://developer.mozilla.org/en/Observer_Notifications</a></p> <p><strong>UPDATE:</strong></p> <p>Here are some resources on creating XPCOM components in JavaScript and in C++:</p> <ul> <li><a href="https://developer.mozilla.org/en/how_to_build_an_xpcom_component_in_javascript" rel="nofollow">https://developer.mozilla.org/en/how_to_build_an_xpcom_component_in_javascript</a></li> <li><a href="http://www.codeproject.com/KB/miscctrl/XPCOM_Creation.aspx" rel="nofollow">http://www.codeproject.com/KB/miscctrl/XPCOM_Creation.aspx</a></li> <li><a href="https://developer.mozilla.org/en/creating_xpcom_components" rel="nofollow">https://developer.mozilla.org/en/creating_xpcom_components</a></li> </ul>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload