Changes between Version 1 and Version 2 of Browser_Directory_Overview

Jun 16, 2019 9:33:59 PM (9 months ago)


  • Browser_Directory_Overview

    v1 v2  
    9595It is also the home of the new graphics architecture based on cairo (via a C++ wrapper called thebes). See NewGFXAPIs and GFXEvolution.
     97==== gradle ====
     98Containing files related to a JVM (Java Virtual Machine) build system.
     100==== hal ====
     101Contains platform specified functions (e.g. obtaining battery status, sensor information, memory information, Android alarms/vibrate/notifications/orientation, etc)
     103==== image ====
     104Image rendering library. Contains decoders for the image formats mozilla supports.
     106==== intl ====
     107Internationalization and localization support. See L10n:NewProjects.
     109===== intl/chardet =====
     110Code for "sniffing" the character encoding of Web pages.
     112===== intl/locale =====
     113Code related to determination of locale information from the operating environment.
     115===== intl/lwbrk =====
     116Code related to line breaking and word breaking.
     118===== intl/strres =====
     119Code related to string resources used for localization.
     121===== intl/uconv =====
     122Code that converts (both ways: encoders and decoders) between UTF-16 and many other character encodings.
     124===== intl/unicharutil =====
     125Code related to implementation of various algorithms for Unicode text, such as case conversion.
     127==== ipc ====
     128Container for implementations of IPC (Inter-Process Communication).
     130==== js ====
     132The JavaScript engine, also known as SpiderMonkey. See also JavaScript.
     134===== js/xpconnect =====
     135Support code for calling JavaScript code from C++ code and C++ code from JavaScript code, using XPCOM interfaces. See XPConnect.
     137==== layout ====
     138Code that implements a tree of rendering objects that describe the types and locations of the objects that are displayed on the screen (such as CSS boxes, tables, form controls, XUL boxes, etc.), and code that manages operations over that rendering tree (such as creating and destroying it, doing layout, painting, and event handling). See documentation and other information.
     140===== layout/base =====
     141Code that deals with the rendering tree.
     143===== layout/forms =====
     144Rendering tree objects for HTML form controls.
     146===== layout/generic =====
     147The basic rendering object interface and the rendering tree objects for basic CSS boxes.
     149===== layout/mathml =====
     150Rendering tree objects for MathML.
     152===== layout/svg =====
     153Rendering tree objects for SVG.
     155===== layout/tables =====
     156Rendering tree objects for CSS/HTML tables.
     158===== layout/xul =====
     159Additional rendering object interfaces for XUL and the rendering tree objects for XUL boxes.
     161==== media ====
     162Contains sources of used media libraries for example libpng.
     164==== memory ====
     165Cross-platform wrappers for memallocs functions etc.
     167==== mfbt ====
     168Implementations of classes like WeakPtr. Multi-platform assertions etc. More on MFBT
     170# mobile ====
     171==== mobile/android
     172Firefox for Android
     174==== modules ====
     175Compression/Archiving, math library, font (and font compression), Preferences Library
     177===== modules/libjar =====
     178Code to read zip files, used for reading the .jar files that contain the files for the mozilla frontend.
     180===== modules/libpref =====
     181Library for reading and writing preferences.
     183===== modules/zlib =====
     184Source code of zlib, used at least in the networking library for compressed transfers.
     186==== mozglue ====
     187Glue library containing various low-level functionality, including a dynamic linker for Android, a DLL block list for Windows, etc.
     189==== netwerk ====
     190Networking library, also known as Necko. Responsible for doing actual transfers from and to servers, as well as for URI handling and related stuff. See also Network library documentation.
     192==== nsprpub ====
     193Netscape Portable Runtime. Used as an abstraction layer to things like threads, file I/O, and socket I/O. See Netscape Portable Runtime.
     195==== nsprpub/lib ====
     196Mostly unused; might be used on Mac?
     198==== other-licenses ====
     199Contains libraries that are not covered by the MPL but are used in some mozilla code.
     201==== parser ====
     202Group of structures and functions needed to parse files based on XML/HTML.
     204===== parser/expat =====
     205Copy of the expat source code, which is the XML parser used by mozilla.
     207===== parser/html =====
     208The HTML parser (for everything except about:blank).
     210===== parser/htmlparser =====
     211The legacy HTML parser that's still used for about:blank. Parts of it are also used for managing the conversion of the network bytestream into Unicode in the XML parsing case.
     213===== parser/xml =====
     214The code for integrating expat (from parser/expat) into Gecko.
     216==== probes ====
     217Files related to dtrace.
     219==== python ====
     220Cross module python code.
     222===== python/mach =====
     223The code for the Mach building tool.
     225==== rdf ====
     226RDF handling APIs. See RDF and RDF. Also contains the chrome registry code used by SeaMonkey, although toolkit apps (such as Firefox and Thunderbird) use the copy forked into chrome.
     228==== security ====
     229Contains NSS and PSM, to support cryptographic functions in mozilla (like S/MIME, SSL, etc). See Network Security Services (NSS) and Personal Security Manager (PSM).