Chrome version: Version 34.0.1847.137 m
Windows 7
I have disabled chrome plugins.
{{{
function Load(ID) {
ShowEditorDialog();
$('#Dialog').append(loader);
CKEDITOR.instances['CkEditorTxt'].setData("", function () {
PostAsyncAjax("GetData",
{ 'ID': ID},
function (data) {
var Dto = data.d;
CKEDITOR.instances['CkEditorTxt'].setData(Dto.HtmlContent);
$('#Loader').remove();
}
);
});
return false;
}
}}}
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986>
CKEditor <http://ckeditor.com/>
The text editor for the Internet
* keywords: setData, ckeditor =>
* status: new => pending
* version: 4.4.0 =>
Comment:
Could you simplify the test case so we can run it on our machines? It's
impossible to reproduce your TC now because it contains too much of
custom, hidden logic.
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:1>
Comment (by sashkanz):
Here is simplified snippet without hidden logic, PostAsyncAjax is just a
functions that returns html...
{{{
function Load(ID) {
CKEDITOR.instances['CkEditorTxt'].setData("", function () {
PostAsyncAjax("GetData",
{ 'ID': ID},
function (data) {
var Dto = data.d;
CKEDITOR.instances['CkEditorTxt'].setData(Dto.HtmlContent);
}
);
});
return false;
}
}}}
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:2>
Comment (by Reinmar):
Does it call callback synchronously or asynchronously?
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:3>
Comment (by sashkanz):
Asynchronously, I don't think it matters, Every time I debug it I can see
that data.d does get html.
Also when the bug happens ckeditor doesn't load any content - then I'm not
able to type anything until I click view source button - if I do click it
then content does loads.
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:4>
Comment (by Reinmar):
It may not be crucial for your code, but it's crucial for CKEditor,
because you call setData inside dataReady's listener - the correct timing
is very important. Anyway, thanks for details, we'll verify it.
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:5>
Comment (by sashkanz):
Just tested it with synchronously call and got same result.
Thank you.
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:6>
Comment (by sashkanz):
I'm able to reproduce it also with a very simplified snippet
Repro:
1. Page refresh
2. open Chrome developer tool (F12) (if I use Chrome Version 30.0.1599.101
m then the bug happen without opening web developer tool.)
3. execute function Load(ID)
{{{
function Load(ID) {
$('#ckEditorDialog').dialog('open');
CKEDITOR.instances['CkEditorTxt'].setData("test");
return false;
}
}}}
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:7>
Comment (by Reinmar):
I don't have time to check this right now, but I think that your code is
incorrect. When you open a dialog you need to initialize editor
afterwards. I guess you use classic editor which uses an iframe - please
note that iframe does not work if it's detached from DOM. So when you use
CKEditor with dialogs you need to take special precautions against this
problem - initialize editor when your dialog is open and destroy before
closing it.
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:8>
* status: pending => closed
* resolution: => expired
--
Ticket URL: <http://dev.ckeditor.com/ticket/11986#comment:9>