Commit Graph

103 Commits

Author SHA1 Message Date
Simon Giesecke
46908cfb51 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Sylvestre Ledru
68b806d604 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 17:04:01 +00:00
Butkovits Atila
a6e7dcc53f Backed out changeset c0adbf7522dc (bug 1674637) for bustage on GMPParent.cpp. CLOSED TREE 2020-11-04 10:54:36 +02:00
Sylvestre Ledru
8f709b39e8 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 08:29:00 +00:00
Andi-Bogdan Postelnicu
8c26178c43 Bug 1626555 - Make dom/base buildable outside of unified-build environment. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D69183
2020-04-29 09:02:05 +00:00
Marco Bonardo
85b4838b84 Bug 1621328 - Move CreateExposableURI into nsIOService. r=Gijs,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D66269
2020-03-13 12:44:36 +00:00
Simon Giesecke
d9ad6f7529 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/base. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D63102
2020-02-21 10:41:47 +00:00
Gabriele Svelto
eb403b8785 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-06 09:24:56 +00:00
Dorel Luca
67889e1013 Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto
dc6fa2e86c Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-04 15:01:19 +00:00
Gabriele Svelto
652cb568da Bug 1585156 - Remove useless inclusions of nsIDOMWindow.h and nsIDOMWindowUtils.h r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D47678
2019-09-30 22:06:47 +00:00
Kris Maglione
3988b93f74 Bug 1577723: Store BrowsingContext ID in dom::Location rather than DocShell weak reference. r=farre
Storing a DocShell rather than a BrowsingContext causes a number of problems
when dealing with cross-process navigations. The most immediate in this case
is that some cross-origin-allowed operations only work after a local-to-remote
navigation only until the original DocShell is destroyed, which causes
intermittent test failures.

It also means, though, that after a local-to-remote navigation, where the
DocShell has not been destroyed, attempts to read same-origin properties still
end up at the old DocShell, and as a result, lie about the current state of
the BrowsingContext.

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

MANUAL PUSH: Cannot update re-opened Phabricator revisions.
2019-09-16 18:17:17 -07:00
Daniel Varga
4c8e3ceace Backed out 2 changesets (bug 1577723) for wpt failure at /html/browsers/history/the-location-interface/no-browsing-context.window.html
Backed out changeset 8bf308d3b614 (bug 1577723)
Backed out changeset 6ba3bcede28a (bug 1577723)
2019-09-18 01:50:35 +03:00
Kris Maglione
356a2e4c8d Bug 1577723: Store BrowsingContext ID in dom::Location rather than DocShell weak reference. r=farre
Storing a DocShell rather than a BrowsingContext causes a number of problems
when dealing with cross-process navigations. The most immediate in this case
is that some cross-origin-allowed operations only work after a local-to-remote
navigation only until the original DocShell is destroyed, which causes
intermittent test failures.

It also means, though, that after a local-to-remote navigation, where the
DocShell has not been destroyed, attempts to read same-origin properties still
end up at the old DocShell, and as a result, lie about the current state of
the BrowsingContext.

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

MANUAL PUSH: Cannot update re-opened Phabricator revisions.
2019-09-16 18:17:17 -07:00
Kris Maglione
b6c1b7ff06 Bug 1532994: Part 1 - Move cross-origin-accessible Location logic to base class. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D43327
2019-08-23 15:26:51 -07:00
Thomas Nguyen
a688b675a4 Bug 1528697 - Expose ReferrerPolicy.webidl and use referrerpolicy enum r=smaug
ReferrerPolicy gets tossed back and forth as a uint32_t and
ReferrerPolicy enum in header file. Expose ReferrerPolicyValues from
webidl file and use consistently in native code.

Differential Revision: https://phabricator.services.mozilla.com/D41954
2019-08-21 13:24:45 +00:00
Sylvestre Ledru
3067b10938 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D41559
2019-08-13 07:15:25 +00:00
Emilio Cobos Álvarez
ae00abf302 Bug 1571031 - followup: Don't throw NS_OK. r=bustage
MANUAL PUSH: bustage fix
CLOSED TREE
2019-08-02 21:13:38 +02:00
Emilio Cobos Álvarez
14ebb064e7 Bug 1571031 - Change Location::Reload to take an ErroResult, since it's what both callers expect. r=bzbarsky
Not sure what you think of the `return aRv.Throw()` pattern, I find it nice, but
it seems we don't use it a lot.

Also Location.h is inconsistent on aError vs. aRv, if you want me to change to
one or the other let me know.

Differential Revision: https://phabricator.services.mozilla.com/D40450
2019-08-02 18:02:11 +00:00
Emilio Cobos Álvarez
cb840d94f0 Bug 1570566 - Cleanup a bit Location::Reload() and History::Go(0). r=bzbarsky
This code was jumping through some hoops that seemed unnecessary. Given
History::Go(0) already calls Location::Reload(false), seems we can just handle
the new pref in one place, and also simplify the code a bit.

Differential Revision: https://phabricator.services.mozilla.com/D40431
2019-08-02 16:30:49 +00:00
Emilio Cobos Álvarez
e9d455aed5 Bug 1570566 - Don't block reloading during a resize event handler on Android and Nightly. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D40430
2019-08-02 16:30:41 +00:00
Tom Schuster
2c388af9b0 Bug 1558915 - Use infallible nsIURI::SchemeIs in dom/base. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D39780
2019-07-30 17:51:37 +00:00
Boris Zbarsky
1b21e3069f Bug 1565767 part 1. Stop returning addrefed URIs from GetBaseURI(). r=peterv
We only needed this for xml:base.

Differential Revision: https://phabricator.services.mozilla.com/D37969
2019-07-15 17:22:30 +00:00
Christoph Kerschbaumer
29451e9f5e Bug 965637: Move CSP from Principal into Client, part 1: backend changes. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D27654
2019-05-21 23:14:27 +00:00
Masayuki Nakano
dbcabe5901 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
2019-04-04 00:19:48 +00:00
Razvan Maries
5e691f8a46 Backed out changeset 3b94c20ba873 (bug 1540990) for build bustages. CLOSED TREE 2019-04-04 02:44:00 +03:00
Masayuki Nakano
0fd36d1719 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
2019-04-03 23:29:38 +00:00
Masayuki Nakano
5b1ecc8b12 Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25332
2019-03-29 15:11:04 +00:00
Dorel Luca
6cd4166b18 Backed out 3 changesets (bug 1540015) for build bustage. CLOSED TREE
Backed out changeset 7b71c9da0214 (bug 1540015)
Backed out changeset 5723ddbc5c44 (bug 1540015)
Backed out changeset 9561d2c36fa5 (bug 1540015)
2019-03-29 16:14:26 +02:00
Masayuki Nakano
12b497174b Bug 1540015 - part 1: Make Document.h stop including nsIPresShell.h r=smaug
If `Document::GetShell()` returns `PresShell*` rather than `nsIPresShell`, it's
a good step to deCOMTaminate `PresShell`.

This patch makes `Document.h` stop including `nsIPresShell.h` since
`nsIPresShell.h` includes `Document.h` indirectly and that causes bustage
when we make `Document::GetShell()` return `PresShell*`.

Differential Revision: https://phabricator.services.mozilla.com/D25332
2019-03-29 12:12:20 +00:00
Emilio Cobos Álvarez
cf0e6ff153 Bug 1533963 - Use a single RestyleHint representation. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D22828
2019-03-14 11:47:50 +00:00
Christoph Kerschbaumer
bd82a2ed63 Bug 1518454: Part 1, backend changes, add CSP to loadURIOptions dictionary and pass CSP explicitly from frontend to docshell. r=bz 2019-02-21 16:00:32 +01:00
Thomas Nguyen
d13c22ef47 Bug 1517703 - Part 1 - Implement ReferrerInfo class r=smaug
The class contains original full referrer and referrer policy will be
applied to the referrer.

Differential Revision: https://phabricator.services.mozilla.com/D17923
2019-02-12 19:35:32 +00:00
Kris Maglione
8ccab89886 Bug 1478124: Part 8b - Update DocShell module to use a static component manifest. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D15040
2018-12-16 17:27:58 -08:00
arthur.iakab
127fb281ff Backed out 16 changesets (bug 1478124) for failing android geckoview-junit CLOSED TREE
Backed out changeset fce62c77a56b (bug 1478124)
Backed out changeset eb2fa3b5edf7 (bug 1478124)
Backed out changeset 8dacce59fcc0 (bug 1478124)
Backed out changeset 012fd0107204 (bug 1478124)
Backed out changeset 496aaf774697 (bug 1478124)
Backed out changeset 21f4fda03159 (bug 1478124)
Backed out changeset b0444e0bc801 (bug 1478124)
Backed out changeset d94039b19943 (bug 1478124)
Backed out changeset 5d85deac61c2 (bug 1478124)
Backed out changeset 929fd654c9df (bug 1478124)
Backed out changeset 1ddd80d9e91a (bug 1478124)
Backed out changeset b8d2dfdfc324 (bug 1478124)
Backed out changeset f500020a273a (bug 1478124)
Backed out changeset dd00365ebb55 (bug 1478124)
Backed out changeset 538e40c5ee13 (bug 1478124)
Backed out changeset bedaa9c437ad (bug 1478124)
2019-01-29 10:03:06 +02:00
Kris Maglione
605e3719de Bug 1478124: Part 8b - Update DocShell module to use a static component manifest. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D15040
2018-12-16 17:27:58 -08:00
Emilio Cobos Álvarez
dc336a73ba Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.

Overall it's not a very interesting patch I think.

nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.

I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.

While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
2019-01-03 17:48:33 +01:00
Kyle Machulis
8e9467964d Bug 1497995 - Make URI a constructor argument of nsDocShellLoadState; r=bzbarsky
We'll always need a URI for DocShellLoadState, and it should only
change is special circumstances. Construct the object with it, and
then follow up in Bug 1515433 for more cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D13490
2018-12-21 20:17:43 +00:00
Sylvestre Ledru
e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Kyle Machulis
05a190dd1a Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState; r=bz, nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.
2018-10-29 17:13:29 -07:00
Kyle Machulis
e37f01f866 Backed out changeset fa8487b94a38 due to a=BUSTAGE on comm-central 2018-10-29 12:28:02 -07:00
Kyle Machulis
8416fded30 Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState r=bzbarsky,nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.

Differential Revision: https://phabricator.services.mozilla.com/D6944
2018-10-26 03:50:37 +00:00
Narcis Beleuzu
28f99c035d Backed out changeset 8dd09fad1f35 (bug 1492648) for bc failures on browser_auto_close_window.js 2018-10-19 10:11:33 +03:00
Kyle Machulis
dc2a795ff8 Bug 1492648 - Move from nsDocShellLoadInfo to nsDocShellLoadState r=bzbarsky,nika
Creates the nsDocShellLoadState object, which is basically
nsDocShellLoadInfo plus a few extra fields to make it usable as a
single argument to nsDocShell::LoadURI (and eventually
nsDocShell::InternalLoad).

Subframe history handling is a huge logic block in
nsDocShell::LoadURI, which is only used on history loads. This patch
also extracts the logic out into its own function to make the body of
LoadURI clearer.

Differential Revision: https://phabricator.services.mozilla.com/D6944
2018-10-18 22:14:54 +00:00
Boris Zbarsky
5e412b21e3 Bug 1497301 part 4. Simplify Location::CheckURL. r=bholley
The main change is to just use the principal bindings pass us to do our
CheckLoadURI check.  If we do that, we don't have to care about the current
JSContext.
2018-10-12 11:07:18 -04:00
Boris Zbarsky
7df1ab6fe4 Bug 1497301 part 3. Change a bunch of Location function signatures to take an ErrorResult. r=bholley
This way we can propagate errors out usefully.
2018-10-15 14:17:48 -04:00
Bogdan Tara
fc063cc368 Backed out 2 changesets (bug 1497301) for /url/failure.html failures CLOSED TREE
Backed out changeset 45ba0943d666 (bug 1497301)
Backed out changeset 0bd7470927d2 (bug 1497301)
2018-10-16 00:30:00 +03:00
Boris Zbarsky
56a47bedd7 Bug 1497301 part 4. Simplify Location::CheckURL. r=bholley
The main change is to just use the principal bindings pass us to do our
CheckLoadURI check.  If we do that, we don't have to care about the current
JSContext.
2018-10-12 11:07:18 -04:00
Boris Zbarsky
31049aa1d2 Bug 1497301 part 3. Change a bunch of Location function signatures to take an ErrorResult. r=bholley
This way we can propagate errors out usefully.
2018-10-15 14:17:48 -04:00
Gurzau Raul
019388753b Backed out changeset 5d0df5f74170 (bug 1497301) for failing at caps/tests/ and js/xpconnect/tests on a CLOSED TREE 2018-10-12 19:28:29 +03:00