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

Исправлен баг с drag-n-drop в параграф, который удаляется самим этим действием...

Исправлен баг с drag-n-drop в параграф, который удаляется самим этим действием (баг 27412). Исправлен баг в поиске позиции в ране (баг 27411).

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@59463 954022d7-b5bf-4e40-9824-e11837661b57
parent ca57f83a
...@@ -8602,6 +8602,13 @@ CDocument.prototype = ...@@ -8602,6 +8602,13 @@ CDocument.prototype =
this.Remove(1, false, false, false); this.Remove(1, false, false, false);
this.TurnOn_Recalculate(false); this.TurnOn_Recalculate(false);
this.TurnOn_InterfaceEvents(false); this.TurnOn_InterfaceEvents(false);
if (false === Para.Is_UseInDocument())
{
this.Document_Undo();
History.Clear_Redo();
return;
}
} }
this.Selection_Remove(); this.Selection_Remove();
......
...@@ -3783,7 +3783,8 @@ ParaRun.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine, ...@@ -3783,7 +3783,8 @@ ParaRun.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine,
SearchPos.CurX += TempDx; SearchPos.CurX += TempDx;
// Заглушка для знака параграфа и конца строки // Заглушка для знака параграфа и конца строки
if (Math.abs(SearchPos.X - SearchPos.CurX) < SearchPos.DiffX && !bNotUpdate) Diff = SearchPos.X - SearchPos.CurX;
if ((Math.abs( Diff ) < SearchPos.DiffX + 0.001 && (SearchPos.CenterMode || SearchPos.X > SearchPos.CurX)) && !bNotUpdate)
{ {
if ( para_End === ItemType ) if ( para_End === ItemType )
{ {
...@@ -3815,7 +3816,7 @@ ParaRun.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine, ...@@ -3815,7 +3816,7 @@ ParaRun.prototype.Get_ParaContentPosByXY = function(SearchPos, Depth, _CurLine,
if (this.Type == para_Math_Run) // не только для пустых Run, но и для проверки на конец Run (т.к. Diff не обновляется) if (this.Type == para_Math_Run) // не только для пустых Run, но и для проверки на конец Run (т.к. Diff не обновляется)
{ {
var Diff = SearchPos.X - SearchPos.CurX; var Diff = SearchPos.X - SearchPos.CurX;
if (Math.abs( Diff ) < SearchPos.DiffX + 0.001 && !bNotUpdate) if ((Math.abs( Diff ) < SearchPos.DiffX + 0.001 && (SearchPos.CenterMode || SearchPos.X > SearchPos.CurX)) && !bNotUpdate)
{ {
SearchPos.DiffX = Math.abs( Diff ); SearchPos.DiffX = Math.abs( Diff );
SearchPos.Pos.Update( CurPos, Depth ); SearchPos.Pos.Update( CurPos, Depth );
......
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