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

Исправлен баг с удалением комментариев при удалении выделенного текста (баг...

Исправлен баг с удалением комментариев при удалении выделенного текста (баг 25187). Исправлен баг с переходом курсора в начало/конец строки по кнопкам Home/End (баг 25193). Исправлен баг с индексацией строк в таблице при принятии чужих изменений (баг 25082).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@57121 954022d7-b5bf-4e40-9824-e11837661b57
parent d88ce488
...@@ -3543,6 +3543,17 @@ Paragraph.prototype = ...@@ -3543,6 +3543,17 @@ Paragraph.prototype =
} }
else else
{ {
// Комментарии удаляем потом отдельно, чтобы не путались метки селекта
var CommentsToDelete = {};
for (var Pos = StartPos; Pos <= EndPos; Pos++)
{
var Item = this.Content[Pos];
if (para_Comment === Item.Type)
CommentsToDelete[Item.CommentId] = true;
}
this.DeleteCommentOnRemove = false;
this.Content[EndPos].Remove(nCount, bOnAddText); this.Content[EndPos].Remove(nCount, bOnAddText);
// TODO: Как только избавимся от para_End переделать здесь // TODO: Как только избавимся от para_End переделать здесь
...@@ -3568,6 +3579,13 @@ Paragraph.prototype = ...@@ -3568,6 +3579,13 @@ Paragraph.prototype =
this.Internal_Content_Remove( StartPos ); this.Internal_Content_Remove( StartPos );
} }
this.DeleteCommentOnRemove = true;
for (var CommentId in CommentsToDelete)
{
this.LogicDocument.Remove_Comment( CommentId, true );
}
} }
if ( true !== this.Content[this.CurPos.ContentPos].Selection_IsUse() ) if ( true !== this.Content[this.CurPos.ContentPos].Selection_IsUse() )
...@@ -9003,7 +9021,7 @@ Paragraph.prototype = ...@@ -9003,7 +9021,7 @@ Paragraph.prototype =
var NumPr = this.Numbering_Get(); var NumPr = this.Numbering_Get();
if ( undefined != NumPr ) if ( undefined != NumPr )
{ {
bEmptyParagraph = false; ParaStats.EmptyParagraph = false;
this.Parent.Get_Numbering().Get_AbstractNum( NumPr.NumId).DocumentStatistics( NumPr.Lvl, Stats ); this.Parent.Get_Numbering().Get_AbstractNum( NumPr.NumId).DocumentStatistics( NumPr.Lvl, Stats );
} }
......
...@@ -12,7 +12,8 @@ function ParaRun(Paragraph, bMathRun) ...@@ -12,7 +12,8 @@ function ParaRun(Paragraph, bMathRun)
this.Type = para_Run; // тип данного элемента this.Type = para_Run; // тип данного элемента
this.Paragraph = Paragraph; // Ссылка на параграф this.Paragraph = Paragraph; // Ссылка на параграф
this.Pr = new CTextPr(); // Текстовые настройки данного run this.Pr = new CTextPr(); // Текстовые настройки данного run
this.Content = []; // Содержимое данного run this.Content = []; // Содержимое данного run
this.State = new CParaRunState(); // Положение курсора и селекта в данного run this.State = new CParaRunState(); // Положение курсора и селекта в данного run
this.Selection = this.State.Selection; this.Selection = this.State.Selection;
this.CompiledPr = new CTextPr(); // Скомпилированные настройки this.CompiledPr = new CTextPr(); // Скомпилированные настройки
...@@ -3934,7 +3935,7 @@ ParaRun.prototype = ...@@ -3934,7 +3935,7 @@ ParaRun.prototype =
for ( var CurPos = StartPos; CurPos < EndPos; CurPos++ ) for ( var CurPos = StartPos; CurPos < EndPos; CurPos++ )
{ {
var Item = this.Content[CurPos]; var Item = this.Content[CurPos];
if ( !((para_Drawing === Item.Type && true !== Item.Is_Inline) || para_End === Item.Type || (para_NewLine === Item.Type && break_Line === Item.BreakType ) ) ) if ( !((para_Drawing === Item.Type && true !== Item.Is_Inline()) || para_End === Item.Type || (para_NewLine === Item.Type && break_Line === Item.BreakType ) ) )
LastPos = CurPos + 1; LastPos = CurPos + 1;
} }
...@@ -3962,7 +3963,7 @@ ParaRun.prototype = ...@@ -3962,7 +3963,7 @@ ParaRun.prototype =
for ( var CurPos = EndPos - 1; CurPos >= StartPos; CurPos-- ) for ( var CurPos = EndPos - 1; CurPos >= StartPos; CurPos-- )
{ {
var Item = this.Content[CurPos]; var Item = this.Content[CurPos];
if ( !(para_Drawing === Item.Type && true !== Item.Is_Inline) ) if ( !(para_Drawing === Item.Type && true !== Item.Is_Inline()) )
FirstPos = CurPos; FirstPos = CurPos;
} }
......
...@@ -6754,6 +6754,7 @@ CTable.prototype = ...@@ -6754,6 +6754,7 @@ CTable.prototype =
} }
this.Recalc_CompiledPr2(); this.Recalc_CompiledPr2();
this.Internal_ReIndexing();
break; break;
} }
...@@ -6777,6 +6778,7 @@ CTable.prototype = ...@@ -6777,6 +6778,7 @@ CTable.prototype =
} }
this.Recalc_CompiledPr2(); this.Recalc_CompiledPr2();
this.Internal_ReIndexing();
break; break;
} }
......
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