Allow storing multiple replacements on SpellCheckResult
I'm working on adding support for the Android spellcheck suggestion list that
appears in a native text box when you tap on a misspelled word. It appears that
I need to modify this piece of infrastructure to support passing multiple
suggestions through to the Spelling marker that gets added.
For reference, we construct the SpellCheckResult objects from the Android
spellchecker results in SpellCheckerSessionBridge::ProcessSpellCheckResults().
Alternatively, ContextMenuClientImpl has logic for calling the spellchecker
again to get the list of suggestions that we might be able to use:
https://chromium.googlesource.com/chromium/src/+/adc8910776c64a876f0422454da618a37d01167b/third_party/WebKit/Source/web/ContextMenuClientImpl.cpp#346
However, I talked to aelias and he said it would be better to store the
suggestions the first time we call the spellchecker, at the time we add the
marker, to avoid going back and forth unnecessarily.
BUG=715365
Review-Url: https://codereview.chromium.org/2848943002
Cr-Commit-Position: refs/heads/master@{#475058}
Committed: https://chromium.googlesource.com/chromium/src/+/c45f50742410a644a054325478d885e61d286713
groby: adding you as a spellcheck OWNER. I'm working on adding support for the Android ...
3 years, 7 months ago
(2017-04-28 18:10:01 UTC)
#4
groby: adding you as a spellcheck OWNER.
I'm working on adding support for the Android spellcheck menu that
appears when you tap a misspelled word (right now on other platforms, we
include the spellcheck options as part of a general context menu; this is
a text suggestion-specific menu on Android). The first step seemed to me to
modify this piece of infrastructure so we can store the whole list of
spelling suggestions in the Spelling DocumentMarkers when we first run
spellcheck to create them.
I'm not sure if this is the correct approach or not. There's apparently
some other code that stores lists of suggestions in DocumentMarker separated
by newline characters in a single string, but I'm not sure if it goes through
SpellCheckResult or not to do that. Another option (that seems less desirable
to some extent) is to run the spellchecker again when we're about to open the
menu to get the list of suggestions).
Does this seem like a reasonable thing to do or is there another approach I
should take?
rlanday
For reference, this is what the next step, to actually pass the results through from ...
3 years, 7 months ago
(2017-04-28 18:12:22 UTC)
#5
For reference, this is what the next step, to actually pass the results
through from the Android spellchecker, would look like:
https://codereview.chromium.org/2849933002
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
3 years, 7 months ago
(2017-04-28 20:04:46 UTC)
#6
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/renderer/spellcheck.cc File components/spellcheck/renderer/spellcheck.cc (right): https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/renderer/spellcheck.cc#newcode489 components/spellcheck/renderer/spellcheck.cc:489: if (skip_these_replacements) On 2017/04/28 at 23:45:55, groby wrote: > ...
3 years, 7 months ago
(2017-05-01 20:40:01 UTC)
#9
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
File components/spellcheck/renderer/spellcheck.cc (right):
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
components/spellcheck/renderer/spellcheck.cc:489: if (skip_these_replacements)
On 2017/04/28 at 23:45:55, groby wrote:
> I believe this is wrong - with your change, if *any* of the suggestions is
identical except for apostrophe fixes, *all* are discarded.
>
> This is complex enough it probably deserves a test case :)
My thinking was that if the spellchecker thinks the word can be made to be
correctly spelled just by changing the apostrophe, we should just ignore the
misspelling.
E.g. we might have a case like
word:
"John’s"
suggestions:
"John's"
"Jon's"
where one of the suggestions is just changing the apostrophe, and some of the
others are unnecessary changes to an already correctly-misspelled word. In this
case, the code I wrote probably does the most correct thing and ignores the
"misspelling".
I suppose it's also possible in principle to have a case like this:
word:
Johhn’s
suggestions:
Johhn's (which we can correct to Johhn’s and throw out)
John's (which we can correct to John’s and keep)
In this case, would do want to keep all other suggested replacements. However,
something like this seems like an oddball case that shouldn't happen because it
requires the spellchecker to return a suggestion that changes only the
apostrophe, despite the word still being misspelled. This shouldn't happen if
the dictionary to pull replacements out of is the same for checking the word in
the first place, but might happen if one of the rules for generating suggestions
is "replace curly quotes with straight quotes".
If we're really worried about this second case, we could probably switch out the
apostrophes to straight quotes before running the spellchecker, but then we
could theoretically have the same problem in the opposite direction where some
spellchecker might think words are only spelled correctly if they use *curly*
quotes.
What do you think the behavior should be?
3 years, 7 months ago
(2017-05-01 20:45:24 UTC)
#10
On 2017/05/01 20:40:01, rlanday wrote:
>
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
> File components/spellcheck/renderer/spellcheck.cc (right):
>
>
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
> components/spellcheck/renderer/spellcheck.cc:489: if (skip_these_replacements)
> On 2017/04/28 at 23:45:55, groby wrote:
> > I believe this is wrong - with your change, if *any* of the suggestions is
> identical except for apostrophe fixes, *all* are discarded.
> >
> > This is complex enough it probably deserves a test case :)
>
> My thinking was that if the spellchecker thinks the word can be made to be
> correctly spelled just by changing the apostrophe, we should just ignore the
> misspelling.
>
> E.g. we might have a case like
>
> word:
> "John’s"
>
> suggestions:
> "John's"
> "Jon's"
>
> where one of the suggestions is just changing the apostrophe, and some of the
> others are unnecessary changes to an already correctly-misspelled word. In
this
> case, the code I wrote probably does the most correct thing and ignores the
> "misspelling".
>
> I suppose it's also possible in principle to have a case like this:
>
> word:
> Johhn’s
>
> suggestions:
> Johhn's (which we can correct to Johhn’s and throw out)
> John's (which we can correct to John’s and keep)
>
> In this case, would do want to keep all other suggested replacements. However,
> something like this seems like an oddball case that shouldn't happen because
it
> requires the spellchecker to return a suggestion that changes only the
> apostrophe, despite the word still being misspelled. This shouldn't happen if
> the dictionary to pull replacements out of is the same for checking the word
in
> the first place, but might happen if one of the rules for generating
suggestions
> is "replace curly quotes with straight quotes".
>
> If we're really worried about this second case, we could probably switch out
the
> apostrophes to straight quotes before running the spellchecker, but then we
> could theoretically have the same problem in the opposite direction where some
> spellchecker might think words are only spelled correctly if they use *curly*
> quotes.
>
>
> What do you think the behavior should be?
We _do_ normalize apostrophes to straight apostrophes before we run the
checker. We just restore them after fixing spelling, because we have no control
over "curly or not", and the spell checker treats them differently. There's a
long bug with a whole lot of info on this.
https://bugs.chromium.org/p/chromium/issues/detail?id=165079
The check that you're looking at is part of the code that handles that
particular case :)
rlanday
Updated https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/common/spellcheck_result.h File components/spellcheck/common/spellcheck_result.h (right): https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/common/spellcheck_result.h#newcode27 components/spellcheck/common/spellcheck_result.h:27: Decoration d = SPELLING, On 2017/04/28 at 23:45:55, ...
3 years, 7 months ago
(2017-05-01 23:25:07 UTC)
#11
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_ng/builds/443412)
3 years, 7 months ago
(2017-05-02 18:03:44 UTC)
#16
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/402067)
3 years, 7 months ago
(2017-05-03 00:05:42 UTC)
#22
+rouslan, who's more familiar with the curly apostrophe handling. Rouslan: Am I misunderstanding our handling ...
3 years, 7 months ago
(2017-05-08 15:31:22 UTC)
#29
+rouslan, who's more familiar with the curly apostrophe handling.
Rouslan: Am I misunderstanding our handling of curly apostrophes? We never
accounted for the multi-replacement case here. (Which makes me curious, because
hunspell always has multiple suggestions)
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
File components/spellcheck/renderer/spellcheck.cc (right):
https://codereview.chromium.org/2848943002/diff/1/components/spellcheck/rende...
components/spellcheck/renderer/spellcheck.cc:489: if (skip_these_replacements)
On 2017/05/01 20:40:01, rlanday wrote:
> On 2017/04/28 at 23:45:55, groby wrote:
> > I believe this is wrong - with your change, if *any* of the suggestions is
> identical except for apostrophe fixes, *all* are discarded.
> >
> > This is complex enough it probably deserves a test case :)
>
> My thinking was that if the spellchecker thinks the word can be made to be
> correctly spelled just by changing the apostrophe, we should just ignore the
> misspelling.
>
> E.g. we might have a case like
>
> word:
> "John’s"
>
> suggestions:
> "John's"
> "Jon's"
>
> where one of the suggestions is just changing the apostrophe, and some of the
> others are unnecessary changes to an already correctly-misspelled word. In
this
> case, the code I wrote probably does the most correct thing and ignores the
> "misspelling".
>
> I suppose it's also possible in principle to have a case like this:
>
> word:
> Johhn’s
>
> suggestions:
> Johhn's (which we can correct to Johhn’s and throw out)
> John's (which we can correct to John’s and keep)
>
> In this case, would do want to keep all other suggested replacements. However,
> something like this seems like an oddball case that shouldn't happen because
it
> requires the spellchecker to return a suggestion that changes only the
> apostrophe, despite the word still being misspelled. This shouldn't happen if
> the dictionary to pull replacements out of is the same for checking the word
in
> the first place, but might happen if one of the rules for generating
suggestions
> is "replace curly quotes with straight quotes".
>
> If we're really worried about this second case, we could probably switch out
the
> apostrophes to straight quotes before running the spellchecker, but then we
> could theoretically have the same problem in the opposite direction where some
> spellchecker might think words are only spelled correctly if they use *curly*
> quotes.
What we currently do is that for all replacements, we restore the original
apostrophes after spell checking. If after that replacement the suggestion
equals the original word, we drop *that suggestion*.
There might be multiple other suggestions that still apply. Let's assume we try
the possessive of "mart", "mart‘s" with a 'smart quote'
The suggestions coming back will be "mart's", "mark's", "mare's" - all with
straight apostrophes. We do the back substitution on the first. It's equal to
the original, it should be dropped. But all further suggestions should still be
included, with the apostrophe substitution. I.e. We'd keep "mark's" and "mare's"
with smart quotes.
We can certainly debate which is the better choice - you've opted for "it's
correct, let's drop it". I'm wondering if that's the right choice, since we also
mix results with the server-side check. (Below, filter==USE_NATIVE_CHECKER).
I.e. if server-side suggested "mare's" as a contextually better result, I
believe it should still get a red underline. In your case, it'd get a grey one.
Yes, I know this is the edge case of an edge case :) If you'd prefer to stick
with your choice, I won't keep objecting - but please document the choice in a
comment, and add a unit test that verifies that specific behavior.
>
> What do you think the behavior should be?
please use gerrit instead
On 2017/05/08 15:31:22, groby wrote: > +rouslan, who's more familiar with the curly apostrophe handling. ...
3 years, 7 months ago
(2017-05-08 15:40:31 UTC)
#30
On 2017/05/08 15:31:22, groby wrote:
> +rouslan, who's more familiar with the curly apostrophe handling.
>
> Rouslan: Am I misunderstanding our handling of curly apostrophes? We never
> accounted for the multi-replacement case here. (Which makes me curious,
because
> hunspell always has multiple suggestions)
Your understanding is correct, Rachel. We never accounted for the
multi-replacement case because only the server-side spellchecker has the
apostrophe-fixing behavior. The server-side spellchecker always provides only
one suggestion.
please use gerrit instead
At the time of my work on spellcheck, SpellCheck::CreateTextCheckingResults() was called only for spellcheck results ...
3 years, 7 months ago
(2017-05-08 15:42:19 UTC)
#31
At the time of my work on spellcheck, SpellCheck::CreateTextCheckingResults()
was called only for spellcheck results coming back from browser, i.e., from the
server spellchecker. Hunspell was not using that code path.
please use gerrit instead
Description was changed from ========== Allow storing multiple replacements on SpellCheckResult I'm working on adding ...
3 years, 7 months ago
(2017-05-09 15:24:26 UTC)
#32
Description was changed from
==========
Allow storing multiple replacements on SpellCheckResult
I'm working on adding support for the Android spellcheck suggestion list that
appears in a native text box when you tap on a misspelled word. It appears that
I need to modify this piece of infrastructure to support passing multiple
suggestions through to the Spelling marker that gets added.
For reference, we construct the SpellCheckResult objects from the Android
spellchecker results in SpellCheckerSessionBridge::ProcessSpellCheckResults().
Alternatively, ContextMenuClientImpl has logic for calling the spellchecker
again to get the list of suggestions that we might be able to use:
https://chromium.googlesource.com/chromium/src/+/adc8910776c64a876f0422454da6...
However, I talked to aelias and he said it would be better to store the
suggestions the first time we call the spellchecker, at the time we add the
marker, to avoid going back and forth unnecessarily.
BUG=715365
==========
to
==========
Allow storing multiple replacements on SpellCheckResult
I'm working on adding support for the Android spellcheck suggestion list that
appears in a native text box when you tap on a misspelled word. It appears that
I need to modify this piece of infrastructure to support passing multiple
suggestions through to the Spelling marker that gets added.
For reference, we construct the SpellCheckResult objects from the Android
spellchecker results in SpellCheckerSessionBridge::ProcessSpellCheckResults().
Alternatively, ContextMenuClientImpl has logic for calling the spellchecker
again to get the list of suggestions that we might be able to use:
https://chromium.googlesource.com/chromium/src/+/adc8910776c64a876f0422454da6...
However, I talked to aelias and he said it would be better to store the
suggestions the first time we call the spellchecker, at the time we add the
marker, to avoid going back and forth unnecessarily.
BUG=715365
==========
On 2017/05/08 at 15:31:22, groby wrote: > What we currently do is that for all ...
3 years, 7 months ago
(2017-05-09 17:45:03 UTC)
#34
On 2017/05/08 at 15:31:22, groby wrote:
> What we currently do is that for all replacements, we restore the original
apostrophes after spell checking. If after that replacement the suggestion
equals the original word, we drop *that suggestion*.
>
> There might be multiple other suggestions that still apply. Let's assume we
try the possessive of "mart", "mart‘s" with a 'smart quote'
>
> The suggestions coming back will be "mart's", "mark's", "mare's" - all with
straight apostrophes. We do the back substitution on the first. It's equal to
the original, it should be dropped. But all further suggestions should still be
included, with the apostrophe substitution. I.e. We'd keep "mark's" and "mare's"
with smart quotes.
>
> We can certainly debate which is the better choice - you've opted for "it's
correct, let's drop it". I'm wondering if that's the right choice, since we also
mix results with the server-side check. (Below, filter==USE_NATIVE_CHECKER).
>
> I.e. if server-side suggested "mare's" as a contextually better result, I
believe it should still get a red underline. In your case, it'd get a grey one.
>
> Yes, I know this is the edge case of an edge case :) If you'd prefer to stick
with your choice, I won't keep objecting - but please document the choice in a
comment, and add a unit test that verifies that specific behavior.
My concern is that the spellchecker might flag a word as misspelled *solely*
because the apostrophe is the wrong type, and we'd end up putting red underlines
under words that are actually correctly spelled. It appears that the current
code has logic to handle this specific case (if the replacement is the same as
the misspelled word module the apostrophe type, drop the misspelling), so this
must be something we're concerned might happen, right? And then in that case, it
might return more than one suggestion, so the presence of having additional
suggestions that change more than just the apostrophe style doesn't really
indicate anything.
And if we have two spellcheckers involved, one of which is saying that the word
is correct except for the apostrophe change, I don't think the word should be
flagged as misspelled (the user could have added the word to one dictionary but
not the other).
The only case I think really might be problematic is if we have a sort of
"rogue" spellchecker that, for any word containing a curly quote, suggests that
you replace it with a straight quote, regardless of if the new word is correctly
spelled or not. In this case, we wouldn't be able to mark any word containing a
curly quote as misspelled because our spellchecker is returning spurious
results. But I don't know of any way around that.
I'd actually changed the behavior in code to keep the misspelling unless *all*
of the suggestions are only changing the apostrophe, but based on my reasoning
above, I don't think that's correct, so I will change it back. I will add some
code comments and update the test cases I'm adding in spellcheck_unittest.cc.
rlanday
The CQ bit was checked by rlanday@chromium.org to run a CQ dry run
3 years, 7 months ago
(2017-05-09 19:10:05 UTC)
#35
Dry run: Try jobs failed on following builders: android_n5x_swarming_rel on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_swarming_rel/builds/174075)
3 years, 7 months ago
(2017-05-09 20:12:27 UTC)
#39
https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/public/web/WebTextCheckingResult.h File third_party/WebKit/public/web/WebTextCheckingResult.h (right): https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/public/web/WebTextCheckingResult.h#newcode36 third_party/WebKit/public/web/WebTextCheckingResult.h:36: #include "../platform/WebVector.h" aelias, question for you since you're a ...
3 years, 7 months ago
(2017-05-17 22:23:58 UTC)
#41
On 2017/05/17 at 22:23:58, rlanday wrote: > https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/public/web/WebTextCheckingResult.h > File third_party/WebKit/public/web/WebTextCheckingResult.h (right): > > https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/public/web/WebTextCheckingResult.h#newcode36 ...
3 years, 7 months ago
(2017-05-17 22:28:31 UTC)
#42
On 2017/05/17 at 22:23:58, rlanday wrote:
>
https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/publ...
> File third_party/WebKit/public/web/WebTextCheckingResult.h (right):
>
>
https://codereview.chromium.org/2848943002/diff/80001/third_party/WebKit/publ...
> third_party/WebKit/public/web/WebTextCheckingResult.h:36: #include
"../platform/WebVector.h"
> aelias, question for you since you're a third_party/WebKit/public owner:
apparently files in this directory aren't supposed to be including from
../platform/. Is this something we should fix? If so, how?
Update: groby says writing "public/platform/" instead of "../platform/" fixes
the issue
rlanday
The CQ bit was checked by rlanday@chromium.org to run a CQ dry run
3 years, 7 months ago
(2017-05-18 01:38:05 UTC)
#43
groby: I looked at your test case and the behavior you want for the quote ...
3 years, 7 months ago
(2017-05-18 02:20:37 UTC)
#45
groby: I looked at your test case and the behavior you want for the quote marks
and I think it makes sense (I think I thought we were dealing with a different
issue than we actually are). I took your behavioral change and your test case
(with some small fixes to make it run properly) and included it in this CL.
PTAL.
Should I consolidate the two spellcheck_unittests?
Further explanation of why I changed my mind for anyone else reading this:
I thought we were dealing with a case where a spellchecker declares that a word
is misspelled simply because it has a curly quote, and I was trying to make sure
we wouldn't flag such words as misspelled.
But I guess since we already convert quotes to straight quotes before running
the spellchecker, what we're really trying to prevent is a spellchecker saying
"hey, you should make this a curly quote" when really the word already had one
and we just changed it to try not to confuse the spellchecker. See
spellcheck_unittest2.cc
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
3 years, 7 months ago
(2017-05-18 05:13:51 UTC)
#46
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/430044)
3 years, 7 months ago
(2017-05-18 05:13:52 UTC)
#47
3 years, 7 months ago
(2017-05-19 23:10:09 UTC)
#51
Dry run: This issue passed the CQ dry run.
groby-ooo-7-16
On 2017/05/18 02:20:37, rlanday wrote: > groby: I looked at your test case and the ...
3 years, 7 months ago
(2017-05-22 14:47:51 UTC)
#52
On 2017/05/18 02:20:37, rlanday wrote:
> groby: I looked at your test case and the behavior you want for the quote
marks
> and I think it makes sense (I think I thought we were dealing with a different
> issue than we actually are). I took your behavioral change and your test case
> (with some small fixes to make it run properly) and included it in this CL.
> PTAL.
>
> Should I consolidate the two spellcheck_unittests?
If you could, much appreciated. I hacked the demo together, and worked in a
separate unittest to affect as little code as possible - but that was strictly
for easier hacking :)
>
>
>
> Further explanation of why I changed my mind for anyone else reading this:
>
> I thought we were dealing with a case where a spellchecker declares that a
word
> is misspelled simply because it has a curly quote, and I was trying to make
sure
> we wouldn't flag such words as misspelled.
>
> But I guess since we already convert quotes to straight quotes before running
> the spellchecker, what we're really trying to prevent is a spellchecker saying
> "hey, you should make this a curly quote" when really the word already had one
> and we just changed it to try not to confuse the spellchecker. See
> spellcheck_unittest2.cc
For anyone else reading: spellcheck_unittest2.cc is here:
https://codereview.chromium.org/2891763003/
(written as a sketch to outline the issue)
rlanday
The CQ bit was checked by rlanday@chromium.org to run a CQ dry run
3 years, 7 months ago
(2017-05-22 20:36:58 UTC)
#53
Try jobs failed on following builders: ios-device-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device-xcode-clang/builds/104369) ios-simulator-xcode-clang on master.tryserver.chromium.mac (JOB_FAILED, ...
3 years, 7 months ago
(2017-05-25 22:04:03 UTC)
#66
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/448018)
3 years, 7 months ago
(2017-05-25 22:30:46 UTC)
#71
Looks like I need a couple more OWNERS to review this CL: jochen@, can you ...
3 years, 7 months ago
(2017-05-25 22:38:43 UTC)
#74
Looks like I need a couple more OWNERS to review this CL:
jochen@, can you please review:
chrome/browser/renderer_context_menu/spelling_menu_observer.cc
content/shell/test_runner/mock_spell_check.cc
content/shell/test_runner/spell_check_client.cc
third_party/WebKit/Source/core/editing/spellcheck/SpellCheckRequester.h
third_party/WebKit/Source/core/editing/spellcheck/SpellChecker.cpp
third_party/WebKit/Source/core/editing/spellcheck/SpellCheckerTest.cpp
third_party/WebKit/Source/platform/text/TextChecking.h
third_party/WebKit/Source/web/WebTextCheckingResult.cpp
third_party/WebKit/public/web/WebTextCheckingResult.h
mkwst@, can you please review:
components/spellcheck/common/spellcheck_messages.h
Mike West
Changing IPC from a string to a vector LGTM.
3 years, 7 months ago
(2017-05-26 04:52:59 UTC)
#75
Changing IPC from a string to a vector LGTM.
jochen (gone - plz use gerrit)
lgtm
3 years, 7 months ago
(2017-05-26 11:38:04 UTC)
#76
lgtm
rlanday
The CQ bit was checked by rlanday@chromium.org
3 years, 7 months ago
(2017-05-26 16:33:54 UTC)
#77
CQ is committing da patch. Bot data: {"patchset_id": 200001, "attempt_start_ts": 1495816434581780, "parent_rev": "6d0877aff7c0a14b421d2635cf60da4c4d25a948", "commit_rev": "c45f50742410a644a054325478d885e61d286713"}
3 years, 7 months ago
(2017-05-26 18:07:09 UTC)
#79
CQ is committing da patch.
Bot data: {"patchset_id": 200001, "attempt_start_ts": 1495816434581780,
"parent_rev": "6d0877aff7c0a14b421d2635cf60da4c4d25a948", "commit_rev":
"c45f50742410a644a054325478d885e61d286713"}
commit-bot: I haz the power
Description was changed from ========== Allow storing multiple replacements on SpellCheckResult I'm working on adding ...
3 years, 7 months ago
(2017-05-26 18:07:22 UTC)
#80
Message was sent while issue was closed.
Description was changed from
==========
Allow storing multiple replacements on SpellCheckResult
I'm working on adding support for the Android spellcheck suggestion list that
appears in a native text box when you tap on a misspelled word. It appears that
I need to modify this piece of infrastructure to support passing multiple
suggestions through to the Spelling marker that gets added.
For reference, we construct the SpellCheckResult objects from the Android
spellchecker results in SpellCheckerSessionBridge::ProcessSpellCheckResults().
Alternatively, ContextMenuClientImpl has logic for calling the spellchecker
again to get the list of suggestions that we might be able to use:
https://chromium.googlesource.com/chromium/src/+/adc8910776c64a876f0422454da6...
However, I talked to aelias and he said it would be better to store the
suggestions the first time we call the spellchecker, at the time we add the
marker, to avoid going back and forth unnecessarily.
BUG=715365
==========
to
==========
Allow storing multiple replacements on SpellCheckResult
I'm working on adding support for the Android spellcheck suggestion list that
appears in a native text box when you tap on a misspelled word. It appears that
I need to modify this piece of infrastructure to support passing multiple
suggestions through to the Spelling marker that gets added.
For reference, we construct the SpellCheckResult objects from the Android
spellchecker results in SpellCheckerSessionBridge::ProcessSpellCheckResults().
Alternatively, ContextMenuClientImpl has logic for calling the spellchecker
again to get the list of suggestions that we might be able to use:
https://chromium.googlesource.com/chromium/src/+/adc8910776c64a876f0422454da6...
However, I talked to aelias and he said it would be better to store the
suggestions the first time we call the spellchecker, at the time we add the
marker, to avoid going back and forth unnecessarily.
BUG=715365
Review-Url: https://codereview.chromium.org/2848943002
Cr-Commit-Position: refs/heads/master@{#475058}
Committed:
https://chromium.googlesource.com/chromium/src/+/c45f50742410a644a054325478d8...
==========
commit-bot: I haz the power
Committed patchset #11 (id:200001) as https://chromium.googlesource.com/chromium/src/+/c45f50742410a644a054325478d885e61d286713
3 years, 7 months ago
(2017-05-26 18:07:28 UTC)
#81
https://codereview.chromium.org/2848943002/diff/200001/components/spellcheck/renderer/spellcheck.cc File components/spellcheck/renderer/spellcheck.cc (right): https://codereview.chromium.org/2848943002/diff/200001/components/spellcheck/renderer/spellcheck.cc#newcode499 components/spellcheck/renderer/spellcheck.cc:499: if (replacements_adjusted.empty()) This is the culprit of crbug.com/727172: If ...
3 years, 6 months ago
(2017-05-29 04:00:31 UTC)
#83
Issue 2848943002: Allow storing multiple replacements on SpellCheckResult
(Closed)
Created 3 years, 7 months ago by rlanday
Modified 3 years, 6 months ago
Reviewers: Xiaocheng, aelias_OOO_until_Jul13, groby-ooo-7-16, jochen (gone - plz use gerrit), Mike West
Base URL:
Comments: 10