Name Description Size
components.conf 654 666
nsIXULStore.idl The XUL store is used to store information related to a XUL document/application. Typically it is used to store the persisted state for the document, such as window location, toolbars that are open and nodes that are open and closed in a tree. The data is serialized to [profile directory]/xulstore.json 2827
XULStore.cpp 4378
XULStore.h This file declares the XULStore API for C++ via the mozilla::XULStore namespace and the mozilla::XULStoreIterator class. It also declares the mozilla::XULStore::GetService() function that the component manager uses to instantiate and retrieve the nsIXULStore singleton. 2003
XULStore.sys.mjs The XULStore retains XULElement attributes such as the sizing and styling. These are stored in the user's profile directory inside of "xulstore.json". The JSON is stored based on the chrome URL of the resource. For instance the "chrome://browser/content/browser.xhtml" main window sizing could be stored like so: { "chrome://browser/content/browser.xhtml": { "main-window": { "screenX": "1104", "screenY": "25", "width": "1904", "height": "1612", "sizemode": "normal" }, ... } } The XULStore can only be loaded in the parent process. See the XULStore and XULPersist C++ classes for how this is integrated from the C++ side. 8753