Commit Graph

1690 Commits

Author SHA1 Message Date
Boris Zbarsky
d9b66ffabd Bug 1602090 part 2. Create separate CheckMayLoad and CheckMayLoadWithReporting APIs. r=ckerschb
CheckMayLoadAndReport takes a window ID.  This allows us to report
errors from it to the web console as needed.  Most consumers know statically
whether they want reporting or not, so there's no reason to force the ones that
don't to provide window ids.

Differential Revision: https://phabricator.services.mozilla.com/D56388
2019-12-12 13:03:42 +00:00
Henri Sivonen
5404be1b75 Bug 1551276 - Autodetect legacy encodings on unlabeled pages. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D56362
2019-12-12 12:59:47 +00:00
Emilio Cobos Álvarez
8b85f19364 Bug 1598841 - nsCanvasFrame anonymous content needs to be document-level. r=bdahl,heycam
Otherwise code like StyleChildrenIterator won't find it, plus it is the right
thing to do anyway.

You don't really want this to inherit from the root element, even though given
this content is under our control (only in chrome documents) it is less of an
issue.

Differential Revision: https://phabricator.services.mozilla.com/D56637
2019-12-11 22:27:07 +00:00
Jeff Walden
5c07885dcf Bug 1602882 - Move array operations to a new js/Array.h header. r=sfink,bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D56595
2019-12-11 06:17:44 +00:00
Kannan Vijayan
360a78dae6 Bug 1587399 - Fix usage of nsIDocShellTreeItem in nsContentUtils::CheckForSubFrameDrop. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D56001
2019-12-10 15:19:35 +00:00
Boris Zbarsky
0d21fa3152 Bug 1601377 part 2. Make it clear that nsContentUtils::PrincipalHasPermission never takes a null nsIPrincipal. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D56217
2019-12-08 21:10:15 +00:00
Boris Zbarsky
33b5758e6f Bug 1601377 part 1. Make it clear that nsContentUtils::PrincipalAllowsL10n never takes a null nsIPrincipal. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D56216
2019-12-09 15:10:32 +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
Sebastian Streich
5dbfc609f3 Bug 1597704 - Move is OriginPotentially Trustworthy into Principal r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D53830
2019-12-05 16:04:53 +00:00
Boris Zbarsky
2df1df0176 Bug 1517588. Use nsIPrincipal::IsSystemPrincipal instead of nsContentUtils::IsSystemPrincipal r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D53067
2019-12-05 04:44:32 +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
Kannan Vijayan
fb36eb9160 Bug 1587397 - Fix usage of nsIDocShellTreeItem in nsContentUtils::IsChildOfSameType. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D55598
2019-12-03 19:30:51 +00:00
longsonr
288ad04006 Bug 1599296 - SVG images and links should not be draggable r=dholbert
Differential Revision: https://phabricator.services.mozilla.com/D55385
2019-12-02 05:44:30 +00:00
shindli
145f206006 Backed out changeset 68ff34ec8e96 (bug 1597704) for causing perma bc3 failures in browser/extensions/formautofill/test/browser/browser_autocomplete_footer.js CLOSED TREE 2019-11-28 16:12:45 +02:00
Sebastian Streich
f5a4e64086 Bug 1597704 - Move is OriginPotentially Trustworthy into Principal r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D53830
2019-11-28 12:44:29 +00:00
Gurzau Raul
e891894ac4 Backed out changeset 74162d71ef4d (bug 1597704) for failing at browser_insecurePasswordConsoleWarning.js on a CLOSED TREE. 2019-11-26 19:30:19 +02:00
Sebastian Streich
ca5005b525 Bug 1597704 - Move is OriginPotentially Trustworthy into Principal r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D53830
2019-11-26 16:00:49 +00:00
Sylvestre Ledru
0f8c6db00f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D54686
2019-11-26 14:35:02 +00:00
Masayuki Nakano
16fa2f8998 Bug 1597679 - part 2: Make nsITextControlElement inherit nsGenericHTMLFormElementWithState r=smaug
Sub classes of `nsITextControlElement` are only `HTMLInputElement` and
`HTMLTextAreaElement`. And both base class is
`nsGenericHTMLFormElementWithState`.  Therefore, we can make
`nsITextControlElement` inherit `nsGenericHTMLFormElementWithState` and
make `HTMLInputElement` and `HTMLTextAreaElement` inherit
`nsITextControlElement`.  Then, we can get rid of a lot of QI between
`nsINode`/`nsIContent`/`Element` and `nsITextControlElement` (and note that
some of them in a hot path).

Additionally, this patch renames `nsITextControlElement` to
`mozilla::TextControlElement`.

Differential Revision: https://phabricator.services.mozilla.com/D54330
2019-11-25 06:35:15 +00:00
Coroiu Cristina
46945eade0 Backed out 3 changesets (bug 1597679) for Android debug build bustage at build/src/dom/base/nsContentAreaDragDrop.cpp
Backed out changeset 6a73b58e0db4 (bug 1597679)
Backed out changeset 90a172eff2de (bug 1597679)
Backed out changeset d4a156cf28ff (bug 1597679)
2019-11-24 09:02:53 +02:00
Masayuki Nakano
018bf53100 Bug 1597679 - part 2: Make nsITextControlElement inherit nsGenericHTMLFormElementWithState r=smaug
Sub classes of `nsITextControlElement` are only `HTMLInputElement` and
`HTMLTextAreaElement`. And both base class is
`nsGenericHTMLFormElementWithState`.  Therefore, we can make
`nsITextControlElement` inherit `nsGenericHTMLFormElementWithState` and
make `HTMLInputElement` and `HTMLTextAreaElement` inherit
`nsITextControlElement`.  Then, we can get rid of a lot of QI between
`nsINode`/`nsIContent`/`Element` and `nsITextControlElement` (and note that
some of them in a hot path).

Additionally, this patch renames `nsITextControlElement` to
`mozilla::TextControlElement`.

Differential Revision: https://phabricator.services.mozilla.com/D54330
2019-11-24 05:38:02 +00:00
Razvan Maries
2448b42ebe Backed out changeset 4082b974a1e6 (bug 1597704) test_isOriginPotentiallyTrustworthy.js. CLOSED TREE 2019-11-22 13:35:36 +02:00
Sebastian Streich
f78e4e23b5 Bug 1597704 - Move is OriginPotentially Trustworthy into Principal r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D53830
2019-11-21 16:29:13 +00:00
Ehsan Akhgari
26d535cf93 Bug 1594540 - Fix the off-by-one error that breaks login on Pinterest.com; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D53770
2019-11-20 18:22:11 +00:00
Boris Zbarsky
75536d69a0 Bug 1596458 part 1. Fix CreateContextualFragment in XML to not accidentally trigger custom element constructors. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D53076
2019-11-20 08:07:47 +00:00
Emilio Cobos Álvarez
20ef027001 Bug 1596768 - Remove GetBindingParent usage in nsContentUtils::IsInSameAnonymousTree. r=smaug
Check Shadow DOM and NAC separately.

Depends on D53195

Differential Revision: https://phabricator.services.mozilla.com/D53196
2019-11-15 17:05:15 +00:00
Emilio Cobos Álvarez
80b82f5722 Bug 1596391 - Remove Get/SetXBLInsertionPoint. r=smaug
They're dead.

Depends on D52992

Differential Revision: https://phabricator.services.mozilla.com/D52993
2019-11-14 12:56:44 +00:00
Boris Zbarsky
0d32fd21a1 Bug 1595890 part 3. Remove xpc::IsContentXBLCompartment and its various callsites. r=bholley
It always returns false.

Differential Revision: https://phabricator.services.mozilla.com/D52746
2019-11-14 05:20:18 +00:00
Emma Malysz
1e119c959b Bug 1594874, remove xbl.properties and instances r=zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D52281
2019-11-11 19:31:08 +00:00
Noemi Erli
877554739d Backed out changeset ec5a8a6a37d4 (bug 1594874) for causing Linux build bustages CLOSED TREE 2019-11-08 03:51:10 +02:00
Emma Malysz
9f384627c8 Bug 1594874, remove xbl.properties and instances r=zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D52281
2019-11-08 00:10:59 +00:00
Brian Grinstead
5c162e767e Bug 1593119 - unifdef MOZ_XBL r=bzbarsky
This was generated with:

```
rg -l -g '*.{cpp,h}' MOZ_XBL . | while read FILE ; do
   echo $FILE
   unifdef -m -UMOZ_XBL $FILE
done
```

After this, I manually removed the directive in nsContentUtils.cpp due to:

  unifdef: ./dom/base/nsContentUtils.cpp: 4630: Unterminated string literal
  unifdef: Output may be truncated

Differential Revision: https://phabricator.services.mozilla.com/D51337
2019-11-07 00:35:13 +00:00
Sebastian Hengst
84c9c8b5c1 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-11-06 15:00:06 +01:00
Andreas Farre
230e07715f Bug 1582716 - Remove nsDocShell::GetIsOnlyToplevelInTabGroup. r=nika
We can remove isOnlyToplevelInTabGroup entirely since we have
BrowsingContext/BrowsingContextGroup exposed through
chrome-webidl. Checking if a browsing context is the only top level
(auxilliary or otherwise) is only a matter of checking that there
isn't a parent, and that the size of the browsing context group is 1.

Differential Revision: https://phabricator.services.mozilla.com/D46590
2019-11-06 10:54:49 +00:00
Mirko Brodesser
212ddebc86 Bug 1593222: part 3) Move nsNodeUtils::GetFirstChildOfTemplateOrNode to nsINode. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51608
2019-11-05 14:06:05 +00:00
Mirko Brodesser
2eaa9370eb Bug 1593222: part 1) Move nsNodeUtils::IsTemplateElement to nsINode. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51606
2019-11-05 14:05:36 +00:00
Alex Catarineu
65042da62b Bug 1581537 - Avoid several browser language leaks r=smaug
Spoof dom/dom.properties, layout/xmlparser.properties,
layout/MediaDocument.properties to en-US if needed.

Differential Revision: https://phabricator.services.mozilla.com/D46034
2019-11-04 16:56:27 +00:00
Nika Layzell
73223fc932 Bug 1590908 - Part 2: Don't require passing JSContext* to CallerInnerWindow, r=kmag
The JSContext* is already fetched from within GetIncumbentGlobal, so the get is
guaranteed not to fail. This simplifies the callsite, making it easier to call.

Differential Revision: https://phabricator.services.mozilla.com/D50855
2019-11-04 15:05:49 +00:00
Mihai Alexandru Michis
6be7f1be0b Backed out changeset 1d87c269da8a (bug 1581537) for causing bc failures in browser_misused_characters_in_strings.js CLOSED TREE 2019-11-04 16:06:37 +02:00
Alex Catarineu
884665353f Bug 1581537 - Avoid several browser language leaks r=smaug
Spoof dom/dom.properties, layout/xmlparser.properties,
layout/MediaDocument.properties to en-US if needed.

Differential Revision: https://phabricator.services.mozilla.com/D46034
2019-11-04 11:27:59 +00:00
Masayuki Nakano
55109d6fed Bug 1588745 - part 4: Make TextControlState reuse its instance by itself r=Ehsan
Currently, only `HTMLInputElement` reuses `TextControlState` instance since
`HTMLTextAreaElement` had the instance as a member rather than allocate it.

Now, all instances are allocated in the heap independently for guaranteeing
their lifetime.  So, the reuse mechanism should be managed by
`TextControlState` itself.

Depends on D51393

Differential Revision: https://phabricator.services.mozilla.com/D51394
2019-11-01 20:51:48 +00:00
Masayuki Nakano
43df83b332 Bug 1588745 - part 1: Rename nsTextEditorState to mozilla::TextControlState r=Ehsan
It should be in `mozilla` namespace and it manages not only `TextEditor`,
manages selection, selection controller and callback from editor. so that
I think it stores state of "text control widget". Therefore, I name it to
`TextControlState`.

And cleaning up the cpp file.

Differential Revision: https://phabricator.services.mozilla.com/D51391
2019-11-01 20:43:11 +00:00
Gijs Kruitbosch
0d705a55f9 Bug 1322864, r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D50927
2019-10-30 13:32:07 +00:00
Edgar Chen
b8572d9a06 Bug 1554965 - Input event should be composed; r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D50910
2019-10-29 13:19:06 +00:00
Ehsan Akhgari
1423b499e6 Bug 1590922 follow-up: the parts that didn't land in the first landing
Differential Revision: https://phabricator.services.mozilla.com/D50889
2019-10-29 01:12:28 +00:00
Ehsan Akhgari
6e3925ba31 Bug 1590922 - Fix parsing the blocklist in nsContentUtils::IsURIInList(); r=baku
Differential Revision: https://phabricator.services.mozilla.com/D50549
2019-10-28 10:57:24 +00:00
Alex Henrie
fd5feb4ae7 Bug 1591490 - Use the NS_IS_SURROGATE_PAIR macro everywhere. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D50697
2019-10-27 05:05:51 +00:00
Jean-Yves Avenard
ddeb965a06 Bug 1588899 - P1. Move classification flags related method to nsIClassifiedChannel. r=Ehsan,baku
This is where it should have been in the first place. Those attributes belong there.

Differential Revision: https://phabricator.services.mozilla.com/D49577
2019-10-19 04:30:24 +00:00
Brendan Dahl
bf272a3bca Bug 1510785 - Only build XBL related code when MOZ_XBL is defined. r=bzbarsky
When XBL is disabled, no code in dom/xbl will be built. Also, adds ifdefs
to remove any of the XBL related code elsewhere. There's definitely more
that can be done here, but I think it's better to wait to do the rest of
the cleanup when we actually remove the code.

Depends on D45612

Differential Revision: https://phabricator.services.mozilla.com/D45613
2019-10-08 23:52:14 +00:00