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

Исправлен баг с дублированием точки истории при вставке (баг 26844). Для...

Исправлен баг с дублированием точки истории при вставке (баг 26844). Для поправки данного бага пришлось убрать изменения связынные с правкой бага 26527, данный баг был поправлен по другому.

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@58976 954022d7-b5bf-4e40-9824-e11837661b57
parent 9cf16ade
...@@ -2258,6 +2258,7 @@ function Editor_Paste_Button(api) ...@@ -2258,6 +2258,7 @@ function Editor_Paste_Button(api)
document.body.style["-webkit-user-select"] = "none"; document.body.style["-webkit-user-select"] = "none";
History.Create_NewPoint(); History.Create_NewPoint();
editor.waitSave = true;
Editor_Paste(api, false); Editor_Paste(api, false);
return true; return true;
} }
...@@ -2267,6 +2268,7 @@ function Editor_Paste_Button(api) ...@@ -2267,6 +2268,7 @@ function Editor_Paste_Button(api)
if(ElemToSelect) if(ElemToSelect)
{ {
History.Create_NewPoint(); History.Create_NewPoint();
editor.waitSave = true;
Editor_Paste_Exec(api, ElemToSelect); Editor_Paste_Exec(api, ElemToSelect);
} }
else else
......
...@@ -9639,7 +9639,10 @@ CDocument.prototype = ...@@ -9639,7 +9639,10 @@ CDocument.prototype =
{ {
if (!window.USER_AGENT_SAFARI_MACOS) if (!window.USER_AGENT_SAFARI_MACOS)
{ {
this.Create_NewHistoryPoint();
window.GlobalPasteFlag = true; window.GlobalPasteFlag = true;
editor.waitSave = true;
Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true); Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true);
//не возвращаем true чтобы не было preventDefault //не возвращаем true чтобы не было preventDefault
} }
...@@ -9647,8 +9650,11 @@ CDocument.prototype = ...@@ -9647,8 +9650,11 @@ CDocument.prototype =
{ {
if (0 === window.GlobalPasteFlagCounter) if (0 === window.GlobalPasteFlagCounter)
{ {
this.Create_NewHistoryPoint();
SafariIntervalFocus(); SafariIntervalFocus();
window.GlobalPasteFlag = true; window.GlobalPasteFlag = true;
editor.waitSave = true;
Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true); Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true);
//не возвращаем true чтобы не было preventDefault //не возвращаем true чтобы не было preventDefault
} }
...@@ -9911,6 +9917,7 @@ CDocument.prototype = ...@@ -9911,6 +9917,7 @@ CDocument.prototype =
this.Create_NewHistoryPoint(); this.Create_NewHistoryPoint();
window.GlobalPasteFlag = true; window.GlobalPasteFlag = true;
editor.waitSave = true;
Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true); Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true);
//не возвращаем true чтобы не было preventDefault //не возвращаем true чтобы не было preventDefault
} }
...@@ -9922,6 +9929,7 @@ CDocument.prototype = ...@@ -9922,6 +9929,7 @@ CDocument.prototype =
SafariIntervalFocus(); SafariIntervalFocus();
window.GlobalPasteFlag = true; window.GlobalPasteFlag = true;
editor.waitSave = true;
Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true); Editor_Paste(this.DrawingDocument.m_oWordControl.m_oApi, true);
//не возвращаем true чтобы не было preventDefault //не возвращаем true чтобы не было preventDefault
} }
......
...@@ -593,7 +593,8 @@ function asc_docs_api(name) ...@@ -593,7 +593,8 @@ function asc_docs_api(name)
this.isSaveFonts_Images = false; this.isSaveFonts_Images = false;
this.saveImageMap = null; this.saveImageMap = null;
this.canSave = true;//Флаг нужен чтобы не происходило сохранение пока не завершится предыдущее сохранение this.canSave = true;//Флаг нужен чтобы не происходило сохранение пока не завершится предыдущее сохранение
this.waitSave = false; // Отложенное сохранение, происходит во время долгих операций
this.isLoadImagesCustom = false; this.isLoadImagesCustom = false;
this.loadCustomImageMap = null; this.loadCustomImageMap = null;
...@@ -2726,7 +2727,7 @@ asc_docs_api.prototype.Share = function(){ ...@@ -2726,7 +2727,7 @@ asc_docs_api.prototype.Share = function(){
} }
function OnSave_Callback(e) { function OnSave_Callback(e) {
if (false == e["saveLock"]) { if (false == e["saveLock"] && false === editor.waitSave) {
editor.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save); editor.sync_StartAction(c_oAscAsyncActionType.Information, c_oAscAsyncAction.Save);
if (c_oAscCollaborativeMarksShowType.LastChanges === editor.CollaborativeMarksShowType) if (c_oAscCollaborativeMarksShowType.LastChanges === editor.CollaborativeMarksShowType)
...@@ -6351,7 +6352,7 @@ asc_docs_api.prototype.asyncImagesDocumentEndLoaded = function() ...@@ -6351,7 +6352,7 @@ asc_docs_api.prototype.asyncImagesDocumentEndLoaded = function()
{ {
this.isPasteFonts_Images = false; this.isPasteFonts_Images = false;
this.pasteImageMap = null; this.pasteImageMap = null;
History.Create_NewPoint(); this.waitSave = false;
this.pasteCallback(); this.pasteCallback();
window.GlobalPasteFlag = false; window.GlobalPasteFlag = false;
window.GlobalPasteFlagCounter = 0; window.GlobalPasteFlagCounter = 0;
...@@ -6577,7 +6578,7 @@ asc_docs_api.prototype.pre_Paste = function(_fonts, _images, callback) ...@@ -6577,7 +6578,7 @@ asc_docs_api.prototype.pre_Paste = function(_fonts, _images, callback)
{ {
// никаких евентов. ничего грузить не нужно. сделано для сафари под макОс. // никаких евентов. ничего грузить не нужно. сделано для сафари под макОс.
// там при LongActions теряется фокус и вставляются пробелы // там при LongActions теряется фокус и вставляются пробелы
History.Create_NewPoint(); this.waitSave = false;
this.pasteCallback(); this.pasteCallback();
window.GlobalPasteFlag = false; window.GlobalPasteFlag = false;
window.GlobalPasteFlagCounter = 0; window.GlobalPasteFlagCounter = 0;
......
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