Search completed in 1.60 seconds.
nsINavHistoryResultObserver
toolkit/components/places/nsina
vhistoryservice.idlscriptable lets clients observe changes to a result as the result updates itself according to bookmark and history system events.
... 1.0 66 introduced gecko 2.0 inherits from: nsisupports last changed in gecko 11.0 (firefox 11.0 / thunderbird 11.0 / seamonkey 2.8) note: in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1), this interface replaced the older nsina
vhistoryresultviewer interface, which only allowed one client at a time.
... method overview void batching(in boolean atogglemode); void containerclosed(in nsina
vhistorycontainerresultnode acontainernode); deprecated since gecko 2.0 obsolete since gecko 11.0 void containeropened(in nsina
vhistorycontainerresultnode acontainernode); deprecated since gecko 2.0 obsolete since gecko 11.0 void containerstatechanged(in nsina
vhistorycontainerresultnode acontainernode, in unsigned long aoldstate, in unsigned long anewstate); void invalidatecontainer(in nsina
vhistorycontainerresultnode acontainernode); void nodeannotationchanged(in nsina
vhistoryresultnode anode, in autf8string aannoname); void nodedateaddedchanged(in nsina
vhistoryresultnode anode, in prtime anewvalue); void nodehistorydetailschanged(in nsina
vhistoryresultnode anode, in prtime anewvisitdate, i...
...And 23 more matches
nsINavHistoryResultViewer
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable lets nsina
vhistoryresult instances notify places views of changes in the results.
... removed in gecko 2.0 and replaced with the nsina
vhistoryresultobserver interface, which is similar but allows multiple clients to observe the result at once.
... method overview void containerclosed(in nsina
vhistorycontainerresultnode acontainernode); void containeropened(in nsina
vhistorycontainerresultnode acontainernode); void invalidatecontainer(in nsina
vhistorycontainerresultnode acontainernode); void nodeannotationchanged(in nsina
vhistoryresultnode anode, in autf8string aannoname); void nodedateaddedchanged(in nsina
vhistoryresultnode anode, in prtime anewvalue)...
...And 21 more matches
nsINavHistoryService
toolkit/components/places/nsina
vhistoryservice.idlscriptable this interface provides complex query functions, more fine-grained getters and setters.
...to use this service, use: var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.interfaces.nsina
vhistoryservice); method overview astring getpagetitle(in nsiuri auri); void markpageasfollowedbookmark(in nsiuri auri); void markpageasfollowedlink(in nsiuri auri); void markpageastyped(in nsiuri auri); boolean canadduri(in nsiuri auri); long long addvisit(in nsiuri auri, in prtime atime, in nsiuri areferringuri, in long atransitiontype, in...
... boolean aisredirect, in long long asessionid); obsolete since gecko 22.0 nsina
vhistoryquery getnewquery(); nsina
vhistoryqueryoptions getnewqueryoptions(); nsina
vhistoryresult executequery(in nsina
vhistoryquery aquery, in nsina
vhistoryqueryoptions options); nsina
vhistoryresult executequeries([array,size_is(aquerycount)] in nsina
vhistoryquery aqueries, in unsigned long aquerycount, in nsina
vhistoryqueryoptions options); void querystringtoqueries(in autf8string aquerystring, [array, size_is(aresultcount)] out nsina
vhistoryquery aqueries, out unsigned long aresultcount, out nsina
vhistoryqueryoptions options); autf8string queriestoquerystring([array, size_is(aquerycount)] in nsina
vhistoryquery aqueries, in unsigned long aquerycount, in nsinav...
...And 11 more matches
nsINavHistoryResultNode
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable this is the base class for all places history result nodes, containing the uri, title, and other general information.
... parent nsina
vhistorycontainerresultnode identifies the parent result node in the result set.
... parentresult nsina
vhistoryresult the history-result to which this node belongs.
...And 9 more matches
nsINavHistoryResult
toolkit/components/places/nsina
vhistoryservice.idlscriptable describes the result of a history or bookmark query.
...more specifically, the nsina
vhistoryresultviewer interface provides the view component of the pattern, and nsina
vhistoryresultviewobserver is the controller.
... the result indicates to the view when something changes by using the nsina
vhistoryresultviewer interface.
...And 8 more matches
nsINavHistoryQueryOptions
toolkit/components/places/nsina
vhistoryservice.idlscriptable represents the global options for executing a query.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 13.0 (firefox 13.0 / thunderbird 13.0 / seamonkey 2.10) method overview nsina
vhistoryqueryoptions clone(); attributes attribute type description applyoptionstocontainers boolean if true, the query options are only applied to the containers.
... results_as_date_query 3 returns nsina
vhistoryqueryresultnode nodes for each predefined date range where we had visits.
...And 6 more matches
nsINavHistoryContainerResultNode
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable a foundation for the interfaces that provide a description of a query result on the places service that describes a container (which is any kind of grouping, including bookmark folders).
... 1.0 66 introduced gecko 1.9 inherits from: nsina
vhistoryresultnode last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) method overview nsina
vhistoryresultnode findnodebydetails(in autf8string auristring, in prtime atime, in long long aitemid, in boolean arecursive); nsina
vhistoryresultnode getchild(in unsigned long aindex); unsigned long getchildindex(in nsina
vhistoryresultnode anode); attributes attribute type description childcount unsigned long the number of child nodes; accessing this throws an ns_error_not_available exception of containeropen is false.
...nsina
vhistoryresultnode findnodebydetails( in autf8string auristring, in prtime atime, in long long aitemid, in boolean recursive ); parameters auristring the uri attribute value to match on.
...And 4 more matches
nsINavHistoryQueryResultNode
toolkit/components/places/nsina
vhistoryservice.idlscriptable used for places queries and as a base class for bookmark folders.
... 1.0 66 introduced gecko 1.8 inherits from: nsina
vhistorycontainerresultnode last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) note: if you request that places not be expanded in the options that generated the node, the node will report that it has no children and will never try to populate itself.
... method overview void getqueries([optional] out unsigned long querycount, [retval,array,size_is(querycount)] out nsina
vhistoryquery queries); attributes attribute type description folderitemid long long for both simple folder nodes and simple-folder-query nodes, this is set to the concrete itemid of the folder.
...And 4 more matches
nsINavHistoryQuery
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable encapsulates all the query parameters you're likely to need when building up history ui.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 2.0 (firefox 4 / thunderbird 3.3 / seamonkey 2.1) the nsina
vhistoryquery is not intended to be a super-general query mechanism.
...this is important because, if the user has their profile on a networked drive, query latency can be non-negligible method overview nsina
vhistoryquery clone(); void getfolders([optional ]out unsigned long count, [retval,array,size_is(count)] out long long folders); void gettransitions([optional] out unsigned long count, [retval,array,size_is(count)] out unsigned long transitions); void setfolders([const,array, size_is(foldercount)] in long long folders, in unsigned long foldercount); void settransitions([const,array, size_is(count)] in unsigned long transitions, in unsigned long count); attributes attribute type description absolutebegintime prtime read only: retrieves the begin time value that th...
...And 3 more matches
nsINavHistoryResultTreeViewer
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable this interface provides a predefined view adaptor for interfacing places query results with a tree.
... 1.0 66 introduced gecko 1.8 inherits from: nsina
vhistoryresultobserver last changed in gecko 1.9 (firefox 3) this object removes itself from the associated result when the tree is detached; this prevents circular references.
...method overview nsina
vhistoryresultnode nodefortreeindex(in unsigned long aindex); unsigned long treeindexfornode(in nsina
vhistoryresultnode anode); attributes attribute type description collapseduplicates boolean controls whether duplicate adjacent elements are collapsed into a single item in the tree.
...And 3 more matches
nsINavHistoryFullVisitResultNode
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable this interface describes a result from a result_type_full_visit query on the places service.
... this includes more detailed information than the result_type_visit query (which returns nsina
vhistoryvisitresultnode, and as such takes more time to look up.
... 1.0 66 introduced gecko 1.9 inherits from: nsina
vhistoryvisitresultnode last changed in gecko 1.9 (firefox 3) the information returned in this interface is not commonly used, hence its separation into a separate query type for efficiency.
...And 2 more matches
nsINavHistoryObserver
toolkit/components/places/nsina
vhistoryservice.idlscriptable this interface is similar to the nsirdfobserver class, but is used to observe interactions on the global history.
... using onbeforedeleteuri() in gecko 1.9.1 if you wish to support onbeforedeleteuri() in applications based on gecko 1.9.1, you must implement your observer's queryinterface() method to match on both nsina
vhistoryobserver and nsina
vhistoryobserver_mozilla_1_9_1_additions, as shown below.
... queryinterface: function(iid) { if (iid.equals(ci.nsina
vhistoryobserver) || iid.equals(ci.nsina
vhistoryobserver_mozilla_1_9_1_additions) || iid.equals(ci.nsisupports)) { return this; } throw cr.ns_error_no_interface; } see also nsina
vhistoryresult ...
nsINavHistoryVisitResultNode
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable this interface describes a result from a result_type_visit query on the places service.
... 1.0 66 introduced gecko 1.9 inherits from: nsina
vhistoryresultnode last changed in gecko 1.9 (firefox 3) attributes attribute type description sessionid long long the session id of the visit, used for session grouping when a tree view is sorted by date.
... see also nsina
vhistoryresultnode ...
nsINavHistoryBatchCallback
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable please add a summary to this article.
... 1.0 66 introduced gecko 1.9 inherits from: nsisupports last changed in gecko 1.9 (firefox 3) method overview void runbatched(in nsisupports auserdata); methods runbatched() void runbatched( in nsisupports auserdata ); parameters auserdata see also nsina
vhistoryservice.runinbatchmode() nsinavbookmarksservice.runinbatchmode() ...
nsINavHistoryResultViewObserver
toolkit/components/places/public/nsina
vhistoryservice.idlscriptable this interface is used by clients of the history results to define domain-specific handling of specific nsitreeview methods that the history result doesn't implement.
Displaying Places information using views
use them to display nsina
vhistoryresult objects to the user.
... see querying places for information about obtaining and using nsina
vhistoryresult objects, which this page assumes you are familiar with.
... an nsina
vhistoryresult instance provides the data for a view.
...And 34 more matches
Using the Places history service
the places history service ("na
vhistory") implements these history interfaces: nsiglobalhistory2: basic add page, is visited functionality used by the docshell when visiting and rendering pages.
... nsina
vhistoryservice: complex query functions, more fine-grained getters and setters.
... the na
vhistory service has broken this into two tables (see history service design).
...And 22 more matches
Querying Places
executing a query places queries have several basic parts: the query object: nsina
vhistoryquery, holds the search parameters the query options: nsina
vhistoryqueryoptions, allows configuration of the search result the history service: nsina
vhistoryservice, executes the query the first first step is to create the query and options, and fill them with the parameters you want.
... use nsina
vhistoryservice.getnewquery() and nsina
vhistoryservice.getnewqueryoptions() to retrieve empty objects.
... the defaults for these objects will result in a query that returns all of your browser history in a flat list: chromeutils.definemodulegetter(this, "placesutils", "resource://gre/modules/placesutils.jsm"); // no query options set will get all history, sorted in database order, // which is nsina
vhistoryqueryoptions.sort_by_none.
...And 19 more matches
nsIPlacesView
method overview nsina
vhistoryresultnode[] getdragableselection(); nsina
vhistoryresultnode[][] getremovableselectionranges(); nsina
vhistoryresult getresult(); nsina
vhistorycontainerresultnode getresultnode(); nsina
vhistoryresultnode[] getselectionnodes(); void selectall(); attributes attribute type description hasselection boolean whether ...
... selectednode nsina
vhistoryresultnode the selected node in the view.
... methods getdragableselection() returns an array of selected nsina
vhistoryresultnode objects that can be dragged from the view.
...And 14 more matches
Index
to use this service, use: 790 nsina
vhistorybatchcallback interfaces, interfaces:scriptable, needscontent, xpcom interface reference no summary!
... 791 nsina
vhistorycontainerresultnode developing mozilla, extensions, interfaces, places, xpcom, xpcom api reference returns a node matching specified details.
... 792 nsina
vhistoryfullvisitresultnode developing mozilla, extensions, interfaces, interfaces:scriptable, places, xpcom, xpcom api reference, xpcom interface reference the information returned in this interface is not commonly used, hence its separation into a separate query type for efficiency.
...And 13 more matches
Places Developer Guide
var history = cc["@mozilla.org/browser/nav-history-service;1"] .getservice(ci.nsina
vhistoryservice); var query = history.getnewquery(); query.setfolders([myfolderid], 1); var result = history.executequery(query, history.getnewqueryoptions()); // the root property of a query result is an object representing the folder you specified above.
... if (type == ci.nsina
vhistoryresultnode.result_type_uri) { var uri = childnode.uri; } else if (type == ci.nsina
vhistoryresultnode.result_type_folder) { childnode.queryinterface(ci.nsina
vhistorycontainerresultnode); childnode.containeropen = true; // now you can iterate over a subfolder's children } } ther available node types are documented in the idl.
...var bookmarks = cc["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(ci.nsinavbookmarksservice); var history = cc["@mozilla.org/browser/nav-history-service;1"] .getservice(ci.nsina
vhistoryservice); var query = history.getnewquery(); // specify folders to be searched var folders = [bookmarks.toolbarfolder, bookmarks.bookmarksmenufolder, bookmarks.unfiledbookmarksfolder]; query.setfolders(folders, folders.length); // specify terms to search for, matches against title, url and tags query.searchterms = "firefox"; var options = history.getnewqueryoptions(); options.querytype =...
...And 9 more matches
Places utilities for JavaScript
placesutils method overview nsiuri createfixeduri(string aspec); string getformattedstring(string key, string params); string getstring(string key); boolean nodeisfolder(nsina
vhistoryresultnode anode); boolean nodeisbookmark(nsina
vhistoryresultnode anode); boolean nodeisseparator(nsina
vhistoryresultnode anode); boolean nodeisvisit(nsina
vhistoryresultnode anode); boolean nodeisuri(nsina
vhistoryresultnode anode); boolean nodeisquery(nsina
vhistoryresultnode anode); boolean nodeisreadonly(nsina
vhistoryresultnode anode); ...
... boolean nodeishost(nsina
vhistoryresultnode anode); boolean nodeiscontainer(nsina
vhistoryresultnode anode); boolean nodeisdynamiccontainer(nsina
vhistoryresultnode anode); boolean nodeislivemarkcontainer(nsina
vhistoryresultnode anode); obsolete since gecko 21 boolean nodeislivemarkitem(nsina
vhistoryresultnode anode); obsolete since gecko 21 boolean isreadonlyfolder(nsina
vhistoryresultnode anode); int getindexofnode(nsina
vhistoryresultnode anode); string wrapnode(nsina
vhistoryresultnode anode, string atype, nsiuri aoverrideuri); array unwrapnodes(string blob, string atype); nsitransaction maketransaction(string data, string type, nsina
vhistoryresultnode container, int index, boolean copy); ...
... nsina
vhistoryresult getfoldercontents(int afolderid, boolean aexcludeitems, boolean aexpandqueries); boolean showaddbookmarkui(nsiuri auri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker, boolean aloadinsidebar, string akeyword, string apostdata); boolean showminimaladdbookmarkui(nsiuri auri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker, boolean aloadinsidebar, string akeyword, string apostdata); boolean showaddlivemarkui(nsiuri afeeduri, nsiuri asiteuri, string atitle, string adescription, int adefaultinsertionpoint, boolean ashowpicker); boolean showminimaladdlivemarkui(nsiuri afeeduri, nsiuri asiteuri, string atitle, string adescription, int adefaultinsertionpoint, boolean asho...
...And 5 more matches
Sizing items in CSS - Learn web development
in css we have units which relate to the size of the viewport — the vw unit for viewport width, and
vh for viewport height.
... 1
vh is equal to 1% of the viewport height, and 1vw is equal to 1% of the viewport width.
...in the example below we have a box which is sized as 20
vh and 20vw.
...And 3 more matches
nsIBrowserHistory
agesbytimeframe(in long long abegintime, in long long aendtime); void removepagesfromhost(in autf8string ahost, in boolean aentiredomain); void removevisitsbytimeframe(in long long abegintime, in long long aendtime); void unregisteropenpage(in nsiuri auri); obsolete since gecko 9.0 note: the markpageasfollowedlink and markpageastyped methods were moved to nsina
vhistoryservice in gecko 22.0 so that all markpageas* methods can be found in one interface.
... note: the count attribute was removed in gecko 15.0 because it was only used to determine if there were any entries at all anyway, so the nsina
vhistoryservice.hashistoryentries attribute is better for this.
...you should use nsina
vhistoryservice.markpageasfollowedlink() instead.
...And 2 more matches
Retrieving part of the bookmarks tree
first, you need to get an empty query and options objects from the history service: var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.interfaces.nsina
vhistoryservice); var options = historyservice.getnewqueryoptions(); var query = historyservice.getnewquery(); find the folder you want to get known folder ids are retrieved from the bookmarks service.
...configure the query to get a hierarchical bookmarks result, pass the folder id to setfolders in your query object: query.setfolders([toolbarfolder], 1); run the query the executequery and executequeries functions will return an nsina
vhistoryresult object containing the results of your query: var result = historyservice.executequery(query, options); get the results when you are querying for exactly one folder grouped by folder with no fancy query parameters such as keywords or date ranges (as in this example), the root of the result will be an nsina
vhistorycontainerresultnode corresponding to your folder.
... if you have a complex query the root will be a nsina
vhistoryqueryresultnode.
...complete code listing var historyservice = components.classes["@mozilla.org/browser/nav-history-service;1"] .getservice(components.interfaces.nsina
vhistoryservice); var options = historyservice.getnewqueryoptions(); var query = historyservice.getnewquery(); var bookmarksservice = components.classes["@mozilla.org/browser/nav-bookmarks-service;1"] .getservice(components.interfaces.nsinavbookmarksservice); var toolbarfolder = bookmarksservice.toolbarfolder; query.setfolders([toolbarfolder], 1); var result = his...
nsIDynamicContainer
method overview void oncontainermoved(in long long aitemid, in long long anewparent, in long anewindex); void oncontainernodeclosed(in nsina
vhistorycontainerresultnode acontainer); void oncontainernodeopening(in nsina
vhistorycontainerresultnode acontainer, in nsina
vhistoryqueryoptions aoptions); void oncontainerremoving(in long long aitemid); methods oncontainermoved() this method is called when the given container has just been moved, in case the service needs to do any bookkeeping.
...void oncontainernodeclosed( in nsina
vhistorycontainerresultnode acontainer ); parameters acontainer the container node of the container being closed.
...void oncontainernodeopening( in nsina
vhistorycontainerresultnode acontainer, in nsina
vhistoryqueryoptions aoptions ); parameters acontainer the container node for the container being opened.
... see also places nsina
vhistorycontainerresultnode nsina
vhistoryqueryoptions nsinavbookmarksservice.createdynamiccontainer() ...
<length> - CSS: Cascading Style Sheets
vh equal to 1% of the height of the viewport's initial containing block.
... vmin equal to the smaller of vw and
vh.
... vmax equal to the larger of vw and
vh.
... candidate recommendation adds the ch, rem, vw,
vh, vmin, vmax, and q units.
Rich-Text Editing in Mozilla - Developer guides
azis0deap8a/wd/ol2nkwaaaalwsflzaaalewaacxmbajqcgaaaaad0su1fb9oebxczfmgboiwaaaaidevydenvbw1lbnqa9sywvwaaaufjrefuomvtlutsjfeux//n3nn0ydpbh1abrpt4lfqtqkc3jrkkneisiiribbehjjpklivo4m1rrmkkjqirmjruqudkpt71qpipirkpaqdf55tv5vvuszjqtjolseukd3xu/3dpzusc/22wtu2wrn+jg5so/ocdh8ycmjdflehmlkjkvk7kuyn+ufza/rtth76zavocdptrxzqtni3mrwupc+6cktlxz/sddp2uu9uxlmyxz6qm8v4tz8lhf1h+zdqxt7s8olmxtbf4e8qafhjj3kbp2mzkkthpitjp9
vh6ihia+whtasx5brpwuemgdondf/2a4m7ukds1jw662+xkqtkeuoqjktojm2h53yfl15psj04zc94wdtibr26fxlc2mzrvbccebz2kirfd414tkmlezbvgt33+qcohgha81swysew0r1uzfnylmtpx80pngqq91lwvk2jgvgnfvzg6ycyrat16gftw5kkkfo1eqltfh5q2ett0biwf+aitq4fdbk+imyo1oxvgf03wafjqvbckvdffryetxqiffygazths0zwagd7fg5tnnyntp8/fzvgwjofmgg7gox0sakkgqgdmgkbi0njgmeimpgdk5+wacewed0ywblhguz4hw5oduekrblt7dtgdegxacsiznx8zpmwh7k4rkpjcuhdxcul6mdsmmbxdlwc...
...8wmdzj5gbn1viww4c3kdon7vovm7s3pab9u5qsu5/x5kunly+eexqbklnserk61+++vnajcfkymtiwffj0qwzbjdkjcets1y8evyd48toz8y/ffzv//vpp4veffxpx77z6l5jewhpu8mqtdawmdlzyrjb/mzm0jct5lj+89+ybm6zz95omh7s4xbygn3sluq4mj5k8ikmgp4f0////fv77//8nly+7mccxmyydawods9jm9tcvpypd35pne3ljdjvj26+h2dhypuenikgfvqexnmsl3tqepxxsqhxpyc666s+fv1fmdkr3tk72zpix8ntc7bdfhfkeevbc9khbk/9iywhierbu6mwby/7//8/4//9/pgonh6jgvazvfdrtq2vgibizrutibgck+i
vhvuekwaaaaabjru5erkjggg=="> <img class="intlink" title="bold" onclick="formatdoc('bold');" src="data:image/gif;base64,r0lgodlhfgawaid/amdawaaaach5baeaaaaalaaaaaawabyaqainhi+pa+h9mjy0lhdgtrxzdg5wgfvk6axqyk6y9kxvkknulbb6zgmfads=" /> <img class="intlink" title="italic" onclick="formatdoc('italic');" src="data:image/gif;base64,r0lgodlhfgawakedaaaaaf9vj5wibf///yh5baeaaamalaaaaaawabyaaaijni+py+0po5x0gxvr...
...4650b/x8gemmpgugwhjnzxodkso5oquogo5khbwwesymqscrdhu9voyk5tm9zspfsr9gsjwiaow==" /> <img class="intlink" title="hyperlink" onclick="var slnk=prompt('write the url here','http:\/\/');if(slnk&&slnk!=''&&slnk!='http://'){formatdoc('createlink',slnk)}" src="data:image/gif;base64,r0lgodlhfgawaomkab1chdrly19vj3morpgjuaezxrcztb/i19ha7pv8/f///////////////////////yh5baekaa8alaaaaaawabyaaary8mljq7046827/2byiq
vhhg9pegvgiklydeuby/rle4fqf4dcj2aqxaijqdcwqcaebwiioemqbgsafhdagghgi9xghahmnoszgjkjei33uesv2+/4vd4taqa7" /> <img class="intlink" title="cut" onclick="formatdoc('cut');" src="data:image/gif;base64,r0lgodlhfgawaiqsab1chbfnsrjtysjywjljwkxwl19vj1dusyodhl6mnhmorpqbmpgjuaezxrcztcdcxl/i18rl1p///////////////////////////////////////////////////////yh5baeaab8alaaaaaawabyaaavu4ceozgmeakqubds6tnnebgnapng0kbgmi5t...
...=" /> <img class="intlink" title="paste" onclick="formatdoc('paste');" src="data:image/gif;base64,r0lgodlhfgawaiquad04ktrly2txqf9vj414wzwibxmorpqbmpgjudclfaezxsa0cb/i1+3yitha7prkiphvbups+/fvrvv8/f///////////////////////////////////////////////yh5baeaab8alaaaaaawabyaaawn4ceozgmeakqubgsuspvbsyfjjvds6njlb0khr4akbcmfscgbqaocwjf5gwquvyksfbwze+awibv0ghfog2ewidchjwriqo9e2fx4xd5r+b0ddaenbxbhbhn2dgwdaqfjjy
vhcqyrfgoidgiqjawtcqmriwwmfgicnvcaaamoak+blaortluyt7i5uiuhads=" /> </div> <div id="textbox" contenteditable="true"><p>lorem ipsum</p></div> <p id="editmode"><input type="checkbox" name="switchmode" id="switchbox" onchange="setdocmode(this.checked);" /> <label for="switchbox">show html</label></p> <p><input type="submit" value="send" /></p> </form> </body> </html> note: if you want to see how to s...
Making content editable - Developer guides
azis0deap8a/wd/ol2nkwaaaalwsflzaaalewaacxmbajqcgaaaaad0su1fb9oebxczfmgboiwaaaaidevydenvbw1lbnqa9sywvwaaaufjrefuomvtlutsjfeux//n3nn0ydpbh1abrpt4lfqtqkc3jrkkneisiiribbehjjpklivo4m1rrmkkjqirmjruqudkpt71qpipirkpaqdf55tv5vvuszjqtjolseukd3xu/3dpzusc/22wtu2wrn+jg5so/ocdh8ycmjdflehmlkjkvk7kuyn+ufza/rtth76zavocdptrxzqtni3mrwupc+6cktlxz/sddp2uu9uxlmyxz6qm8v4tz8lhf1h+zdqxt7s8olmxtbf4e8qafhjj3kbp2mzkkthpitjp9
vh6ihia+whtasx5brpwuemgdondf/2a4m7ukds1jw662+xkqtkeuoqjktojm2h53yfl15psj04zc94wdtibr26fxlc2mzrvbccebz2kirfd414tkmlezbvgt33+qcohgha81swysew0r1uzfnylmtpx80pngqq91lwvk2jgvgnfvzg6ycyrat16gftw5kkkfo1eqltfh5q2ett0biwf+aitq4fdbk+imyo1oxvgf03wafjqvbckvdffryetxqiffygazths0zwagd7fg5tnnyntp8/fzvgwjofmgg7gox0sakkgqgdmgkbi0njgmeimpgdk5+wacewed0ywblhguz4hw5oduekrblt7dtgdegxacsiznx8zpmwh7k4rkpjcuhdxcul6mdsmmbxdlwc...
...8wmdzj5gbn1viww4c3kdon7vovm7s3pab9u5qsu5/x5kunly+eexqbklnserk61+++vnajcfkymtiwffj0qwzbjdkjcets1y8evyd48toz8y/ffzv//vpp4veffxpx77z6l5jewhpu8mqtdawmdlzyrjb/mzm0jct5lj+89+ybm6zz95omh7s4xbygn3sluq4mj5k8ikmgp4f0////fv77//8nly+7mccxmyydawods9jm9tcvpypd35pne3ljdjvj26+h2dhypuenikgfvqexnmsl3tqepxxsqhxpyc666s+fv1fmdkr3tk72zpix8ntc7bdfhfkeevbc9khbk/9iywhierbu6mwby/7//8/4//9/pgonh6jgvazvfdrtq2vgibizrutibgck+i
vhvuekwaaaaabjru5erkjggg=="> <img class="intlink" title="bold" onclick="formatdoc('bold');" src="data:image/gif;base64,r0lgodlhfgawaid/amdawaaaach5baeaaaaalaaaaaawabyaqainhi+pa+h9mjy0lhdgtrxzdg5wgfvk6axqyk6y9kxvkknulbb6zgmfads=" /> <img class="intlink" title="italic" onclick="formatdoc('italic');" src="data:image/gif;base64,r0lgodlhfgawakedaaaaaf9vj5wibf///yh5baeaaamalaaaaaawabyaaaijni+py+0po5x0gxvr...
...4650b/x8gemmpgugwhjnzxodkso5oquogo5khbwwesymqscrdhu9voyk5tm9zspfsr9gsjwiaow==" /> <img class="intlink" title="hyperlink" onclick="var slnk=prompt('write the url here','http:\/\/');if(slnk&&slnk!=''&&slnk!='http://'){formatdoc('createlink',slnk)}" src="data:image/gif;base64,r0lgodlhfgawaomkab1chdrly19vj3morpgjuaezxrcztb/i19ha7pv8/f///////////////////////yh5baekaa8alaaaaaawabyaaary8mljq7046827/2byiq
vhhg9pegvgiklydeuby/rle4fqf4dcj2aqxaijqdcwqcaebwiioemqbgsafhdagghgi9xghahmnoszgjkjei33uesv2+/4vd4taqa7" /> <img class="intlink" title="cut" onclick="formatdoc('cut');" src="data:image/gif;base64,r0lgodlhfgawaiqsab1chbfnsrjtysjywjljwkxwl19vj1dusyodhl6mnhmorpqbmpgjuaezxrcztcdcxl/i18rl1p///////////////////////////////////////////////////////yh5baeaab8alaaaaaawabyaaavu4ceozgmeakqubds6tnnebgnapng0kbgmi5t...
...=" /> <img class="intlink" title="paste" onclick="formatdoc('paste');" src="data:image/gif;base64,r0lgodlhfgawaiquad04ktrly2txqf9vj414wzwibxmorpqbmpgjudclfaezxsa0cb/i1+3yitha7prkiphvbups+/fvrvv8/f///////////////////////////////////////////////yh5baeaab8alaaaaaawabyaaawn4ceozgmeakqubgsuspvbsyfjjvds6njlb0khr4akbcmfscgbqaocwjf5gwquvyksfbwze+awibv0ghfog2ewidchjwriqo9e2fx4xd5r+b0ddaenbxbhbhn2dgwdaqfjjy
vhcqyrfgoidgiqjawtcqmriwwmfgicnvcaaamoak+blaortluyt7i5uiuhads=" /> </div> <div id="textbox" contenteditable="true"><p>lorem ipsum</p></div> <p id="editmode"><input type="checkbox" name="switchmode" id="switchbox" onchange="setdocmode(this.checked);" /> <label for="switchbox">show html</label></p> <p><input type="submit" value="send" /></p> </form> </body> </html> note: if you want to see how to st...
History Service Design
view the service interface definition: nsina
vhistoryservice.idl.
... places core history service (nsina
vhistoryservice.idl) is the core of places, every other places service depends on it to correctly work, so it gets always initialized at application startup.
... a places query is made of of a query object (nsina
vhistoryquery) and a query options object (nsina
vhistoryqueryoptions) that defines the constraints results must obey to.
nsINavBookmarksService
gecko 2.0 void removefolder(in long long afolder); obsolete since gecko 2.0 void removefolderchildren(in long long aitemid); void removeitem(in long long aitemid); void removeobserver(in nsinavbookmarkobserver observer); void replaceitem(in print64 folder, in nsiuri item, in nsiuri newitem); obsolete since gecko 1.9 void runinbatchmode(in nsina
vhistorybatchcallback acallback, in nsisupports auserdata); void setfolderreadonly(in long long afolder, in boolean areadonly); void setfoldertitle(in print64 folder, in astring title); obsolete since gecko 1.9 void setitemdateadded(in long long aitemid, in prtime adateadded); void setitemguid(in long long aitemid, in astring aguid); obsolete since gecko 14.0 ...
... void runinbatchmode( in nsina
vhistorybatchcallback acallback, in nsisupports auserdata ); parameters acallback nsina
vhistorybatchcallback interface to call.
... see also places manipulating bookmarks using places nsitransaction nsinavbookmarkobserver nsina
vhistorybatchcallback ...
Value definition syntax - CSS: Cascading Style Sheets
bold [ thin && <length> ] this example matches the following values: bold thin 2
vh bold 0 thin bold thin 3.5em but not: thin bold 3em, as bold is juxtaposed with the component defined by the brackets, it must appear before it.
... bold <length> , thin this example matches the following values: bold 1em, thin bold 0, thin bold 2.5cm, thin bold 3
vh, thin but not: thin 1em, bold, as the entities must be in the expressed order bold 1em thin, as the entities are mandatory; the comma, a literal, must be present bold 0.5ms, thin, as the ms values are not <length> double ampersand separating two or more components, by a double ampersand, &&, means that all these entities are mandatory but may appear in any order.
... bold && <length> this example matches the following values: bold 1em bold 0 2.5cm bold 3
vh bold but not: bold, as both components must appear in the value.
attr() - CSS: Cascading Style Sheets
em, ex, px, rem, vw,
vh, vmin, vmax, mm, cm, in, pt, or pc <length> the attribute value is parsed as a css <number>, that is without the unit (e.g.
...)where <type-or-unit> = string | color | url | integer | number | length | angle | time | frequency | cap | ch | em | ex | ic | lh | rlh | rem | vb | vi | vw |
vh | vmin | vmax | mm | q | cm | in | pt | pc | px | deg | grad | rad | turn | ms | s | hz | khz | % examples content property html <p data-foo="hello">world</p> css [data-foo]::before { content: attr(data-foo) " "; } result <color> value html <div class="background" data-background="lime">background expected to be red if your browser does not support advanced usage of attr()</div>...
... css .background { height: 100
vh; } .background { background-color: red; } .background[data-background] { background-color: attr(data-background color, red); } specifications specification status comment css values and units module level 4the definition of 'attr()' in that specification.
linear-gradient() - CSS: Cascading Style Sheets
you'll have to set the html height property to 100% or 100
vh to render as depicted.
... examples gradient at a 45-degree angle body { width: 100vw; height: 100
vh; } body { background: linear-gradient(45deg, red, blue); } gradient that starts at 60% of the gradient line body { width: 100vw; height: 100
vh; } body { background: linear-gradient(135deg, orange 60%, cyan); } gradient with multi-position color stops this example uses multi-position color stops, with adjacent colors having the same color stop value, creating a striped effect...
... body { width: 100vw; height: 100
vh; } body { background: linear-gradient(to right, red 20%, orange 20% 40%, yellow 40% 60%, green 60% 80%, blue 80%); } more linear-gradient examples please see using css gradients for more examples.
MCD, Mission Control Desktop, AKA AutoConfig - Archive of obsolete content
if it is not possible to give access to anonymous, //you have to enable this function first, please see //http://technet.microsoft.com/de-de/library/cc816788(ws.10).aspx // // //put everything in a try/catch try { var userinfo = new object(); // this will hold ldap results userinfo.envuser = getenv("username"); // username userinfo.en
vhome = getenv("home"); // user home directory var ldaphost = "example.com"; var ldapbase = "dc=company,dc=local"; if( userinfo.envuser ) { var ldapfilter = "samaccountname=" + userinfo.envuser; } else { throw("couldn't get uid from the environment"); } // ldap attributes to retrieve from the server var ldapattrs = new array( "cn", "mail", "samaccountname" ); // add more attributes here...
... on my fedora core 3 system, i took the thunderbird source package thunderbird-1.0.2-1.3.3.src.rpm installed it (rpm -i) then modified /usr/src/redhat/sources/thunderbird-mozconfig by adding: ac_add_options --enable-extensions=pref compile and install: $ rpmbuild -ba /usr/src/redhat/specs/thunderbird.spec $ rpm -u
vh /usr/src/redhat/rpms/i386/thunderbird-1.0.2-1.3.3.i386.rpm after instillation, autoconfig is finally back here: $ rpm -ql thunderbird | grep autoconfig /usr/lib/thunderbird-1.0.2/chrome/locale/autoconfig /usr/lib/thunderbird-1.0.2/components/autoconfig.xpt /usr/lib/thunderbird-1.0.2/components/libautoconfig.so /usr/lib/thunderbird-1.0.2/defaults/autoconfig /usr/lib/thunderbird-1.0.2/defaults/a...
Creating MozSearch plugins
<searchplugin xmlns="http://www.mozilla.org/2006/browser/search/"> <shortname>mdc</shortname> <description>mozilla developer center search</description> <inputencoding>utf-8</inputencoding> <image width="16" height="16">data:image/x-icon;base64,ivborw0kggoaaaansuheugaaabaaaaaqcayaaaaf8%2f9haaaabgdbtueaak%2finwwk6qaaabl0r
vh0u29mdhdhcmuaqwrvymugsw1hz2vszwfkexhjztwaaahwsurb
vhjayvz%2f%2fz8djqaggjiqoe%2ffv2fv7oz8rays%2fn%2bvkfg%2fiynjfyd%2f1%2brvq7ffu3dpfpsbaaheahibcj85c8bn2nj4vwsdw%2f8zqlwkio8ccroqu0dxqlwrdshuwzbaaigjmtnnpgya9j8uqhfelwpxf2mideirksn9fwsjorkaeeam0dd4dzmaypi%2fg%2bqky4hh5waxgf8pdq0fgwj22d27cjadaaiirlmjo%2bmxa9r2kahvgba2wwx6b8w7od6ceqcggkcmcel8bgwxycbuigtdvkhdbia%2bcuotgaccued3tdqn75d4xmavcok9armhbzaw0aeci...
...bhkalc0mdy7x9abna3obazxiaa6ikecglmvqhwwyjyul2d4v2cpg8vzswx7ghyaaak7aoif7saboqcmn4ha3ahfsidtgpq%2fvlz8p4mskj2w9h8ggbjevx
vhdo4fquqg%2fkdypqcg4h8luiacnq%2fsobmyi8basajfpcj1aaeejwvqqlpabxmh5bjjqi0gi9dtaagdbbccavlkgmq7ykczxpcqxquzhaeccj4xgml493ug21zd%2badaxh0wlm4a9mzpxjkjiiawtar5pqmalacabquulttbgccagcnnzgabbgamj5thwgvjlaaaaabjru5erkjggg%3d%3d</image> <url type="text/html" method="get" template="http://developer.mozilla.org/en/docs/special:search?search={searchterms}"/> <searchform>http://developer.mozilla.org/en/docs/special:search</searchform> </searchplugin> notice in this case that instead of using <param> to define parameters to the search engine, they're simply embedded inside the template url.
Index
http://www.mozilla.org/projects/security/pki/nss/ 218 nss tools : ssltap name ssltap — tap into ssl connections and display the data going by synopsis libssltap [-
vhfsxl] [-p port] [hostname:port] description the ssl debugging tool ssltap is an ssl-aware command-line proxy.
...9w0baqufada5mrcwfqydvqqkew5fegft cgxliervbwfpbjeembwga1ueaxmvq2vydglmawnhdgugqxv0ag9yaxr5mb4xdtew mdqyotixnty1ofoxdteymdqxodixnty1ofowotexmbuga1uechmorxhhbxbszsbe b21haw4xhjacbgnvbamtfunlcnrpzmljyxrlief1dghvcml0etccasiwdqyjkozi hvcnaqebbqadggepadccaqocggebao/bquli2kwqxfkmmmg93kn1sanzntxa/vlf tmrih3hqgjvr1ktiy9ag6cb7dskwmthp/+p4pucmql4zrsgt901qxkepyz2dymm2 rnelk+seuipiutozadhndiyse/yude8vqwj0
vhcvl0w72qfucsq/wzt7fcrnuiui udewnopsun70glhcj/lvxl7k9bhyd4sq5czktwytfwliiwv+zy/fl6jgbgaqyqb2 bp4irmflogqsxgub1evwvdf1hagpfdspgmnepslg3/3dxn+hdjbz29eu8/xkzqeb 3v0ahkbu80zglllet2zx/wdirgjen9ymfgkfpcml+bvirsmh0vscaweaaaobqzcb qdafbgn
vhsmegdawgbqatgxhqyrufkiztdp55bzlfr+tfzapbgn
vhrmbaf8ebtad aqh/ma4ga1uddweb/wqeawibxjadbgn
vhq4efgquae4mr0mk
vhyigbxaeew2zra/ rrcwrqyikwybbquhaqeeota3mdugccsgaqufbzabhi...
Mozilla
use them to display nsina
vhistoryresult objects to the user.
... see querying places for information about obtaining and using nsina
vhistoryresult objects, which this page assumes you are familiar with.
Viewport concepts - CSS: Cascading Style Sheets
a
vh unit is 1% of the layout viewport's height.
... if you use viewport length units in your css within the iframe document, 1
vh will be 1% of the height of the iframe, and 1vw will be 1% of the width of the document.
StringView - Archive of obsolete content
aaaacaaaaaaaaasanaaaaaaaaiaaaaaaaaabgaaaaaaaaacqaaaaaaaaayaaaaaaaaap7//28aaaaakanaaaaaaad///9vaaaaaaeaaaaaaaaa8p//bwaaaaaea0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa+azgaaaaaaaaaaaaaaaaaaaaaaaaaaaa5gnaaaaaaad2a0aaaaaaaayeqaaaaaaaaaaaaaaaaaaaaaaaaaaaaeddqzogkedovskgnc44ljagmjaxmza1mdigkhbyzxjlbg
vhc2upaeddqzogkedovskgnc44ljeaac5zew10ywialnn0cnrhygauc2hzdhj0ywialmludgvycaaubm90zs5bqkktdgfnac5ub3rllmduds5idwlszc1pzaauz251lmhhc2galmr5bnn5bqauzhluc3ryac5nbnuudmvyc2lvbgauz251lnzlcnnpb25fcgaucmvsys5kew4alnjlbgeucgx0ac5pbml0ac50zxh0ac5maw5pac5yb2rhdgealmvox2zyyw1lx2hkcgauzwhfznjhbwualmluaxrfyxjyyxkalmzpbmlfyxjyyxkalmpjcgauzhluyw1pywauz290ac5nb3qucgx0ac5kyxrhac5ic3malmnvbw1lbnqaaaaaaaaaaaaaaaaaaaaa...
-ms-filter - Archive of obsolete content
html <div class="gradient horizontal"></div> <div class="gradient vertical"></div> css html, body { overflow-x: hidden; max-width: 100vw; } .gradient { width: 100vw; height: 60px; height: 50
vh; } .gradient.horizontal { -ms-filter: 'progid:dximagetransform.microsoft.gradient(startcolorstr="#ffffff", endcolorstr="#000000", gradienttype=1)'; background-image: linear-gradient(to right, #ffffff 0%, #000000 100%); } .gradient.vertical { -ms-filter: 'progid:dximagetransform.microsoft.gradient(startcolorstr="#ffffff", endcolorstr="#000000", gradienttype=0)'; background-image: linear...
How to build custom form controls - Learn web development
</ul> </fieldset> we'll do a little styling of the radio button list (not the legend/fieldset) to make it look somewhat like the earlier example, just to show that it can be done: .styledselect { display: inline-block; padding: 0; } .styledselect li { list-style-type: none; padding: 0; display: flex; } .styledselect [type=radio] { position: absolute; left: -100vw; top: -100
vh; } .styledselect label { margin: 0; line-height: 2; padding: 0 0 0 4px; } .styledselect:not(:focus-within) input:not(:checked) + label { height: 0; outline: none; overflow: hidden; } .styledselect:not(:focus-within) input:checked + label { border: .2em solid #000; border-radius: .4em; box-shadow: 0 .1em .2em rgba(0,0,0,.45); } .styledselect:not(:focus-within) input:checked + lab...
Limitations of frame scripts
for example: nsina
vhistoryservice nsinavbookmarksservice observers in the content process as noted in observers in the chrome process, most observers should be registered in the chrome process and will not work in the content process.
Limitations of frame scripts
for example: nsina
vhistoryservice nsinavbookmarksservice observers in the content process as noted in observers in the chrome process, most observers should be registered in the chrome process and will not work in the content process.
NSS tools : certutil
9w0baqufada5mrcwfqydvqqkew5fegft cgxliervbwfpbjeembwga1ueaxmvq2vydglmawnhdgugqxv0ag9yaxr5mb4xdtew mdqyotixnty1ofoxdteymdqxodixnty1ofowotexmbuga1uechmorxhhbxbszsbe b21haw4xhjacbgnvbamtfunlcnrpzmljyxrlief1dghvcml0etccasiwdqyjkozi hvcnaqebbqadggepadccaqocggebao/bquli2kwqxfkmmmg93kn1sanzntxa/vlf tmrih3hqgjvr1ktiy9ag6cb7dskwmthp/+p4pucmql4zrsgt901qxkepyz2dymm2 rnelk+seuipiutozadhndiyse/yude8vqwj0
vhcvl0w72qfucsq/wzt7fcrnuiui udewnopsun70glhcj/lvxl7k9bhyd4sq5czktwytfwliiwv+zy/fl6jgbgaqyqb2 bp4irmflogqsxgub1evwvdf1hagpfdspgmnepslg3/3dxn+hdjbz29eu8/xkzqeb 3v0ahkbu80zglllet2zx/wdirgjen9ymfgkfpcml+bvirsmh0vscaweaaaobqzcb qdafbgn
vhsmegdawgbqatgxhqyrufkiztdp55bzlfr+tfzapbgn
vhrmbaf8ebtad aqh/ma4ga1uddweb/wqeawibxjadbgn
vhq4efgquae4mr0mk
vhyigbxaeew2zra/ rrcwrqyikwybbquhaqeeota3mdugccsgaqufbzabhi...
NSS tools : ssltab
name ssltap — tap into ssl connections and display the data going by synopsis libssltap [-
vhfsxl] [-p port] [hostname:port] description the ssl debugging tool ssltap is an ssl-aware command-line proxy.
NSS tools : ssltap
name ssltap — tap into ssl connections and display the data going by synopsis libssltap [-
vhfsxl] [-p port] [hostname:port] description the ssl debugging tool ssltap is an ssl-aware command-line proxy.
NSS Tools ssltap
syntax to run the ssl debugging tool, type this command in a command shell: ssltap [-
vhfsxl] [-p port] hostname:port options the command does not require any options other than hostname:port, but you normally use them to control the connection interception and output.
certutil
9w0baqufada5mrcwfqydvqqkew5fegft cgxliervbwfpbjeembwga1ueaxmvq2vydglmawnhdgugqxv0ag9yaxr5mb4xdtew mdqyotixnty1ofoxdteymdqxodixnty1ofowotexmbuga1uechmorxhhbxbszsbe b21haw4xhjacbgnvbamtfunlcnrpzmljyxrlief1dghvcml0etccasiwdqyjkozi hvcnaqebbqadggepadccaqocggebao/bquli2kwqxfkmmmg93kn1sanzntxa/vlf tmrih3hqgjvr1ktiy9ag6cb7dskwmthp/+p4pucmql4zrsgt901qxkepyz2dymm2 rnelk+seuipiutozadhndiyse/yude8vqwj0
vhcvl0w72qfucsq/wzt7fcrnuiui udewnopsun70glhcj/lvxl7k9bhyd4sq5czktwytfwliiwv+zy/fl6jgbgaqyqb2 bp4irmflogqsxgub1evwvdf1hagpfdspgmnepslg3/3dxn+hdjbz29eu8/xkzqeb 3v0ahkbu80zglllet2zx/wdirgjen9ymfgkfpcml+bvirsmh0vscaweaaaobqzcb qdafbgn
vhsmegdawgbqatgxhqyrufkiztdp55bzlfr+tfzapbgn
vhrmbaf8ebtad aqh/ma4ga1uddweb/wqeawibxjadbgn
vhq4efgquae4mr0mk
vhyigbxaeew2zra/ rrcwrqyikwybbquhaqeeota3mdugccsgaqufbzabhi...
NSS tools : ssltap
name ssltap — tap into ssl connections and display the data going by synopsis libssltap [-
vhfsxl] [-p port] [hostname:port] description the ssl debugging tool ssltap is an ssl-aware command-line proxy.
TPS History Lists
an integer value from one of the transition types listed at https://developer.mozilla.org/en/nsina
vhistoryservice#constants.
mozIVisitInfo
one of the nsinavbookmarksservice.constants on nsina
vhistory.
XPCOM Interface Reference
filternsimsgfiltercustomactionnsimsgfilterlistnsimsgfoldernsimsgheaderparsernsimsgidentitynsimsgincomingservernsimsgmessageservicensimsgprotocolinfonsimsgruleactionnsimsgsearchcustomtermnsimsgsearchnotifynsimsgsearchscopetermnsimsgsearchsessionnsimsgsearchtermnsimsgsearchvaluensimsgsendlaternsimsgthreadnsimsgwindownsimsgwindowcommandsnsimutablearraynsinavbookmarkobservernsinavbookmarksservicensina
vhistorybatchcallbacknsina
vhistorycontainerresultnodensina
vhistoryfullvisitresultnodensina
vhistoryobservernsina
vhistoryquerynsina
vhistoryqueryoptionsnsina
vhistoryqueryresultnodensina
vhistoryresultnsina
vhistoryresultnodensina
vhistoryresultobservernsina
vhistoryresulttreeviewernsina
vhistoryresultviewobservernsina
vhistoryresultviewernsina
vhistoryservicensina
vhistoryvisitresultnodensinetworklinkservicens...
XPCOM Interface Reference by grouping
xul nsixulappinfo nsixulruntime nsixultemplatebuilder nsixultemplatequeryprocessor nsixultemplateresult bookmark livemark nsilivemarkservice nsinavbookmarkobserver nsinavbookmarksservice nsina
vhistoryservice browser dom nsiwebbrowser nsiwebbrowserpersist cache nsicache nsicachedeviceinfo nsicacheentrydescriptor nsicacheentryinfo nsicachelistener nsicachemetadatavisitor nsicacheservice nsicachesession nsic...
Performance
you can see an example of setting the maximum cache size to be a percentage of memory in nsna
vhistory::initdb in toolkit/components/places/src/nsna
vhistory.cpp.
Finding the code for a feature
looking that up in mxr, its underlying function uses a very strange call pre
vhdrfolder[toggler](messages, key) to change the key.
CSS numeric factory functions - Web APIs
syntax css.number(number); css.percent(number); // <length> css.em(number); css.ex(number); css.ch(number); css.ic(number); css.rem(number); css.lh(number); css.rlh(number); css.vw(number); css.
vh(number); css.vi(number); css.vb(number); css.vmin(number); css.vmax(number); css.cm(number); css.mm(number); css.q(number); css.in(number); css.pt(number); css.pc(number); css.px(number); // <angle> css.deg(number); css.grad(number); css.rad(number); css.turn(number); // <time> css.s(number); css.ms(number); // <frequency> css.hz(number); css.khz(number); // <resolution> css.dpi(number); css.
Using the CSS properties and values API - Web APIs
, #fff, var(--registered)); transition: --registered 1s ease-in-out; } .registered:hover, .registered:focus { --registered: #b4d455; } .unregistered { --unregistered: #c0ffee; background-image: linear-gradient(to right, #fff, var(--unregistered)); transition: --unregistered 1s ease-in-out; } .unregistered:hover, .unregistered:focus { --unregistered: #b4d455; } button { height: 40
vh; display: block; width: 100%; font-size: 3vw; } window.css.registerproperty({ name: '--registered', syntax: '<color>', inherits: false, initialvalue: 'red', }); while not functionally accurate, a good way to think about the difference between the unregistered property in the above example and the registered property is the difference between a <custom-ident> and a number when...
Basic animations - Web APIs
th: 48%; display: flex; align-content: center; justify-content: center; align-self: center; align-items: center; font-size: -webkit-xxx-large; font-weight: 900; color: #fff; transition: .5s; opacity: .1; border-radius: 7px } .keypress { position: fixed; width: 100vw; height: 100
vh; top: 0; left: 0; display: flex; flex-wrap: wrap; justify-content: space-around; opacity: 1; user-select: none } .keypress>div:hover { opacity: 1 } .touch { background: #8bc34a } .off { background: #f44336 } .hide { opacity: 0 } </style> </html> javascript function tmz...
Document: wheel event - Web APIs
<div>scale me with your mouse wheel.</div> body { min-height: 100
vh; margin: 0; display: flex; align-items: center; justify-content: center; } div { width: 105px; height: 105px; background: #cdf; padding: 5px; } function zoom(event) { event.preventdefault(); if (event.deltay < 0) { // zoom in scale *= event.deltay * -2; } else { // zoom out scale /= event.deltay * 2; } // restrict scale scale = math.min(math.max(.
Element: wheel event - Web APIs
<div>scale me with your mouse wheel.</div> body { min-height: 100
vh; margin: 0; display: flex; align-items: center; justify-content: center; } div { width: 105px; height: 105px; background: #cdf; padding: 5px; } function zoom(event) { event.preventdefault(); scale += event.deltay * -0.01; // restrict scale scale = math.min(math.max(.125, scale), 4); // apply scale transform el.style.transform = `scale(${scale})`; } let scale = 1;...
GlobalEventHandlers.onwheel - Web APIs
html <div>scale me with your mouse wheel.</div> css body { min-height: 100
vh; margin: 0; display: flex; align-items: center; justify-content: center; } div { width: 80px; height: 80px; background: #cdf; padding: 5px; transition: transform .3s; } javascript function zoom(event) { event.preventdefault(); if (event.deltay < 0) { // zoom in scale *= event.deltay * -2; } else { // zoom out scale /= event.deltay * 2; } // restr...
HTMLImageElement.alt - Web APIs
body { margin: 0; padding: 0; } p { margin-block-start: 0; margin-block-end: 1em; margin-top: 0; margin-bottom: 1em; } .container { width: 100
vh; height: 95
vh; font: 16px arial,helvetica,sans-serif; } .left-margin { background-color: rgb(241, 240, 237, 255); width: 9em; height: 100%; float: left; margin-right: 5px; padding-right: 1em; display: flex; align-items: center; justify-content: center; } .left-margin img { width: 6em; } .contents { background-color: rgb(241, 240, 235, 255); height: 100%; margin-le...
HTMLImageElement.sizes - Web APIs
i sure can't.</p> <button id="break40">last width: 40em</button> <button id="break50">last width: 50em</button> </article> css article { margin: 1em; max-width: 60em; min-width: 20em; height: 100
vh; border: 4em solid #880e4f; border-radius: 7em; padding: 1.5em; font: 16px "open sans", verdana, arial, helvetica, sans-serif; } article img { display: block; max-width: 100%; border: 1px solid #888; box-shadow: 0 0.5em 0.3em #888; margin-bottom: 1.25em; } javascript the javascript code handles the two buttons that let you toggle the third width option between 40em and 50em; ...
Ajax navigation example - Web APIs
oop detected", 509: "unassigned", 510: "not extended", 511: "network authentication required" }; var oreq, bisloading = false, bupdateurl = false; oloadingbox.id = "ajax-loader"; ocover.onclick = abortreq; oloadingimg.src = "data:image/gif;base64,r0lgodlheaaqapiaap///waaamlcwkjcqgaaagjiyokcgpkskih/c05fvfndqvbfmi4waweaaaah/hpdcm
vhdgvkihdpdgggywphegxvywquaw5mbwah+qqjcgaaacwaaaaaeaaqaaadmwi63p4wyklre2mioggznadomgyjrbexwroumcg2lmdewnhqlvsyod2mbzkydadka+diaaah+qqjcgaaacwaaaaaeaaqaaadnai63p5ojcegg4qmu7dmikrxqlfuydezigbmrvsaqhwctxxf7weyb4ag1xjihkmzsiukkhiaifkecqoaaaasaaaaabaaeaaaazyiujijk8pbyjdmlfyvbovjha70gu7xsujhmktwhpakzlo9hmaokwjz7rf8aypddzkpzbqfvwqaifkecqoaaaasaaaaabaaeaaaazmiumilk8oyhphsnfzfhyumcyuhdaqxridhhbgqrokw0r8dyljd...
SubtleCrypto.importKey() - Web APIs
pu09sw+6ctx2cx4mkxx6o/0mmdtmacr/vu50kdrmlefezyowpaehhmfywybtuzbipvizvp8wfcsknmbfi1s9a9pdbqnebwwhhx3/hsebt2bagmbaaecggeabei1p6nf6zs7mjlybdv+pfl5rjl2coqly6tovvzvblmkcppjyfunipdk2tk2i897zaxfhpdbikmllm2hq6jzqkb110oantpdg0jxzmiihps32s1d/kilhjgff4hjd4nxp1l1dp8bupollorr2tym2x6dccgfw9lhtr8o03qp4hjn84vjgiwadyck83mgs4nrsnhkdiqynwx1ajkly51yek6rcrdmi0th2rxrrinoc35svv+apt2rkomgi52rwtesea1kzgfrxjq61rejif6p2vxec
vhex6cwlx014lgk43z6q28p6hgeevefijyqcuea5du/myb/qsrscosxlxbqwqkbgqd1+fdc9zimrvi+km7nx2ckbn8rjrdmuh5sbxn2myjdrud8bynnzkcgkmgxvxsvjrbmvorby2txoiqudzkk5md3e5o/qzwpwqlgru8ueynpobax9nrgnfz7rzd+81
vh5mfzixfuzouzv29izhu0oqyz9y75ehkldrernkwyoe5auqkbgqdlzapdi1nxkbgsj9iio4kua7jvd4jjrqfy4zhj/jbqvlvm0f/ufp7sxvchgx4r11c+6icbhx4u+zuu0hgjt4d+hnxmggyxr8fiuvxolotdkvja5sobzk73/9/mbekusdmjprhalzqfmujrwioevdmhfg3tw/rbj5r...
:-moz-only-whitespace - CSS: Cascading Style Sheets
examples html <div> </div> css :root { overflow: hidden; max-width: 100vw; max-height: 100
vh; } div { background-color: #ccc; box-sizing: border-box; height: 100
vh; min-height: 16px; min-height: 1rem; } div { border: 4px solid red; } :-moz-only-whitespace { border-color: lime; } result specifications briefly defined as :blank in selectors level 4, but then the functionality was merged into :empty and :blank redefined to mean empty <input>.
:active - CSS: Cascading Style Sheets
to style links appropriately, put the :active rule after all other link-related rules, as defined by the l
vha-order: :link — :visited — :hover — :active.
:hover - CSS: Cascading Style Sheets
to style links appropriately, put the :hover rule after the :link and :visited rules but before the :active one, as defined by the l
vha-order: :link — :visited — :hover — :active.
:link - CSS: Cascading Style Sheets
to style links appropriately, put the :link rule before all other link-related rules, as defined by the l
vha-order: :link — :visited — :hover — :active.
:visited - CSS: Cascading Style Sheets
to style links appropriately, put the :visited rule after the :link rule but before the :hover and :active rules, as defined by the l
vha-order: :link — :visited — :hover — :active.
Layout and the containing block - CSS: Cascading Style Sheets
<body> <section> <p>this is a paragraph!</p> </section> </body> body { background: beige; } section { width: 400px; height: 480px; margin: 30px; padding: 15px; background: lightgray; } p { position: fixed; width: 50%; /* == (50vw - (width of vertical scrollbar)) */ height: 50%; /* == (50
vh - (height of horizontal scrollbar)) */ margin: 5%; /* == (5vw - (width of vertical scrollbar)) */ padding: 5%; /* == (5vw - (width of vertical scrollbar)) */ background: cyan; } example 5 in this example, the paragraph's position is absolute, so its containing block is <section>, which is the nearest ancestor with a transform property that isn't none.
CSS reference - CSS: Cascading Style Sheets
me><time-percentage><timing-function>top@top-centertouch-actiontransformtransform-box<transform-function>transform-origintransform-styletransitiontransition-delaytransition-durationtransition-propertytransition-timing-functiontranslatetranslate()translate3d()translatex()translatey()translatez()turnuunicode-bidiunicode-range (@font-face)unset<url>url()user-zoom (@viewport)v:validvar()vertical-align
vh@viewportviewport-fit (@viewport)visibility:visitedvmaxvminvwwwhite-spacewidowswidthwidth (@viewport)will-changeword-breakword-spacingword-wrapwriting-modexxzz-indexzoom (@viewport)others--* selectors the following are the various selectors, which allow styles to be conditional based on various features of elements within the dom.
env() - CSS: Cascading Style Sheets
syntax /* using the four safe area inset values with no fallback values */ env(safe-area-inset-top); env(safe-area-inset-right); env(safe-area-inset-bottom); env(safe-area-inset-left); /* using them with fallback values */ env(safe-area-inset-top, 20px); env(safe-area-inset-right, 1em); env(safe-area-inset-bottom, 0.5
vh); env(safe-area-inset-left, 1.4rem); values safe-area-inset-top, safe-area-inset-right, safe-area-inset-bottom, safe-area-inset-left the safe-area-inset-* variables are four environment variables that define a rectangle by its top, right, bottom, and left insets from the edge of the viewport, which is safe to put content into without risking it being cut off by the shape of a non‑rectangu...
font-style - CSS: Cascading Style Sheets
ense: https://github.com/typenetwork/amstelvar/blob/master/ofl.txt */ @font-face { src: url('https://mdn.mozillademos.org/files/16044/amstelvaralpha-vf.ttf'); font-family:'amstelvaralpha'; font-style: normal; } label { font: 1rem monospace; } .container { max-height: 150px; overflow: scroll; } .sample { font: 2rem 'amstelvaralpha', sans-serif; } html, body { max-height: 100
vh; max-width: 100vw; overflow: hidden; } body { display: flex; flex-direction: column; } header { margin-bottom: 1.5rem; } .container { flex-grow: 1; } .container > p { margin-top: 0; margin-bottom: 0; } javascript let slantlabel = document.queryselector('label[for="slant"]'); let slantinput = document.queryselector('#slant'); let sampletext = document.queryselector('.sample...
font-weight - CSS: Cascading Style Sheets
rsans/blob/master/license */ @font-face { src: url('https://mdn.mozillademos.org/files/16011/mutatorsans.ttf'); font-family:'mutatorsans'; font-style: normal; } label { font: 1rem monospace; white-space: nowrap; } .container { max-height: 150px; overflow-y: auto; } .sample { text-transform: uppercase; font: 1.5rem 'mutatorsans', sans-serif; } html, body { max-height: 100
vh; max-width: 100vw; overflow: hidden; } body { display: flex; flex-direction: column; } header { margin-bottom: 1.5rem; } .container { flex-grow: 1; } .container > p { margin-top: 0; margin-bottom: 0; } javascript let weightlabel = document.queryselector('label[for="weight"]'); let weightinput = document.queryselector('#weight'); let sampletext = document.queryselector('.sa...
repeating-linear-gradient() - CSS: Cascading Style Sheets
and <color-stop-length> = [ <percentage> | <length> ]{1,2} and <color-hint> = [ <percentage> | <length> ] examples zebra stripes body { width: 100vw; height: 100
vh; } body { background-image: repeating-linear-gradient(-45deg, transparent, transparent 20px, black 20px, black 40px); /* with multiple color stop lengths */ background-image: repeating-linear-gradient(-45deg, transparent 0 20px, black 20px 40px); } ten repeating horizontal bars body { width: 100vw; height: 100
vh; } body { background-image:...
transform-box - CSS: Cascading Style Sheets
svg{ width:80
vh; border:1px solid #d9d9d9; position:absolute; margin: auto; top: 0; right: 0; bottom: 0; left: 0; } #box{ transform-origin:50% 50%; /*+++++++++++++++++++++++++++*/ /* if i remove this rule the pen won't work properly on chrome for mac, ff, safari will still work properly on chrome for pc & opera*/ transform-box: fill-box; /*alternatively i can use transform-origin:15px...
matrix3d() - CSS: Cascading Style Sheets
</div> css html { width: 100%; } body { height: 100
vh; /* centering content */ display: flex; flex-flow: row wrap; justify-content: center; align-content: center; } .foo { width: 50%; padding: 1em; color: white; background: #ff8c66; border: 2px dashed black; text-align: center; font-family: system-ui, sans-serif; font-size: 14px; /* setting up animation for better demonstration */ animation: motionscale 2s alternate...
url() - CSS: Cascading Style Sheets
formal syntax url( <string> <url-modifier>* ) examples content property html <ul> <li>item 1</li> <li>item 2</li> <li>item 3</li> </ul> css li::after { content: ' - ' url(https://mdn.mozillademos.org/files/16761/star.gif); } result data-uri html <div class="background"></div> css .background { height: 100
vh; } .background { background: yellow; background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='90' height='45'%3e%3cpath d='m10 10h60' stroke='%2300f' stroke-width='5'/%3e%3cpath d='m10 20h60' stroke='%230f0' stroke-width='5'/%3e%3cpath d='m10 30h60' stroke='red' stroke-width='5'/%3e%3c/svg%3e"); } specifications specification status comment ...
The building blocks of responsive design - Progressive web apps (PWAs)
to fix this, we added in a media query that only applies its contents to the markup when device is viewed in landscape orientation: @media all and (max-width: 480px) and (orientation: landscape) { nav { width: auto; -webkit-flex-direction: column; -moz-flex-direction: column; -ms-flex-direction: column; flex-direction: column; } nav button { font-size: 6.8
vh; } nav button { border-left: 0; } x-card:nth-child(1) video, x-card:nth-child(2) img, x-card:nth-child(3) { margin-top: 0; } x-card:nth-child(1) button, x-card:nth-child(2) button { font-size: 2rem; } } this does the following: adjusts the nav buttons, changing the direction the flexbox is laid out in, and altering the font size and borders so they sit vertical...