Commit graph

189 commits

Author SHA1 Message Date
Emilio Cobos Álvarez
453ca45319 Bug 1585674 - Start loads more incrementally in the @import scanner. r=hsivonen
Consider the case of a very big <style> element, with a few imports on top,
which we cut half-way over the network.

The @import scanner would be likely to have found anything there is to be found,
but we won't process it until we pop the <style> element. It's relatively low
effort to support this use-case by making Scan() return the already-found urls.

Differential Revision: https://phabricator.services.mozilla.com/D47914

--HG--
extra : moz-landing-system : lando
2019-10-03 07:34:35 +00:00
Emilio Cobos Álvarez
1f94271c1d Bug 1546783 - Speculatively load @import rules inside <style>. r=bzbarsky,hsivonen
We don't bother handling the nested element case amazingly. We'd instead stop
at the inner <style> element and drop the URLs from the outer.

But I think that's ok. Any good way to test this? I've verified it does the
right thing looking at the CSS loader logs, but... :)

Differential Revision: https://phabricator.services.mozilla.com/D47471

--HG--
extra : moz-landing-system : lando
2019-09-30 13:39:33 +00:00
Emilio Cobos Álvarez
6195ff232c Bug 1546783 - Stop speculatively trying to load <svg:style xlink:href>. r=bzbarsky
That doesn't make much sense to me.

Differential Revision: https://phabricator.services.mozilla.com/D47470

--HG--
extra : moz-landing-system : lando
2019-09-30 13:29:21 +00:00
Coroiu Cristina
b3555c999a Backed out 3 changesets (bug 1546783) on request by emilio on a CLOSED TREE
Backed out changeset ad3822105edc (bug 1546783)
Backed out changeset a8ac28c2bfc7 (bug 1546783)
Backed out changeset b2678d2e55fb (bug 1546783)
2019-09-30 16:23:16 +03:00
Emilio Cobos Álvarez
f65a6de55c Bug 1546783 - Speculatively load @import rules inside <style>. r=bzbarsky,hsivonen
We don't bother handling the nested element case amazingly. We'd instead stop
at the inner <style> element and drop the URLs from the outer.

But I think that's ok. Any good way to test this? I've verified it does the
right thing looking at the CSS loader logs, but... :)

Differential Revision: https://phabricator.services.mozilla.com/D47471

--HG--
extra : moz-landing-system : lando
2019-09-30 13:00:22 +00:00
Emilio Cobos Álvarez
bc0624be6a Bug 1546783 - Stop speculatively trying to load <svg:style xlink:href>. r=bzbarsky
That doesn't make much sense to me.

Differential Revision: https://phabricator.services.mozilla.com/D47470

--HG--
extra : moz-landing-system : lando
2019-09-30 10:37:24 +00:00
Brendan Dahl
5915a3e4bf Bug 1575620 - Fix refreshing session restore when using prototype cache. r=smaug
The session restore page keeps its restore list within a text input field
so that the values are persisted even if the page is refreshed. When form
elements were loaded with the prototype cache we didn't call
DoneCreatingElement after creating the element, which means the form values
weren't restored.

The list of elements that require DoneCreatingElement and DoneAddingChildren
to be called was in three (now four) different places, so I moved them to
a central spot in nsIContent to share in all locations. This also highlighted
that the check for <output> nodes is missing from the XML content sink.

Differential Revision: https://phabricator.services.mozilla.com/D44866

--HG--
extra : moz-landing-system : lando
2019-09-06 20:27:09 +00:00
shindli
b99fd194b2 Backed out changeset 5e9663384022 (bug 1575620) for causing bustages in builds/worker/workspace/build/src/obj-firefox/dist/include/nsIContent.h CLOSED TREE 2019-09-06 22:47:18 +03:00
Brendan Dahl
c377fd351d Bug 1575620 - Fix refreshing session restore when using prototype cache. r=smaug
The session restore page keeps its restore list within a text input field
so that the values are persisted even if the page is refreshed. When form
elements were loaded with the prototype cache we didn't call
DoneCreatingElement after creating the element, which means the form values
weren't restored.

The list of elements that require DoneCreatingElement and DoneAddingChildren
to be called was in three (now four) different places, so I moved them to
a central spot in nsIContent to share in all locations. This also highlighted
that the check for <output> nodes is missing from the XML content sink.

Differential Revision: https://phabricator.services.mozilla.com/D44866

--HG--
extra : moz-landing-system : lando
2019-09-05 22:26:25 +00:00
Alphan Chen
fc59938bee Bug 1482885 - Refactor nsHtml5TreeOperation's enum plus fields into mozilla::Variant r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D42809

--HG--
extra : moz-landing-system : lando
2019-08-27 09:39:41 +00:00
Emilio Cobos Álvarez
2189015730 Bug 1565129 - Re-introduce plain_text.wrap_long_lines. r=bzbarsky
Looks like some users use it, and it's not too much effort to support. This is
somewhat simpler, and IMO better than what existed before bug 1514655 because:

 * It doesn't regress bidi rendering when the pref is disabled (before, the pref
   would prevent plaintext.css from applying altogether).

 * It's consistent with the way view-source docs work.

 * It doesn't use non-standard stylesheet APIs to toggle the stylesheet
   (bug 1260720).

Differential Revision: https://phabricator.services.mozilla.com/D37742

--HG--
extra : moz-landing-system : lando
2019-07-11 18:49:50 +00:00
Bogdan Tara
fa0329b09b Backed out changeset 6f468ad73df2 (bug 1565129) for causing leaks CLOSED TREE 2019-07-11 21:00:59 +03:00
Emilio Cobos Álvarez
f75dd725f5 Bug 1565129 - Re-introduce plain_text.wrap_long_lines. r=bzbarsky
Looks like some users use it, and it's not too much effort to support. This is
somewhat simpler, and IMO better than what existed before bug 1514655 because:

 * It doesn't regress bidi rendering when the pref is disabled (before, the pref
   would prevent plaintext.css from applying altogether).

 * It's consistent with the way view-source docs work.

 * It doesn't use non-standard stylesheet APIs to toggle the stylesheet
   (bug 1260720).

Differential Revision: https://phabricator.services.mozilla.com/D37742

--HG--
extra : moz-landing-system : lando
2019-07-11 16:32:08 +00:00
Masayuki Nakano
5e41233499 Bug 1540990 - Get rid of unnecessary nsIPresShell.h inclusions r=emilio
A lot of files include `nsIPresShell.h` even though currently they don't
need it.  This patch removes the unnecessary inclusions.

Differential Revision: https://phabricator.services.mozilla.com/D25744

--HG--
extra : moz-landing-system : lando
2019-04-04 00:19:48 +00:00
Razvan Maries
1cd564b971 Backed out changeset 3b94c20ba873 (bug 1540990) for build bustages. CLOSED TREE 2019-04-04 02:44:00 +03:00
Masayuki Nakano
b2bba953cc Bug 1540990 - Get rid of unnecessary nsIPresShell.h inclusions r=emilio
A lot of files include `nsIPresShell.h` even though currently they don't
need it.  This patch removes the unnecessary inclusions.

Differential Revision: https://phabricator.services.mozilla.com/D25744

--HG--
extra : moz-landing-system : lando
2019-04-03 23:29:38 +00:00
Henri Sivonen
34559b2b59 Bug 256180 parser part - Insert elements as siblings instead of children at the Blink-defined magic depth for compatibility. r=smaug.
MozReview-Commit-ID: K8fgv3rgklt
2019-01-11 09:44:09 +02:00
Andreea Pavel
f5a1a0f098 Backed out 5 changesets (bug 256180) for failing win xpcshell at xpcshell.ini:toolkit/mozapps/extensions/test/xpcshell/test_temporary.js on a CLOSED TREE
Backed out changeset e85e41f84971 (bug 256180)
Backed out changeset 125ebcfac58d (bug 256180)
Backed out changeset bc2e0a89d88e (bug 256180)
Backed out changeset b696df615c8b (bug 256180)
Backed out changeset 2d69841d2eb7 (bug 256180)
2019-01-08 20:35:31 +02:00
Henri Sivonen
7fdbc91b91 Bug 256180 parser part - Insert elements as siblings instead of children at the Blink-defined magic depth for compatibility. r=smaug.
MozReview-Commit-ID: K8fgv3rgklt
2019-01-08 18:08:37 +02:00
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Thomas Nguyen
6d1ae50d62 Bug 1460920 - Part 1 - Speculative loading script should take referrerpolicy attribute in script element into account r=hsivonen
Referrerpolicy attribute should be taken with high priority order than
mSpeculationReferrerPolicy

Differential Revision: https://phabricator.services.mozilla.com/D11636

--HG--
extra : moz-landing-system : lando
2018-11-19 09:39:16 +00:00
Emilio Cobos Álvarez
03ce7b0699 Bug 1392185 - Remove dynamic HTML5 atoms. r=njn,hsivonen
This is a rebase + manual refcounting on some places, + cleanup of the original
patch in the bug.

Co-authored-by: Nicholas Nethercote <nnethercote@mozilla.com>

Differential Revision: https://phabricator.services.mozilla.com/D11035
2018-11-09 14:45:30 +01:00
Dave Townsend
7ea0473c02 Bug 1478823: Add a chrome DOM event signalling that the head element's children have been parsed. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D2612

--HG--
extra : moz-landing-system : lando
2018-08-03 21:16:04 +00:00
Andi-Bogdan Postelnicu
0d7d76f23b Bug 1453795 - Parser/HTML - Initialize member fields in classes/ structures. r=hsivonen 2018-06-14 11:46:13 +03:00
Emilio Cobos Álvarez
fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Chris Peterson
71422dcaa9 Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L

--HG--
extra : source : c14655ab3df2c9b1465dd8102b9d25683359a37b
2018-04-28 12:50:58 -07:00
Sebastian Hengst
0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Masatoshi Kimura
c1aa340b7e Bug 1445541 - Enable the character encoding menu when the document is decoded as UTF-8 and an error is found, instead of disabling it when no errors are found. r=hsivonen
MozReview-Commit-ID: 1e6kQbAxcqm

--HG--
extra : rebase_source : 4c26e97255b4213b2f60855d8c9abc26fe812fa9
2018-04-06 06:20:28 +09:00
Boris Zbarsky
46fc331568 Bug 1446097. Switch to "set" as the canonical nsGkAtoms name of the string "set", so it matches the actual tag name "set" in SVG. r=hsivonen,njn
Most of the noise is from the fact that clang-format on parser/html/*.{h,cpp}
reformatted all sorts of stuff.  Not running it caused lots of format changes
from the generator... I guess we changed the format rules since the last time
this got run?

MozReview-Commit-ID: IA2G87zUIKN
2018-03-16 11:26:06 -04:00
Jan Henning
9c467e7e8d Bug 1392996 - Part 1 - Add meta viewport tag to view-source document. r=hsivonen
Adding <meta name="viewport" content="width=device-width"/> to the view-source
document achieves two things when used in a mobile browser, such as Fennec:
1. When word-wrapping is turned off, the page displays at a more readable
   initial zoom level.
2. As of now, font inflation (when enabled) kicks in on the document when word-
   wrapping is turned on, which leads to the line numbers appearing in a
   noticeably smaller font size than the rest of the page.
   Adding the above meta viewport header marks the document as "mobile-friendly"
   and suppresses font inflation, which means that line numbers will appear
   normally even with word-wrapping enabled.

getMathMLSelection() in browser-content.js isn't actually used in Fennec at the
moment, but for consistency we add the meta viewport tag there as well.

MozReview-Commit-ID: K9KVHh7g7TF

--HG--
extra : rebase_source : 1054f712f5420efcd89daeaa2c8c200129544b2a
2018-01-23 22:25:09 +01:00
Jon Coppeard
3bdf7ef24a Bug 1382020 - Don't preload nomodule scripts when modules are enabled r=hsivonen 2018-01-23 13:07:37 +00:00
Chris Peterson
16e0dd144e Bug 1424548 - Part 1: Fix non-unified build of HTML parser code. r=hsivonen
--HG--
extra : rebase_source : 78aa25eb45c0f7cd446ac7eab4f853c46590c7e7
2017-12-04 13:09:15 -08:00
Masatoshi Kimura
082293ce3e Bug 1424468 - Stop using Encoding::ForName in HTML parser. r=hsivonen
MozReview-Commit-ID: 1rONnEXLgPf

--HG--
extra : rebase_source : 081effdc2a3ee0292d73666abc7bda7b62d3a0a7
2017-12-07 23:21:42 +09:00
Alphan Chen
54f4537537 Bug 980904 - Disable the Character Encoding menu when document is decoded as UTF-8 without errors. r=hsivonen,emk,Gijs 2017-11-23 15:03:41 +08:00
Andi-Bogdan Postelnicu
57f5ff88dd Bug 1417417 - use UniquePtr for bufferCopy to prevent memory leak when treeOp is null. r=hsivonen
MozReview-Commit-ID: HBI7CWjtS80

--HG--
extra : rebase_source : e27c5f7f81979179650b3e15a7c0116ee21bb155
2017-11-15 16:50:58 +02:00
Henri Sivonen
974c22a515 Bug 1413467 - Make enqueueing tree ops use fallible allocation. r=bz
MozReview-Commit-ID: 9GI3btVYLqL

--HG--
extra : rebase_source : 63ccd9c2437e74b8809b74cc24e4795d1433c793
2017-11-10 12:19:45 +02:00
Nicholas Nethercote
d225f7151b Bug 1400460 - Rename nsIAtom as nsAtom. r=hiro.
(Path is actually r=froydnj.)

Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.

MozReview-Commit-ID: 91U22X2NydP

--HG--
rename : xpcom/ds/nsIAtom.h => xpcom/ds/nsAtom.h
extra : rebase_source : ac3e904a21b8b48e74534fff964f1623ee937c67
2017-10-03 09:05:19 +11:00
Sebastian Hengst
5573e8270f Backed out changeset 0ce8d073a16e (bug 256180) 2017-09-28 11:30:33 +02:00
Henri Sivonen
b245e01efe Bug 256180 parser part - Insert elements as siblings instead of children at the Blink-defined magic depth for compatibility. r=smaug
MozReview-Commit-ID: K8fgv3rgklt

--HG--
extra : rebase_source : 3ad91a01805afcd1aeac89a5f2d5ac38dac1797b
2017-09-12 16:57:05 +03:00
Nicholas Nethercote
dfd3b7e7aa Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam.
This patch merges nsAtom into nsIAtom. For the moment, both names can be used
interchangeably due to a typedef. The patch also devirtualizes nsIAtom, by
making it not inherit from nsISupports, removing NS_DECL_NSIATOM, and dropping
the use of NS_IMETHOD_. It also removes nsIAtom's IIDs.

These changes trigger knock-on changes throughout the codebase, changing the
types of lots of things as follows.

- nsCOMPtr<nsIAtom> --> RefPtr<nsIAtom>

- nsCOMArray<nsIAtom> --> nsTArray<RefPtr<nsIAtom>>
  - Count() --> Length()
  - ObjectAt() --> ElementAt()
  - AppendObject() --> AppendElement()
  - RemoveObjectAt() --> RemoveElementAt()

- ns*Hashtable<nsISupportsHashKey, ...> -->
  ns*Hashtable<nsRefPtrHashKey<nsIAtom>, ...>

- nsInterfaceHashtable<T, nsIAtom> --> nsRefPtrHashtable<T, nsIAtom>
  - This requires adding a Get() method to nsRefPtrHashtable that it lacks but
    nsInterfaceHashtable has.

- nsCOMPtr<nsIMutableArray> --> nsTArray<RefPtr<nsIAtom>>
  - nsArrayBase::Create() --> nsTArray()
  - GetLength() --> Length()
  - do_QueryElementAt() --> operator[]

The patch also has some changes to Rust code that manipulates nsIAtom.

MozReview-Commit-ID: DykOl8aEnUJ

--HG--
extra : rebase_source : 254404e318e94b4c93ec8d4081ff0f0fda8aa7d1
2017-09-26 08:33:21 +10:00
Honza Bambas
2f9f6408e0 Bug 1053321 - Correctly pass info about 'defer' and 'async' attributes to HTML5 parser invoked script preload. r=bkelly 2017-08-19 05:35:00 -04:00
Thomas Nguyen
439e5137c2 Bug 1384493 - Speculative loading style should use correct referrer policy. r=wchen
When preloading style link in <head>, we used speculative referrer policy which is
delievered from meta tag and ignored the referrerpolicy attribute.
We should use referrerpolicy attribute with the higher priority

MozReview-Commit-ID: 1rQmBV01jvV
2017-08-15 00:05:00 -04:00
Henri Sivonen
3d387ac082 Bug 483155 - Put content creator function pointers onto nsHtml5ElementName. r=smaug
MozReview-Commit-ID: E2AAx7Zz2UF

--HG--
extra : rebase_source : 1b85ba3b1c699e71e6ecacf4d1dc4271f3416b08
2017-07-04 11:00:03 +03:00
Sebastian Hengst
56587adeab Backed out changeset 5b706cd241cb (bug 483155) for Valgrind failure on Linux x64 opt. r=backout 2017-08-11 10:48:10 +02:00
Henri Sivonen
dacb0e05f1 Bug 483155 - Put content creator function pointers onto nsHtml5ElementName. r=smaug
MozReview-Commit-ID: E2AAx7Zz2UF

--HG--
extra : rebase_source : 989c11459e16076a043aa7311c95941686e86ef7
2017-07-04 11:00:03 +03:00
Phil Ringnalda
c5ab89e934 Backed out changeset 548ed79f2337 (bug 1053321) for strange and terribly-reported failures in Android opt mochitest-15 and debug mochitest-36
CLOSED TREE

MozReview-Commit-ID: IigWQ1wnxhZ

--HG--
extra : source : 70bd3854b6d034b67419ba11044b6cbe82b713bc
2017-08-01 23:13:42 -07:00
Honza Bambas
f33b5cb515 Bug 1053321 - Correctly pass info about 'defer' and 'async' attributes to HTML5 parser invoked script preload. r=bkelly
--HG--
extra : histedit_source : 1743f499ca20d75df7e957fab1c942c4f4e22df8
2017-08-01 21:21:09 +02:00
Ryan VanderMeulen
1b497ab253 Backed out changeset 20344f0dbff9 (bug 1053321) for ESLint failures. 2017-08-01 16:14:01 -04:00
Honza Bambas
d8659dd692 Bug 1053321 - Correctly pass info about 'defer' and 'async' attributes to HTML5 parser invoked script preload. r=bkelly 2017-08-01 12:43:00 -04:00