Commit d66d2fbc authored by Ilya.Kirillov's avatar Ilya.Kirillov Committed by Alexander.Trofimov

Исправлен баг в проверке орфографии в ситуации, когда запрос вариантов слова...

Исправлен баг в проверке орфографии в ситуации, когда запрос вариантов слова происходил до проверки орфографии данного параграфа, а ответы приходили наоборот, и когда запрос вариантов слова происходил в момент ожидания запроса проверки орфографии данного параграфа (неуловимый баг 24915).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@59932 954022d7-b5bf-4e40-9824-e11837661b57
parent 4f56c3d3
...@@ -3316,7 +3316,6 @@ Paragraph.prototype = ...@@ -3316,7 +3316,6 @@ Paragraph.prototype =
} }
// Если курсор находится в начале или конце гиперссылки, тогда выводим его из гиперссылки // Если курсор находится в начале или конце гиперссылки, тогда выводим его из гиперссылки
// TODO: Из каки
while ( CurPos > 0 && para_Run !== this.Content[CurPos].Type && para_Math !== this.Content[CurPos].Type && true === this.Content[CurPos].Cursor_Is_Start() ) while ( CurPos > 0 && para_Run !== this.Content[CurPos].Type && para_Math !== this.Content[CurPos].Type && true === this.Content[CurPos].Cursor_Is_Start() )
{ {
if ( false === this.Content[CurPos - 1].Is_CursorPlaceable() ) if ( false === this.Content[CurPos - 1].Is_CursorPlaceable() )
......
...@@ -167,6 +167,15 @@ CDocumentSpelling.prototype = ...@@ -167,6 +167,15 @@ CDocumentSpelling.prototype =
} }
}, },
Check_WaitingParagraph : function(Para)
{
var ParaId = Para.Get_Id();
if (undefined === this.WaitingParagraphs[ParaId])
return false;
return true;
},
Remove_WaitingParagraph : function(Para) Remove_WaitingParagraph : function(Para)
{ {
var ParaId = Para.Get_Id(); var ParaId = Para.Get_Id();
...@@ -290,6 +299,7 @@ CParaSpellChecker.prototype = ...@@ -290,6 +299,7 @@ CParaSpellChecker.prototype =
if ( 0 < usrWords.length ) if ( 0 < usrWords.length )
{ {
editor.WordControl.m_oLogicDocument.Spelling.Add_WaitingParagraph(this.Paragraph); editor.WordControl.m_oLogicDocument.Spelling.Add_WaitingParagraph(this.Paragraph);
this.RecalcId += "_checked";
spellCheck(editor, {"type": "spell", "ParagraphId": this.ParaId, "RecalcId" : this.RecalcId, "ElementId" : 0, "usrWords" : usrWords, "usrLang" : usrLang }); spellCheck(editor, {"type": "spell", "ParagraphId": this.ParaId, "RecalcId" : this.RecalcId, "ElementId" : 0, "usrWords" : usrWords, "usrLang" : usrLang });
} }
else if ( undefined != ParagraphForceRedraw ) else if ( undefined != ParagraphForceRedraw )
...@@ -418,7 +428,7 @@ CParaSpellChecker.prototype = ...@@ -418,7 +428,7 @@ CParaSpellChecker.prototype =
Variants = FoundElement.Variants; Variants = FoundElement.Variants;
Checked = FoundElement.Checked; Checked = FoundElement.Checked;
if ( null === Variants ) if (null === Variants && false === editor.WordControl.m_oLogicDocument.Spelling.Check_WaitingParagraph(this.Paragraph))
{ {
spellCheck(editor, {"type": "suggest", "ParagraphId": this.ParaId, "RecalcId" : this.RecalcId, "ElementId" : FoundIndex, "usrWords" : [Word], "usrLang" : [FoundElement.Lang] }); spellCheck(editor, {"type": "suggest", "ParagraphId": this.ParaId, "RecalcId" : this.RecalcId, "ElementId" : FoundIndex, "usrWords" : [Word], "usrLang" : [FoundElement.Lang] });
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment