Changes between Version 21 and Version 22 of I2P_Browser_develop_n_hacks


Ignore:
Timestamp:
Jun 16, 2019 9:57:22 PM (5 weeks ago)
Author:
Meeh
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • I2P_Browser_develop_n_hacks

    v21 v22  
    1515
    1616It's worth having a look at [https://trac.torproject.org/projects/tor/wiki/doc/TorBrowser Tor's trac wiki] as well, as they also have browser hacking pages - but with more or less no duplicity of info between here and there.
     17
     18As it is widely used in Mozilla, it makes sense to explain how JavaScript and C++ relate to each other in the Mozilla source code. C++ is a compiled language, while JavaScript is an interpreted language. JavaScript is most commonly known as a technology used to implement web sites. However, the developers of Mozilla decided that the Mozilla source code itself should consist of a mixture of both languages.
     19
     20When you start the application, the C/C++ components start first. But in an early stage, a technology called XPConnect gets initialized that enables the use of interpreted JavaScript at runtime. In fact, a Mozilla browser distribution consists of both compiled C++ and uncompiled JS files.
     21
     22Also note, when surfing web pages which use JavaScript, that JavaScript code is executed within a sand box, and does not have access to Mozilla’s internal objects. Only those objects that are exposed by DOM (Document Object Model) are accessible.
     23
     24Whenever JS is mentioned in this document, it is meant as a technology to contribute to internal Mozilla functionality in most cases unless otherwise spesified. JavaScript is mostly used in those areas of the source code that care for user interface events. Most of the following document will explain the C++ aspect of the application.
     25
    1726
    1827=== Is it possible to edit javascript in firefox without recompile? ===