Граф коммитов

1037 Коммитов

Автор SHA1 Сообщение Дата
shravanrn 571754630f Bug 1657573: Change libhunspell's file access code to use function pointers r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D86173
2020-08-10 15:29:25 +00:00
Gijs Kruitbosch 7be797a434 Bug 1654098 - fix a few racist epithets missing 'exclude from suggestions' annotation, r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D86559
2020-08-10 15:21:20 +00:00
Simon Giesecke 1e02318b49 Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83817
2020-08-07 07:49:47 +00:00
Nathan Froyd e3ebda1914 Bug 1223932 - delete guard object uses from the tree; r=jwalden
CLOSED TREE

We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Mihai Alexandru Michis a911a108d0 Backed out changeset ac9c811bc427 (bug 1223932) for causing spidermonkey rust failures.
CLOSED TREE
2020-07-30 18:23:21 +03:00
Nathan Froyd bec9f9b93a Bug 1223932 - delete guard object uses from the tree; r=jwalden
We don't need these macros anymore, for two reasons:

1. We have static analysis to provide the same sort of checks via `MOZ_RAII`
   and friends.
2. clang now warns for the "temporary that should have been a declaration" case.

The extra requirements on class construction also show up during debug tests
as performance problems.

This change was automated by using the following sed script:

```
# Remove declarations in classes.
/MOZ_DECL_USE_GUARD_OBJECT_NOTIFIER/d
/MOZ_GUARD_OBJECT_NOTIFIER_INIT/d

# Remove individual macros, carefully.
{
  # We don't have to worry about substrings here because the closing
  # parenthesis "anchors" the match.
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_TO_PARENT)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_PARAM_IN_IMPL)/)/g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_IN_IMPL)/)/g;

  # Remove the longer identifier first.
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM_TO_PARENT//g;
  s/MOZ_GUARD_OBJECT_NOTIFIER_ONLY_PARAM//g;
}

# Remove the actual include.
\@# *include "mozilla/GuardObjects.h"@d
```

and running:

```
find . -name \*.cpp -o -name \*.h | grep -v 'GuardObjects.h' |xargs sed -i -f script 2>/dev/null
mach clang-format
```

Differential Revision: https://phabricator.services.mozilla.com/D85168
2020-07-30 14:22:38 +00:00
Frederik Braun a7153982e8 Bug 1366973: Rename security flags to not contain DATA anymore r=geckoview-reviewers,ckerschb,snorp
Differential Revision: https://phabricator.services.mozilla.com/D83490
2020-07-15 11:20:45 +00:00
Simon Giesecke e3c223da3e Bug 1648010 - Fix uses of NS_LITERAL_STRING with C string literals. r=geckoview-reviewers,agi,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80861
2020-07-01 08:34:12 +00:00
Simon Giesecke cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Makoto Kato b8d216c8f6 Bug 1637553 - Reduce array copy in spell checker loop. r=masayuki
Actually, we always clone spell checker range array per IPC call into spell
check loop. But we can use `std::move` to reduce unnecessary copy.

Also, `mozInlineSpellWordUtil::GetNextWord` always returns NS_OK, so
this should use boolean value to know whether loop is done.

Differential Revision: https://phabricator.services.mozilla.com/D75111
2020-05-27 14:33:12 +00:00
Emilio Cobos Álvarez 89958b377a Bug 1640605 - Remove IsInAnonymousSubtree / IsRootOfAnonymousSubtree. r=edgar
In favor of the NativeAnonymous versions which they forward to.

Done automatically with:

  rg -l 'IsInAnonymousSubtree' | xargs sed -i 's/IsInAnonymousSubtree/IsInNativeAnonymousSubtree/g'

And removing the function definitions afterwards.

Differential Revision: https://phabricator.services.mozilla.com/D76681
2020-05-25 11:43:51 +00:00
Simon Giesecke 6a983da8c3 Bug 1626570 - Improve handling of copying arrays in extensions/spellcheck. r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D72319
2020-04-30 09:36:26 +00:00
Andreas Farre 63e21eec70 Bug 1620594 - Part 1: Rework NS_ReleaseOnMainThreadSystemGroup. r=nika
To be able to remove SystemGroup, NS_ReleaseOnMainThreadSystemGroup
needs to have its dependency on SystemGroup removed. Since all
releases using SystemGroup would've released on the main thread anyway
we can safely replace NS_ReleaseOnMainThreadSystemGroup with
NS_ReleaseOnMainThread.

Depends on D64390

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

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:23 +00:00
Makoto Kato 8e9a1c655f Bug 1619883 - Don't include spellchecker dictionary in omni.ja of GeckoView. r=geckoview-reviewers,agi
Actually, we don't turn on hunspell spellchecker for Android, but, omni.ja seems have hunspell's dictionary. Let's remove it from package.

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

--HG--
extra : moz-landing-system : lando
2020-03-23 15:46:06 +00:00
Mirko Brodesser ec9cb4d8ef Bug 1622199: annotate `Selection::AddRangeAndSelectFramesAndNotifyListeners` with `MOZ_CAN_RUN_SCRIPT`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D66759

--HG--
extra : moz-landing-system : lando
2020-03-13 15:46:13 +00:00
Mirko Brodesser 4be580237d Bug 1619617: part 1) Annotate `RemoveRangeAndUnselectFramesAndNotifyListeners` with `MOZ_CAN_RUN_SCRIPT`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D65511

--HG--
extra : moz-landing-system : lando
2020-03-06 12:03:23 +00:00
Masatoshi Kimura 2a6dcf4db7 Bug 1617338 - Suppress warnings from third-party code in extensions/spellcheck/hunspell/glue/. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63749

--HG--
extra : moz-landing-system : lando
2020-02-27 14:52:00 +00:00
Brindusan Cristian a58c69be12 Backed out changeset 358b1ecca80b (bug 1617338) for build bustages on Unified_cpp_hunspell_glue0. CLOSED TREE 2020-02-26 19:28:54 +02:00
Masatoshi Kimura cb9e7bf077 Bug 1617338 - Suppress warnings from third-party code in extensions/spellcheck/hunspell/glue/ r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D63749

--HG--
extra : moz-landing-system : lando
2020-02-26 16:45:29 +00:00
Kris Maglione c31aa68fb4 Bug 1535617: Part 2 - Clear weak references for most cycle collected objects on unlink. r=mccr8
This covers most cycle collected objects which support weak references, but
not the ones which inherit from a cycle collected class and don't do any cycle
collection on their own.

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

--HG--
extra : moz-landing-system : lando
2020-02-25 19:44:39 +00:00
Simon Giesecke b50347f917 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-13 14:38:48 +00:00
shindli 91aa0518dd Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke f604a47fa5 Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-12 17:24:41 +00:00
Mirko Brodesser 36437a9d2d Bug 1613378: part 9) Clarify dependency to `mFrameSelection` in `Selection` when adding/removing ranges. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D62198

--HG--
extra : moz-landing-system : lando
2020-02-12 12:27:32 +00:00
Ehsan Akhgari 299cb321f2 Bug 1595542 - Update the spellchecker dictionary to SCOWL 2019.10.06
Differential Revision: https://phabricator.services.mozilla.com/D62069

--HG--
extra : amend_source : 44ea926d595dcfa8d0adedd559cc3b545eca119d
2020-02-07 20:15:26 +02:00
Masayuki Nakano 450b71f763 Bug 1612085 - part 1: Hide constructor of `nsRange` r=smaug
`nsRange` instances are allocated a lot in the heap especially by editor and
spellchecker.  The allocation cost is too bad for benchmarks.  Therefore,
we should reuse released instances as far as possible.  For managing it in
static factory methods of `nsRange`, we need to hide `nsRange` constructor.

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

--HG--
extra : moz-landing-system : lando
2020-01-30 13:23:35 +00:00
Sylvestre Ledru 187e9bafaf Bug 1519636 - Automatically reformat recent changes using clang-format r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2020-01-21 09:51:27 +00:00
Emilio Cobos Álvarez 256c124f94 Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj
This was done by:

This was done by applying:

```
diff --git a/python/mozbuild/mozbuild/code-analysis/mach_commands.py b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
index 789affde7bbf..fe33c4c7d4d1 100644
--- a/python/mozbuild/mozbuild/code-analysis/mach_commands.py
+++ b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
@@ -2007,7 +2007,7 @@ class StaticAnalysis(MachCommandBase):
         from subprocess import Popen, PIPE, check_output, CalledProcessError

         diff_process = Popen(self._get_clang_format_diff_command(commit), stdout=PIPE)
-        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format]
+        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format, '-sort-includes']

         if not output_file:
             args.append("-i")
```

Then running `./mach clang-format -c <commit-hash>`

Then undoing that patch.

Then running check_spidermonkey_style.py --fixup

Then running `./mach clang-format`

I had to fix four things:

 * I needed to move <utility> back down in GuardObjects.h because I was hitting
   obscure problems with our system include wrappers like this:

0:03.94 /usr/include/stdlib.h:550:14: error: exception specification in declaration does not match previous declaration
0:03.94 extern void *realloc (void *__ptr, size_t __size)
0:03.94              ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/malloc_decls.h:53:1: note: previous declaration is here
0:03.94 MALLOC_DECL(realloc, void*, void*, size_t)
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozilla/mozalloc.h:22:32: note: expanded from macro 'MALLOC_DECL'
0:03.94     MOZ_MEMORY_API return_type name##_impl(__VA_ARGS__);
0:03.94                                ^
0:03.94 <scratch space>:178:1: note: expanded from here
0:03.94 realloc_impl
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozmemory_wrap.h:142:41: note: expanded from macro 'realloc_impl'
0:03.94 #define realloc_impl mozmem_malloc_impl(realloc)

   Which I really didn't feel like digging into.

 * I had to restore the order of TrustOverrideUtils.h and related files in nss
   because the .inc files depend on TrustOverrideUtils.h being included earlier.

 * I had to add a missing include to RollingNumber.h

 * Also had to partially restore include order in JsepSessionImpl.cpp to avoid
   some -WError issues due to some static inline functions being defined in a
   header but not used in the rest of the compilation unit.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 16:19:48 +00:00
Emilio Cobos Álvarez aa3a695712 Bug 1609996 - Remove mozilla/Move.h. r=froydnj
rg -l 'mozilla/Move.h' | xargs sed -i 's/#include "mozilla\/Move.h"/#include <utility>/g'

Further manual fixups and cleanups to the include order incoming.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 16:18:20 +00:00
Makoto Kato 7e2d6cdef4 Bug 1602526 - Part 1. Don't use implicit cast from char to uint32_t r=masayuki
This is regerssion by bug 1571339.

Non-ASCII character such as 0xf9 will be casted to 0xfff9 etc by implicit cast.
So I should cast from char to uint8_t or add char version fucntions.

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

--HG--
extra : moz-landing-system : lando
2019-12-26 03:34:49 +00:00
Megha 08ae52fe49 Bug 1556380 - Enable more ESLint rules for extensions/. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D43355

--HG--
extra : moz-landing-system : lando
2019-12-06 21:05:20 +00:00
Gabriele Svelto 69790bc62e Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ 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/D55443

--HG--
extra : moz-landing-system : lando
2019-12-06 09:16:44 +00:00
Emma Malysz c502777f53 Bug 1597847, rename remaining misc xul files from within /view, /gfx, /extensions, and /testing to .xhtml format r=marionette-reviewers,bgrins,whimboo,gbrown
Differential Revision: https://phabricator.services.mozilla.com/D54035

--HG--
rename : extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xul => extensions/spellcheck/tests/chrome/test_add_remove_dictionaries.xhtml
rename : gfx/tests/crashtests/593526.xul => gfx/tests/crashtests/593526.xhtml
rename : testing/marionette/chrome/test.xul => testing/marionette/chrome/test.xhtml
rename : testing/marionette/chrome/test2.xul => testing/marionette/chrome/test2.xhtml
rename : testing/marionette/chrome/test_dialog.xul => testing/marionette/chrome/test_dialog.xhtml
rename : testing/marionette/chrome/test_nested_iframe.xul => testing/marionette/chrome/test_nested_iframe.xhtml
rename : testing/marionette/reftest.xul => testing/marionette/reftest.xhtml
rename : testing/mochitest/baselinecoverage/chrome/test_baselinecoverage.xul => testing/mochitest/baselinecoverage/chrome/test_baselinecoverage.xhtml
rename : testing/mochitest/browser-harness.xul => testing/mochitest/browser-harness.xhtml
rename : testing/mochitest/chrome/test_chromeGetTestFile.xul => testing/mochitest/chrome/test_chromeGetTestFile.xhtml
rename : testing/mochitest/chrome/test_sample.xul => testing/mochitest/chrome/test_sample.xhtml
rename : testing/mochitest/chrome/test_sanityEventUtils.xul => testing/mochitest/chrome/test_sanityEventUtils.xhtml
rename : testing/mochitest/chrome/test_sanityException.xul => testing/mochitest/chrome/test_sanityException.xhtml
rename : testing/mochitest/chrome/test_sanityException2.xul => testing/mochitest/chrome/test_sanityException2.xhtml
rename : testing/mochitest/chrome/test_sanityManifest.xul => testing/mochitest/chrome/test_sanityManifest.xhtml
rename : testing/mochitest/chrome/test_sanityManifest_pf.xul => testing/mochitest/chrome/test_sanityManifest_pf.xhtml
rename : testing/mochitest/chrome/test_tasks_skip.xul => testing/mochitest/chrome/test_tasks_skip.xhtml
rename : testing/mochitest/chrome/test_tasks_skipall.xul => testing/mochitest/chrome/test_tasks_skipall.xhtml
rename : testing/mochitest/harness.xul => testing/mochitest/harness.xhtml
rename : testing/talos/talos/pageloader/chrome/pageloader.xul => testing/talos/talos/pageloader/chrome/pageloader.xhtml
rename : view/crashtests/382756-1.xul => view/crashtests/382756-1.xhtml
rename : view/crashtests/38589-1.xul => view/crashtests/38589-1.xhtml
extra : moz-landing-system : lando
2019-12-02 19:16:22 +00:00
Masayuki Nakano b91249c508 Bug 1599318 - `TextEditor` shouldn't put `\r` into its anonymous text node r=m_kato
Starting from bug 1597679, `HTMLTextAreaElement::GetValueInternal()` stops
converting `\r\n` and `\r` with `\n` because it may be in hot path and the scan
cost of `\r` in `nsContentUtils::PlatformToDOMLineBreaks()` is redundant in
most cases.

However, there are still some paths to input `\r`.  This patch makes them
call `nsContentUtils::PlatformToDOMLineBreaks()` if they have not done it.

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

--HG--
extra : moz-landing-system : lando
2019-11-28 05:51:41 +00:00
Masayuki Nakano 20699e2189 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

--HG--
rename : dom/html/nsITextControlElement.h => dom/html/TextControlElement.h
extra : moz-landing-system : lando
2019-11-25 06:35:15 +00:00
Coroiu Cristina 84bf2b6d25 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)

--HG--
rename : dom/html/TextControlElement.h => dom/html/nsITextControlElement.h
2019-11-24 09:02:53 +02:00
Masayuki Nakano eea1784f2d 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

--HG--
rename : dom/html/nsITextControlElement.h => dom/html/TextControlElement.h
extra : moz-landing-system : lando
2019-11-24 05:38:02 +00:00
Emilio Cobos Álvarez 536c1bc0bb Bug 1581467 - Fix checks for display: inline{,-block} which don't account for inline list items. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D48346

--HG--
extra : moz-landing-system : lando
2019-10-12 21:05:16 +00:00
Brian Grinstead 5cfb7798a4 Bug 1586878 - Replace <xul:textbox> with <html:input> in test_add_remove_dictionaries.xul;r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D48419

--HG--
extra : moz-landing-system : lando
2019-10-08 17:13:43 +00:00
David Major 8f0fcd819e Bug 1583332 - Define HUNSPELL_STATIC to silence warnings on Windows about importing intra-DLL code r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D47069

--HG--
extra : moz-landing-system : lando
2019-09-26 09:19:22 +00:00
Makoto Kato 50895a5db7 Bug 1571339 - Don't use nsTextFragment::AppendTo to get string in TextNodeContainsDOMWordSeparator. r=masayuki
Actually, spellchecker always allocates the heap to get text from text node. But it is unnecessary to allocate another heap here since `WordSplitState` walks text only and it is stack class.

If text is in '<textarea>', text node may be too large, so we shouldn't allocate memory to walk character in `WordSplitState` if possible. Because `TextNodeContainsDOMWordSeparator` will be called per input.

And `mWordUtil` is unused, so we should remove it.

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

--HG--
extra : moz-landing-system : lando
2019-09-09 03:42:45 +00:00
Makoto Kato 79bf4210ee Bug 1565919 - Don't separate words by contextual-based character. r=Ehsan
Original regression was by bug 1362858, and bug 1418629 wasn't enough to fix.

By bug 1362858, we use `CHAR_CLASS_SEPARATOR` in additional to DOM word separator. But some characters such as single quote, `@` and etc are `CHAR_CLASS_SEPARATOR`, so we may check spell by incomplete word.

We shouldn't separate word by characters that is email part, URL part or conditional punctuation.

And I also update test cases for this situation. `<textarea>` is better for spell checking since it can has multiple anonymous text nodes.

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

--HG--
extra : moz-landing-system : lando
2019-08-03 13:44:56 +00:00
Jorg K 864c351bc8 Bug 1570719 - Skip more elements in spellcheck for MailNews. r=masayuki 2019-08-02 10:49:17 +02:00
Gurzau Raul 21df1f7413 Merge inbound to mozilla-central. a=merge 2019-07-17 06:48:50 +03:00
Mirko Brodesser 8135a5859f Bug 1566046: move `nsContentUtils::ContentIsShadowIncludingDescendantOf` to `nsINode::IsShadowIncludingInclusiveDescendantOf`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D38079
2019-07-16 09:25:02 +02:00
Mirko Brodesser 2f40f072ab Bug 1565584: move `nsIContentUtils::ContentIsDescendantOf` to `nsINode::IsInclusiveDescendantOf`. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D37880
2019-07-15 10:02:21 +02:00
Barret Rennie c1d06a6c0c Bug 1289211 - Rename InfallibleTArray to nsTArray in extensions/spellcheck/ r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D36952

--HG--
extra : moz-landing-system : lando
2019-07-10 03:28:47 +00:00
Sylvestre Ledru e77bfc655d Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-07-16 07:33:44 +00:00
Ryan VanderMeulen d4d246dca3 Bug 1517477 - Upgrade Hunspell to version 1.7.0. r=masayuki
Differential Revision: https://phabricator.services.mozilla.com/D15652

--HG--
extra : moz-landing-system : lando
2019-07-03 16:18:23 +00:00
Victor Porof 5af464dcc4 Bug 1561435 - Format extensions/, a=automatic-formatting
# ignore-this-changeset

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

--HG--
extra : source : 31cb194f2a6651332aa71a41c0f06a29daf8a186
2019-07-05 10:46:07 +02:00