﻿__group__	ticket	summary	component	milestone	owner	status	created	version	_changetime	_description	_reporter
Bug	11227	dialog.validate.functions bugs	UI : Dialogs			confirmed	2013-11-27T20:37:27Z	4.0	2015-06-30T07:49:51Z	"The definition of the function returned from dialog.validate.functions suffers from two bugs.

1. When obtaining the ""value"" from the arguments, the inner function should be referencing its own arguments, not those of the outer function.
2. When calling functions, it should be using ""call"" and passing ""this"" so that other validation functions passed as arguments will have the item as ""this"" as they expect."	Michael Johnson
Bug	9476	CKEDITOR.dialog#disableButton not working	General			confirmed	2012-10-19T15:57:49Z	3.0	2012-11-09T14:59:09Z	"It is still possible to click on a dialog button after having disabling it with the disableButton method in CKEDITOR.dialog  (http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.dialog.html#disableButton).

When ""disableButton"" is called, the property ""disabled"" is correctly set to true and a css class is added to the button. But if you click on the button, there's no check to see if it's disabled and the event is still fired.

I think this could be fixed by modifying the code in _source/plugin/dialogui/plugin.js and adding a check for disabled before the onClick is applied.

Like this :

(line 949)

{{{
onClick : function( dialog, func )
{
    this.on( 'click', function()
    {
        if(!this._.disabled)
        {
            // Some browsers (Chrome, IE8, IE7 compat mode) don't move
            // focus to clicked button. Force this.
            this.getElement().focus();
            func.apply( this, arguments );
        }
    });
}
}}}


By the way, the css class (cke_disabled) added to the button when it's disabled does nothing and the button doesn't look disabled.
"	Jeff Fournier
Bug	9227	OnTextChanged event required for CKEditor ASP.NET control doesn't fire	Server : ASP.Net			confirmed	2012-08-27T09:48:49Z	3.6.4	2014-01-10T10:59:22Z	"The event is fired in OnPreRender().
This is not the proper place to fire this event.

It should be fired in IPostBackDataHandler.RaisePostDataChangedEvent().

In attachment you can find a pach "	Koen Van Exem
Bug	9182	Indent does not recognize correct margin when expressed other than px	General			confirmed	2012-07-30T18:20:40Z	3.0	2012-08-20T13:55:51Z	"When I have a paragraph with margin-left:3in (for example) and click on increase indent button, ckeditor change margin-left to 43px.

Indent plugin get only the integer part ignoring unit.

To correct I've changed _source\plugins\indent\plugin.js adding CKEDITOR.tools.convertToPx to getStyle calls inside parseInt."	Alvaro
Bug	9161	[IE]: SCAYT affecting IsDirty	UI : Spell Checker			confirmed	2012-07-19T09:56:58Z	3.0	2014-03-26T16:29:42Z	"This is the continuation of #4688

WebSpellChecker team has been reported CheckDirty functionality doesn't work correctly after replacing misspellings with correct word. While preparing solution we discovered additional problem in IE. Here are steps to reproduce:

   1. Open http://ckeditor.com/demo in any IE
   2. Enable SCAYT and wait for all misspellings would be underlined
   3. Change editor's mode to <Source> then to <WYSIWYG>
   4. Run in console CKEDITOR.instances.editor1.checkDirty() 

NOTE: For the above steps you can use api sample

Expected result: checkDirty=false[[BR]]
Actual result: checkDirty=true 

Problem has been reproducible in all versions of IE from CKEditor 3.0"	Jakub Ś
Bug	9020	"""vertical split a cell"" works error when the row contains ""colpan>1"" cells"	Core : Tables			confirmed	2012-06-07T06:06:45Z	3.1	2016-05-13T08:48:28Z	"Follow this simple steps:
1. create a table with 3 rows, 3 columns.
2. merge the first two cells in the first row.
3. veritical split the last cell(the cell after the merged cell) in the first row. 
The table structure becomes messy after the third step.
[[BR]]
The bug is in ""tabletools/plugin.js"", cellInRow function. Developer should avoid adding duplicate cells, similar with ""cellInCol"".
"	tengshengbo
Bug	8967	obvious bug in getEnclosedNode	Core : Selection		Jakub Ś	assigned	2012-05-15T08:52:02Z	3.1.1	2013-10-25T13:13:30Z	"For example:

{{{
<div>

^
<bookmark/>
<span id='x'/>
<bookmark/>
^

}}}

getEnclosedNode should return span whose id is ""x"".

for detail see patch in attachement.

"	yiminghe
Bug	8832	Stylesheet parser error if file not on cache	General		Alfonso Martínez de Lizarrondo	review	2012-03-25T10:05:01Z	3.6	2012-07-09T07:24:59Z	"#7784 didn't fix the problem correctly

Reproduction steps:

 1. Clear the cache
 2. Open the console
 3. Load http://nightly.ckeditor.com/latest/ckeditor/_samples/stylesheetparser.html
 4. See the error as reported originally.

Proposed solution:

Revert [6867] and use http://dev.ckeditor.com/attachment/ticket/7784/7784_2.patch as it wasn't rejected because it failed but instead based on coding style. Or rewrite it anyway that you like and test that now it's correctly fixed.
"	Alfonso Martínez de Lizarrondo
Bug	8550	[ALL] inconsistent cursor about table	Core : Selection			confirmed	2011-11-26T11:53:44Z	3.5.4	2011-11-29T13:08:49Z	"1. open ckeditor at trunk in ie (ie6 or native ie8) and switch to source mode 
2. input the following source:


{{{
<table border=""0"" style=""width: 100px"" title=""tbdescguide"">
	<tbody>
		<tr>
			<td>
				<p>
					&nbsp;士大夫士大夫都</p>
			</td>
		</tr>
		<tr>
			<td>
				<p>
					12345678</p>
			</td>
		</tr>
	</tbody>
</table>

}}}


3.switch to wysiwyg mode and click the point in pic1(see attachment)

4.now the cursor is after '8' (see pic2) , then click the point in pic1 again (see attachment)  

5.now the cursor is after table ! (it's always what i want , see pic3)


expected: 

same click same cursor position (after table , see pic3)

actual result:

first click the cursor is after '8' (see pic2) ,second click the cursor is after table (see pic3)


PS : i also provide a patch in attachment , it will solve this problem , but i do not know its side effect."	yiminghe
Bug	8518	Text around editor highlights during resize event	General			confirmed	2011-11-09T11:45:30Z	3.4.3	2012-01-18T12:22:38Z	"Bug reported by @mrfr0g

We've determined that during the resize event on the editor, the text
around the editor is allowed to be selected. In some cases, this would
cause large blocks of text to be selected and appear as gray or blue
(depending on focus). 

1. Configure CKEDITOR to only allow vertical resizing
config.resize_dir = 'vertical';
2. Create an editor with a paragraph of text below it.
3. Resize the editor vertically, then move your mouse horizontally.
The text below the editor should be selected.

Thes can get selected in IE9, Chromw and Safari. This has been reproducible from CKEditor 3.4.3
"	Jakub Ś
Bug	8446	IE8 - Unable to place cursor after image	General			confirmed	2011-10-10T20:16:28Z	3.0	2013-08-29T08:05:25Z	"Go to CKE demo.
Ctrl-A/Ctrl-X
Insert an image.
Click on the image.
Now attempt to place the cursor after the image to the right or bottom.  You are unable to, and at this point, one cannot add anything after the image.

The same thing happens for iframes which uses image fake element."	Lynne Kues
Bug	8386	IE: When copying and pasting a table, an empty <p> is appended on output	Core : Pasting			confirmed	2011-09-16T06:45:24Z	3.0	2012-02-17T10:03:04Z	"Steps to reproduce:

1. Open CKEDITOR.
2. Create a table.
3. Highlight the table with ""Select All"" button and click ""Copy"" icon.
4. Click ""New Page"" icon.
5. Click ""Paste"" icon.
6. Click ""Source""
   -> HTML source is displayed, there is ""<p> &nbsp;</p>"".
7. Click ""Source""
   -> HTML page is displayed, line break is inserted before the table.

Bug is present since 3.4.2 i believe. "	naresh.sivaraman
Bug	8385	Problem when switching between multiple instances of ckeditor	Core : Selection			confirmed	2011-09-16T06:39:33Z	3.5.3	2012-03-01T08:41:29Z	"Script error is displayed when switching between multiple instances of ckeditor in IE7.

Steps to reproduce:
1.create multiple ck-editor instances
2.click on the other ckeditor instances other than the current one in focus.

'''Expected Result:'''
Editor should be displayed
'''Actual Result:'''
Script error is displayed

""'''C.getSelection() is null or not an object'''""



"	ashwin
Bug	8288	Internet Explorer will not run blank javascript function as per documentation	General			confirmed	2011-08-25T00:53:04Z	3.1.1	2013-04-18T08:58:47Z	"As per: [http://docs.cksource.com/CKEditor_3.x/Developers_Guide/File_Browser_%28Uploader%29/Custom_File_Browser#Example_4] 

Example 4 works fine in all browsers I have tested except IE.  Both IE 8 and 9 will not run the additional javascript called, returning only the URL of the image."	Keven
Bug	7921	editor.mode always returns empty string	General			confirmed	2011-05-26T09:35:44Z	3.0	2012-02-15T14:24:29Z	"To solve the problem, I have to modify the file plugins/editingblock/plugin.js.
Is this OK ?

New code : (1 line disabled, 1 line added)

CKEDITOR.editor.prototype.setMode = function( mode )
{
   this.fire( 'beforeSetMode', { newMode : mode } );

   var data,
   holderElement = this.getThemeSpace( 'contents' ),
   isDirty = this.checkDirty();

   // Unload the previous mode.
   if ( this.mode )
   {
      if ( mode == this.mode )
         return;

      this.fire( 'beforeModeUnload' );

      var currentMode = getMode( this );
      data = currentMode.getData();
      currentMode.unload( holderElement );
      //this.mode = '';    //LINE HAS BEEN DISABLED
   }

   holderElement.setHtml( '' );

   // Load required mode.
   var modeEditor = getMode( this, mode );
   if ( !modeEditor )
      throw '[CKEDITOR.editor.setMode] Unknown mode ""' + mode + '"".';

   if ( !isDirty )
   {
      this.on( 'mode', function()
      {
         this.resetDirty();
         this.removeListener( 'mode', arguments.callee );
      });
   }

   modeEditor.load( holderElement, ( typeof data ) != 'string'  ? this.getData() : data);

   // FOLLOWING LINE HAS BEEN ADDED
   this.mode = (this.mode == 'wysiwyg') ? 'source' : 'wysiwyg';

};"	daveVW
Bug	7561	IE 'editor.getSelection()' is null or not an object	Core : Selection		Garry Yao	review_failed	2011-04-08T18:41:18Z	3.5.2	2012-11-06T10:30:45Z	"This error is sometimes thrown in IE. It happens onClick and I've tracked it down to the following bit of code.

plugins/selection/plugin.js[[BR]]

{{{
Ln #215: editor.getSelection().getRanges()[ 0 ].select();
}}}

According to the documentation, and my observations, editor.getSelection() can return null. This statement should be wrapped in a conditional block to avoid calling .getRanges on a null object.

{{{
if((selection = editor.getSelection()) != null) {
   selection.getRanges()[ 0 ].select();
}
}}}

"	Michael Camden
Bug	7523	IE Can't Drag and Drop text outside of paragraph	Core : Pasting			confirmed	2011-04-05T17:19:13Z	3.0	2011-06-20T21:32:45Z	"I'm unable to drag and drop text outside of any paragraph elements in IE.

Steps to reproduce:[[BR]]
1. In the ckeditor demo, clear out all text leaving only a single paragraph.[[BR]]
2. Select some text from a word document, and drag it to the editor.[[BR]]
3. Anywhere below the first line the mouse cursor is crossed out, and a drop is disallowed.[[BR]]

Expected result:[[BR]]
Like in other browsers you should be able to drop text anywhere in the editor, regardless of if there is a paragraph tag there or not."	Michael Camden
Bug	7452	bodyClass and bodyId not applied to combobox (e.g. styles or format)	Core : Styles			confirmed	2011-03-29T09:27:17Z		2016-10-17T10:34:34Z	"When the styles combobox is created, it loads the stylesheet specified in config.contentsCss. However, the body element in the combobox iframe doesn't have the class or ID specified in config.bodyClass/bodyId. As a result the styles previews aren't shown properly as my CSS assumes that the bodyClass will be present.

This is a regression from FCKeditor 2.x."	Paul Stone
Bug	7230	IE quirks: Dialog borders do not resize properly when show/hide tab bar	UI : Dialogs			confirmed	2011-02-23T18:55:38Z	3.5	2011-05-16T18:03:14Z	"When the tab bar is being added or removed for a dialog, the resize event is not fired.  The resize event is necessary for IE6 or IE quirks mode, since the height of the left and right borders must be adjusted.  This can result either in a gap between the top corner borders and the vertical borders on the left and right sides, or the left and right borders extend up above the dialog's title bar.  See attached screenshot.

To reproduce:[[BR]]
1. Create a dialog with two pages. It should display properly, with the tab bar showing.[[BR]]
2. Hide one of the pages. The tab bar should disappear and you should be able to see the left and right borders extending up above the title bar, as in the screenshot.

This occurs in IE quirks mode...I reproduced across IE6, 7, 8, and 9 with the doctype: 
{{{
<!DOCTYPE html PUBLIC ""-//W3C//DTD HTML 3.2 Final//EN"">
}}}

A proposed patch is attached. I've changed dialog's resize method to include an optional third parameter, ""force,"" which forces the dialog to fire the resize event even if the actual content area size hasn't changed.  Then I call resize from updateStyle, if (and only if) the tab bar visibility has changed AND we're in IE."	sadlerjw
Bug	7227	Dialog: showPage increments pageCount even if page is already showing	UI : Dialogs			confirmed	2011-02-22T19:32:25Z	3.0	2011-07-06T14:40:03Z	"In the Dialog plugin, callling showPage on a page that is already visible increments the pageCount, meaning that when all but one page are removed, the tab bar will still be visible. To reproduce:

1. Create and show a dialog with two pages; both shown by default.  Let's call them page1 and page2.[[BR]]
2. Call showPage( 'page2' )[[BR]]
3. Call hidePage( 'page1' )[[BR]]


Now only page2 will be visible - but the tab bar will still be showing, with the single tab ""page2"".  Intended behaviour (presumably) is to have tab bar disappear when only one page is visible.

This can be fixed by adding a check to tab.isVisible() in showPage.

Proposed patch included."	sadlerjw
Bug	7175	IE: Drop-downs closed immediately after show	UI : Floating Panel			confirmed	2011-02-14T12:47:35Z	3.5.1	2015-03-16T16:32:39Z	"Steps to reproduce:
 1. Only one tab must be opened in IE.
 2. Place editor inside a frame which is inside a modal dialog window (attached files ""Page1.html"" and ""Page2.html"" reproduce than if placed inside ""\ckeditor\_samples folder"").
 3. Open page with editor (""Page1.html"").
 4. Click on ""Font"" drop-down.
 5. Click on ""Size"" drop-down (all further clicks on ""Font"", ""Size"", ""Format"", ""Background Color"" and ""Text color"" drop-downs will result showing and immediate hiding of drop-down).

Browser name and OS :
Checked on IE8 on Windows 7 and IE6 on Windows XP."	Kenrath
Bug	7118	SCAYT: options dialog is not translated	UI : Spell Checker			confirmed	2011-02-02T16:07:51Z	3.1	2011-02-24T12:32:42Z	"CKEditor language files contain entries for the scayt plugin, where options from the SCAYT dialog are translated, e.g. in German language file there is:

{{{
	scayt :
	{
		title			: 'Rechtschreibprüfung während der Texteingabe (SCAYT)',
		opera_title		: 'Nicht von Opera unterstützt',
		enable			: 'SCAYT einschalten',
		disable			: 'SCAYT ausschalten',
		about			: 'Über SCAYT',
		toggle			: 'SCAYT umschalten',
		options			: 'Optionen',
		langs			: 'Sprachen',
		moreSuggestions	: 'Mehr Vorschläge',
		ignore			: 'Ignorieren',
		ignoreAll		: 'Alle ignorieren',
		addWord			: 'Wort hinzufügen',
		emptyDic		: 'Wörterbuchname sollte leer sein.',

		optionsTab		: 'Optionen',
		allCaps			: 'Groß geschriebenen Wörter ignorieren',
		ignoreDomainNames : 'Domain-Namen ignorieren',
		// ...
}}}

However if you check the options dialog, strings from the language file are not used (for example ignoreDomainNames). See the attached screenshot."	Wiktor Walc
Bug	7089	[IE] Error when expand toolbar if height of editor is not enough.	UI : Toolbar			confirmed	2011-01-28T13:51:23Z	3.0	2011-07-06T12:09:21Z	" 1. Collapse toolbar.
 2. The height of the editor is set to 15px.[[BR]]
 ex. {{{ ckeditor.resize('', 15, true); }}}
 3. Expand toolbar.
 4. JavaScript error (invalid argument)

The cause is here.
https://dev.ckeditor.com/browser/CKEditor/trunk/_source/plugins/toolbar/plugin.js#L326
{{{
contents.setStyle( 'height', ( contentHeight - dy ) + 'px' );
}}}
I think that it only has to prevent height from reaching a minus value.
Like this.
https://dev.ckeditor.com/browser/CKEditor/trunk/_source/themes/default/theme.js#L325
{{{
contents.setStyle( 'height', Math.max( height - delta, 0 ) + 'px' ); 
}}}"	uchida_t
Bug	7067	about getIndex method  performance	Performance			confirmed	2011-01-27T06:40:41Z		2011-02-15T08:44:35Z	"When the getIndex method is called, the getNext will be invoked by getIndex, if an element node contains too many text nodes, the getNext method will be called too many times, that will cause a performance problem. My suggest is using childNodes property, according to my test, using childNodes is nearly two times faster than calling getNext method. Here's my code snippet:

getIndex : function( normalized ) {
        var parent = this.getParent(),
                currentIndex = -1,
                node;
        if ( parent ) {

            for(var i=0,childs=parent.$.childNodes;node=childs[i];i++){
                if(node.nodeType == 1 || !(normalized && node.previousSibling && node.previousSibling.nodeType == baidu.editor.dom.NODE_TEXT))
                    currentIndex++;
                if(node == this.$)break;
            }
        }
        return currentIndex;
    },"	campaign
Bug	6977	about override in styles	Core : Styles			confirmed	2011-01-17T13:56:12Z	3.0	2013-10-15T08:51:39Z	"steps:
1.open www.ckeditor.com/demo
2.switch to source mode,input html:

{{{
<p>
	12345678<font style=""background-color: rgb(130, 130, 130);"">xyzabcd</font>9012345678</p>

}}}

3.switch to wysiwyg mode and place cursor between 'y' and 'z', then click background button , select '自动'

4. expected:     

'xyzabcd' does not have background-color.

 actual result :

unchanged

5.select '8xyzabcd9' ,then click background button ,select red color

6. expected :

generate code :

{{{
<p>
	1234567<span style=""background-color: rgb(255, 0, 0);"">8xyzabcd9</span>012345678</p>
}}}

actual code (too bloated):

{{{
<p>
	1234567<span style=""background-color: rgb(255, 0, 0);"">8</span><font style=""background-color: rgb(130, 130, 130);""><span style=""background-color: rgb(255, 0, 0);"">xyzabcd</span></font><span style=""background-color: rgb(255, 0, 0);"">9</span>012345678</p>
}}}


ps:in trunk ,result is error :

{{{
<p>
	1234567<span style=""background-color: rgb(255, 0, 0);"">8<font style=""background-color: rgb(130, 130, 130);"">xyzabcd</font>9</span>012345678</p>
}}} 


ps2: i provide a patch for trunk, add consideration about override element's style"	yiminghe
Bug	6803	Image dialog error with border of zero	UI : Dialogs			confirmed	2010-12-08T18:38:09Z	3.0.2	2011-05-20T10:57:56Z	"If you set the border property to zero (meaning no border) for an image in the image dialog, it will not save this value. This has been ongoing for as long as I can remember with the new CKeditor.

this is a hack fix for plugins/image/dialog/image.js:817


{{{
if ( type == IMAGE )
{
var value,
	borderStyle = element.getStyle( 'border-width' );
borderStyle = borderStyle && borderStyle.match( /^(\d+px)(?: \1 \1 \1)?$/ );
value = borderStyle && parseInt( borderStyle[ 1 ], 10 );
isNaN ( parseInt( value, 10 ) ) && ( value = element.getAttribute( 'border' ) );
//this.setValue( value );
if (value == 0)
{
   this.setValue('0');
}
else
{
   this.setValue(value);
}
}
}}}
"	pircio
Bug	6744	Range: checkStartOfBlock not forgiving bogus node	Core : Selection			confirmed	2010-11-30T14:23:41Z	3.0	2010-12-28T10:18:11Z	"'''checkStartOfBlock''' returns ""'''false'''"" for the following case:

{{{
<p><br>^</p>
}}}

From the code perspective the cursor might not be at the start of the block, but visually it is.

Pertains to '''non-IE''' browsers."	Arne
Bug	6709	insertHtml: comments must also be protected	General			confirmed	2010-11-22T12:48:41Z		2015-09-03T14:33:31Z	"In IE, when setting innerHTML, any starting <!----> comments are removed. 
Test: insertHtml('<!--comment-->foo')
Affected: dataProcessor.toHtml
Fix: prefixing a dummy <foo:bar /> tag keeps comments and whitespace in place, remove when converting to data.
"	Dinu
Bug	6397	output_html sample is inconsistent between browsers	Core : Output Data			confirmed	2010-10-01T14:36:15Z	3.4.1	2011-02-16T10:24:57Z	"Reproduce:
  1. Open _samples/output_html.html
  2. Click ""Align right""
  3. Click ""Source"" (or submit)

Result:[[BR]]
Firefox 3.6.10:[[BR]]
p align=""right""[[BR]]
Chrome 6.0.472.63:[[BR]]
p align=""right"" style="" ""[[BR]]
IE 8, Opera 10.62[[BR]]
p style=""text-align: right""
"	Konstantin Pelepelin
Bug	6317	[Safari] Check Spelling dialog - JavaScript warnings	UI : Spell Checker			confirmed	2010-09-16T11:24:51Z	3.2.2	2011-07-04T12:21:25Z	"When opening the ""Check Spelling"" dialog, JavaScript errors appear in the error console:

{{{
Unmatched </frame> encountered.  Ignoring tag.
apps/ckeditor/3.4/plugins/wsc/dialogs/tmpFrameset.html:48
Unmatched </frame> encountered.  Ignoring tag.
apps/ckeditor/3.4/plugins/wsc/dialogs/tmpFrameset.html:49
Unmatched </frame> encountered.  Ignoring tag.
apps/ckeditor/3.4/plugins/wsc/dialogs/tmpFrameset.html:50
Unmatched </frame> encountered.  Ignoring tag.
2s1.spellchecker.net/spellcheck3/script/ssrv.cgi:192
Unmatched </span> encountered.  Ignoring tag.
s1.spellchecker.net/spellcheck3/script/ssrv.cgi:361
Unmatched </font> encountered.  Ignoring tag.
}}}

Perhaps it's something worth to check... the whole spell checking process ended successfully though."	Wiktor Walc
Bug	6211	SCAYT context menu doesn't show on right mouse click in FF3 on Mac	UI : Spell Checker			confirmed	2010-08-26T15:26:19Z	3.0	2011-06-28T12:26:28Z	When using common PC mouse with Apple Mac right mouse click on underlined word doesn't show SCAYT context menu.	WebSpellChecker.net
Bug	6203	Uncaught exception: TypeError: Cannot convert 'K' to object on editor.destroy();	General			confirmed	2010-08-25T18:44:39Z	3.4	2010-12-06T08:28:15Z	"I receive the following error when trying to destroy a CKeditor 3.4 instance using a plugin :

{{{
Uncaught exception: TypeError: Cannot convert 'K' to object
Error thrown at line 92, column 1741 in <anonymous function: getSnapshotData>():
    return K.getFrameDocument().getBody().getHtml();
called from line 114, column 4746 in <anonymous function: init>(o):
    o.data=l(n).getSnapshotData();
called via Function.prototype.call() from line 6, column 3258 in <anonymous function: on>(o, p, q, r):
    var s={name:d,sender:this,editor:o,data:p,listenerData:g,stop:q,cancel:r,removeListener:function(){l.removeListener(d,e);}};
called via Function.prototype.call() from line 6, column 4027 in <anonymous function: fire>(h, i, j):
    d=f=false;
called via Function.prototype.call() from unknown location in <anonymous function: fire>(b, c):
    /* no source available */
called from line 24, column 4875 in <anonymous function: getSnapshot>():
    var l=this.fire('getSnapshot');
called from line 87, column 1760 in <anonymous function: j.undo.Image>(r):
    var s=r.getSnapshot(),t=s&&r.getSelection();
called from line 88, column 831 in <anonymous function: save>(r, s, t):
    s=new l(v.editor);
called from line 87, column 277 in v(w):
    s.save();
called via Function.prototype.call() from line 6, column 3258 in <anonymous function: on>(o, p, q, r):
    var s={name:d,sender:this,editor:o,data:p,listenerData:g,stop:q,cancel:r,removeListener:function(){l.removeListener(d,e);}};
}}}

I guess that CKeditor's snapshot attempt is being fired after the editor has been destroyed?
I have attached a small test plugin to make it easy to reproduce.
The error was caught using Opera. The editor does destroy but the error message means not cleanly at a guess."	Tony
Bug	6119	"Web Spell Checker - ""finish checking"" takes ages to finish"	UI : Spell Checker			confirmed	2010-08-09T12:58:23Z		2011-11-29T14:20:00Z	"When having a larger document, the SpellChecker dialog becomes useless. I have tried editing the following document in CKEditor:

http://en.wikipedia.org/w/index.php?title=Black_hole&printable=yes

and after opening the ""SpellChecker"" dialog (with the ""Check Spelling"" button), after I clicked ""Finish Checking"" button inside of the dialog, it didn't close in a reasonable amount of time (it took almost 9 minutes, I have pretty fast internet connection). I have tested it in IE8.

To reproduce load the attached HTML source and use WSC.

I have no idea how spell checker works, but it looks like the problem is that the data is sent in a really small chunks, thus checking the whole document requires hundreds of HTTP requests.

There is one more thing that I do not understand here: I have  pressed the ""Check Spelling"" button, '''I did not change anything''' in the dialog and just pressed the ""Finish Checking"" button. Why is it taking so long if I did not change the document at all?

If it really has to take a lot of time, we could at least display an estimated time required to finish processing, because it is definitely not obvious that this operation may take so long."	Wiktor Walc
Bug	6076	[IE Quirks] Dialogs are not wide enough for their contents / Templates Dialog	UI : Dialogs			confirmed	2010-07-30T13:26:17Z	3.4.1	2010-08-13T08:47:52Z	"I've build a couple custom plugins now and keep running into the problem that the windows never seem to stretch to accomodate the content. Thus I have to very carefully set the minWidth correctly in the dialog definition.

I thought this was my fault until I came to the templates dialog. In SVN, the templates container is also not wide enough for the contents. To replicate, pop open IE in quirks and open the templates dialog.

There are two possible fixes for this (or both):
1) Define the templates dialog as being bigger
2) Rollback #4863 - if you change dialog.css .cke_skin_kama .cke_browser_iequirks .cke_dialog_page_contents and set position = relative (or just remove it)...the dialogs will accomodate the content better.

There might be another fix which is making the templates scroll contents better styled, because right now it looks like there is excessive whitespace in there serving no purpose. But even when I managed to make that box smaller, the intro text above it still runs over. Thoughts?"	Charlie
Bug	5854	SCAYT's class apears in the body tag during save operation	UI : Spell Checker			confirmed	2010-06-17T14:04:21Z	3.4.1	2010-12-15T10:08:05Z	"1. Set option CKEDITOR.config.fullpage=""true"" for the sample page.[[BR]]

2. Load the sample page.[[BR]]

3. Click on the ""Source"" button to view source HTML code[[BR]]

--> Body doesn't contain any SCAYT classes.[[BR]]

4. Click on the ""Source"" button again to return to normal mode[[BR]]

5. Click on the ""Save"" icon to view the result[[BR]]


Actual result: 
{{{
<body class=""scayt-enabled"">
}}}

Expected result: 
{{{
<body>
}}}"	WebSpellChecker.net
Bug	5822	[IE] It's not able to block certain keystrokes	General			confirmed	2010-06-10T12:54:07Z	3.0	2012-05-15T12:33:59Z	It's not able to block certain keystrokes in IE with 'CKEDITOR.config.blockedKeystrokes', e.g. F5.	Garry Yao
Bug	5773	SCAYT: Memory leak in IE	General			confirmed	2010-05-31T18:44:59Z	3.3	2012-02-09T17:03:37Z	"In IE6 there is a 8MB memory leak every time an instance of CKEditor is created.

Confirmed using Process Explorer, after creating & destroying CKEditor 10 times (using AJAX sample), memory  usage (private bytes) jumped from 9MB to 90MB (tested on IE6.0.3790.1830 @ Win2003/SP1, also reported by user using IE6 6.0.2900.2180).

I have attached a dump from IE Sieve."	Wiktor Walc
Bug	5700	SCAYT doesn't work with 'replace' command	UI : Spell Checker			confirmed	2010-05-19T05:40:15Z	3.4.2	2010-12-06T05:30:19Z	" 1. Load the following content in editor;
{{{
<p>
	wrongspell</p>
}}}
     * Expected Result: The word is red-marked in wysiwyg mode.
 1. Open 'Replace' dialog and replace the word with ""right spell"", then close the dialog.
  * Expected Result: The red underline is removed.
  * Actual Result: The red underline is still in place.
 "	Garry Yao
Bug	5535	Stack overlow in IE6 when pasting strange HTML	General			confirmed	2010-04-14T15:45:59Z	3.0	2011-05-05T14:47:09Z	"When pasting HTML that contains lots of nested tags, IE6 throws an error: ""stack overflow at line: 27"".

=== Steps to reproduce ===
 - Open _samples/api.html
 - Copy content from attached file
 - Paste it into the textarea
 - Press the ""Insert HTML"" button

"	Wiktor Walc
Bug	5027	[IE] Standards Mode Selection: Cannot click to select to the right of a control node	General			confirmed	2010-01-18T00:04:41Z	3.0	2010-12-29T08:19:06Z	"There is a bug with IE in standards mode when trying to click to the right of a control selectable node such as an image.

'''To replicate'''
Set the HTML to:
{{{
<p>
	Line 1<br />
	Line 2<img src=""http://www.google.com/intl/en_ALL/images/logo.gif"" /></p>
}}}

I have attached a patch which fixes this problem.  I dont know if it is implemented up to your standards though.

Some things that are bad about my patch are:[[BR]]
- Its using the CK dom range inside selection (seems a bit cyclic)
- You cannot mouse down and drag to select more[[BR]]
- I dont really understand why there are multiple selections / ranges so I have just used ""getRanges()[0]""[[BR]]
- Its using setTimeout() because the selection is not ready before the event[[BR]]
- I am using a constant of 20x20 pixels to check the mouse offset - perhaps a character size calculation is needed?

There may be some other ways to fix this.  Another idea is that we could insert a whitespace text node / span at the end of the block before the end of the mousedown event.

Cheers,[[BR]]
Scott[[BR]]
[http://www.synergy8.com/]"	Scott McNaught
Bug	4971	Unable to insert <br> under <li> when shiftEnterMode != ENTER_BR	UI : Enter Key			confirmed	2010-01-08T03:51:49Z	3.0	2012-07-05T13:50:10Z	"By default, shiftEnterMode is set to ENTER_BR, and Shift+Enter will insert <br> under <li>.

=== To Reproduce ===
 * Add following settings to config.js.
{{{
config.enterMode = CKEDITOR.ENTER_BR;
config.shiftEnterMode = CKEDITOR.ENTER_P;
}}}
 * Open sample page.
 * Click ""Numbered List"" or ""Bulleted List"" button from toolbar.
 * Type some text.
 * Move caret at the middle of text.
 * Press **Enter** from keyboard.
  * expect: <br> is inserted
  * actual: next <li> is created
"	pomu0325
Bug	3360	Enlarge range by element problem	General		Garry Yao	assigned	2009-04-14T18:12:43Z	3.0	2010-12-28T10:12:51Z	When enlarging a block element with element unit, the enlargement will  climb up to any ancestor block, which is wrong.	Garry Yao
Bug	2589	changing style when typing text works incorrectly	Core : Styles			confirmed	2008-10-07T08:41:06Z	3.0	2011-08-11T11:43:24Z	Start typing some text in demo. Switch to some style that is actually span (Marker-green for one), type more, switch to Marker-yellow, type more, switch to Marker-green again - type and see that text continue to be yellow. So we can't swith to the first applied style when continue typing.	Irina
New Feature	10026	Breaking quotes in Email replies	General			new	2013-02-04T09:31:58Z		2013-02-04T09:42:03Z	"see article in forum: Breaking block quotes in Email replies 
relaated topic: Ticket #7354 

Short Description:
Quoted parts of messages are not allways splited, if enter is pressed, e.g. ""quotes with a <div>-Tag"" are not splitted. 

Thunderbird or any other Email client splits the quoted part of the message, if enter is pressed."	scsve
New Feature	9774	HasPatch adding a body wrapper (usefull for adding (invisible) css wrappers)	Core : Styles			new	2012-12-06T13:27:48Z	3.6.2	2013-04-01T08:04:08Z	"This is a patch on ckeditor 3.6.2.
(this is a new feature and not actually a bugfix, I call it a patch because it involves editing an existing pluging file)

This patch allows inserting html source into the wysiwyg iframe area, which you can NOT edit in the editor itself, is NOT saved in the real source, but WILL allow you to modify the appearance of the wysiwyg editor.
It does this by inserting (both prepending and appending) html in the body tag of the wysiwyg editor.
(Note: it only works for the NON-FULLPAGE version. luckily, you won't need it for the fullpage config.)

for example, you can add <div id=""x"" class=""y"">...</div> wrappers so included css files will work.

I use it to insert html blocks quite deep into a fairly complex website and it still works like a charm.

USAGE EXAMPLE:

site.css:
{{{
body#mybodyid.mybodyclass div#myIdcontainer  div.myclasscontainer1{float:right;}
body#mybodyid.mybodyclass div#myIdcontainer  div.myclasscontainer1 div.myclasscontainer2{color:#f00;font-weight:bold;}
}}}

html/js:
{{{
<script>
	var myckconfig = {
		contentsCss : 'site.css?1234',	
		bodyId      : 'mybodyid',
		bodyClass   : 'mybodyclass',
		bodyPrepend : '<div id=""myIdcontainer""><div class=""myclasscontainer1""><div class=""myclasscontainer2"">',
		bodyAppend  : '</div><br style=""clear:both;"" /></div></div>',
	};
	$('textarea.ckeditor1').ckeditor(myckconfig);
</script>
<textarea class=""ckeditor1"">this should show up bold and red!</textarea>

}}}
"	ElMoonLite
New Feature	8982	Anchor options in Link dialog uses only references to 'a' elements	General			confirmed	2012-05-17T20:06:11Z	3.0	2012-12-18T15:11:46Z	"Reported here:
http://cksource.com/forums/viewtopic.php?f=6&t=25473

The link dialog provides an option to link by Id, but it provides only the option to link to anchor elements, not other elements with an id attribute although those links will work in any browser.

The proposed patch provides a simple solution for modern browsers that support querySelectorAll. If someone is willing, it shouldn't be hard to write an ""else"" code path that does the scanning for the older browsers.
"	Alfonso Martínez de Lizarrondo
New Feature	8574	Change contents of richcombo after init	General			confirmed	2011-12-07T20:58:32Z	3.6.2	2011-12-08T17:50:40Z	"I think richcombo plugin needs to be extended to support changing its contents after init has been run. This will enable developers to clientside refresh the list without loading the entire page where the editor is.

I have successfully done this with a bit of a hack in my own plugin that uses richcombo. In my code, I have a plugin that adds other plugins in the richcombo - e.g. insert link, insert image etc. This list may change due to userinput and it happens clientside.

How I solved it: (see [http://stackoverflow.com/questions/7762810/is-it-possible-to-reinitialize-a-ckeditor-combobox-drop-down-menu/8397198#8397198]

Some code:
in the init function in ui.addRichCombo:

{{{
init: function () {
                var rebuildList = CKEDITOR.tools.bind(buildList, this); // bind the buildList function with this scope
                rebuildList(); // call once to do first build of list
                $(editor).bind('rebuildList', rebuildList); // bind with jquery so we can call it later
            },
}}}

then outside scope, define the buildList function:

{{{
var buildListHasRunOnce = 0;
        var buildList = function () {
            if (buildListHasRunOnce) {
                // Remove the old unordered list from the dom.
                // This is just to cleanup the old list within the iframe
                // Note that this removes all uls... if there are more than one editor on page, we have to be more specific on what to remove. In my production ready code, I target one of the lis, and find its ul parent and remove that instead of shotgunning all uls like in this example
                $(this._.panel._.iframe.$).contents().find(""ul"").remove();
                // reset list
                this._.items = {};
                this._.list._.items = {};
            }
            for (var i in yourListOfItems) {
                var item = yourListOfItems[i];
                // do your add calls
                this.add(item.id, 'something here as html', item.text);
            }
            if (buildListHasRunOnce) {
                // Force CKEditor to commit the html it generates through this.add
                this._.committed = 0; // We have to set to false in order to trigger a complete commit()
                this.commit();
            }
            buildListHasRunOnce = 1;
        };
}}}

I´m thinking that it should be at least possible to 
1. Get a handle on the richCombo object when you add it with editor.ui.addRichCombo
2. Be possible to call clearRichCombo

Alternatively:
1. Add function remove 
2. Make it possible to call add after init. Currently you can, but it crashes the richCombos mark/unmarkall functions

Kind regards,
Amund"	Amund
New Feature	8543	YouTube plugin	General			confirmed	2011-11-22T23:12:02Z		2013-07-29T11:06:21Z	"I have written a YouTube plugin Ref: RE: Form submission from: Contact Us - [9883-OTKM-0306] [2a836e4d]

Frederico asked me to open a ticket and attach the plugin."	John Munsch
New Feature	8331	"Ability to ignore ""Confirm Cancel""-warning on dialogs"	General			confirmed	2011-09-01T13:03:35Z		2013-02-21T22:33:39Z	"If changes have been made to a dialog and the cancel button is pressed an annoying ""Confirm Cancel"" warning is displayed. It would be nice to toggle weather you want this warning or not.

The new ""on cancel event"" on the dialog will look like:

{{{
this.on( 'cancel', function( evt ) {
  if (!editor.config.ignoreConfirmCancel)
    iterContents( function( item ) {
      if ( item.isChanged() ) {
        if ( !confirm( editor.lang.common.confirmCancel ) )
          evt.data.hide = false;
        return true;
      }
    });
}, this, null, 0 );
}}}

The only line added is:

{{{
if (!editor.config.ignoreConfirmCancel)
}}}

which is in line 323 of the plugin.js in the dialog folder. This is just before the ''iterContents( function( item )...'' is called - thus ignoring this check if the ''ignoreConfirmCancel'' is set in the editors config.

In order to toggle the warning add the following line to the editors config:

{{{
config.ignoreConfirmCancel = true;
}}}

"	Henrik Helmø Larsen
New Feature	8257	Adding support for css-classes in tableCell dialog	Core : Tables			confirmed	2011-08-11T13:34:21Z	3.0	2011-09-22T12:04:22Z	"This patch adds support for css-classes for ckeditor 3.6.1 and 3.6.2

I attached a patch and the whole file."	Martin
New Feature	6934	Alternative style/format outlook	General			new	2011-01-04T02:49:11Z	3.0	2011-01-06T12:51:06Z	"Style combo item is not presented under the preview style of the each style definition (same with format combo), sometimes this isn't an option at all (seen on user request #6379), the editor should allow an alternative presentation to be provided in the following format:
{{{
	{
		name : 'Colored: White',
		element : 'span',
		styles : { 'color' : 'White' },
		displayHtml: '<span style=""background-color:#000;color:#fff;"">Colored:White</span>'
	}

}}}"	Garry Yao
New Feature	6602	Automatically send WYSIWYG browsers into source mode instead of refusing to work	General			new	2010-11-02T15:18:49Z		2010-11-03T05:45:15Z	"Browsers that don't support tag editing still support ckeditor's source mode, which is better than nothing, and provides a more gradual operational decline.

My suggested patch creates a env.isTextCompatible var, and if env.isCompatible is false but env.isTextCompatible is true, ckeditor defaults to a text entry mode with limited, but still existent functionality."	David Wipperfurth
New Feature	6251	serverpreview plugin	General			confirmed	2010-09-03T16:19:16Z	3.0	2012-08-08T11:27:22Z	"Hello!

Someone suggested I add a ticket for an updated plugin made in 2006 for FCK.

The plugin adds a Preview button that POST's the currently edited html to an user-specified URL, where one could add a layout, replace template vars etc, in order to preview the page as it would look.

You can find the code here:
http://cksource.com/forums/viewtopic.php?t=18603
or attached."	Vlad
New Feature	5692	Handle file dropping in editor	General			new	2010-05-17T16:57:15Z	3.0	2014-02-20T08:53:02Z	"Provide a plugin to detect desktop file dropping into editor, for those support browsers.[[BR]]
The detected file info could be used to upload the file immediately or perform any possible customization.

**Edit:**
Yes that is most correct. Editor should have at least a hook for implementing drag&drop into editor. What I mean is that if editor is connected with file uploader (like CKFinder) it should prepare image information that uploader can use to upload file. After file is uploaded, uploader should send new image path and editor should apply it."	Garry Yao
New Feature	5184	CKeditor flash plugin patch for youtube	UI : Dialogs			confirmed	2010-02-18T23:09:46Z	3.0	2011-11-29T15:30:46Z	"CKeditor's flash plugin accepts youtube URLs, if they point directly to the flash file (youtube.com/v/XXXXXXXX URLs); youtube's interface gives URLs like youtube.com/watch?v=XXXXXXXX.

This patch does a string replace on the interface so that people can paste youtube page urls.

Supplied code reeks of duct tape, but it gets the job done; I don't have 40 hours to spend learning CKeditor internals (it's already perfect, anyway!)"	Patrice Levesque
New Feature	5094	Dialog API: Custom alignment of radio buttons and their labels	UI : Dialogs			confirmed	2010-02-03T13:25:47Z	3.0	2015-12-11T10:40:35Z	"I have not found a good way to adjust the alignment of the radio buttons. The radio buttons is outputted as table cells in a single table row, that makes it impossible to use css to display them in an vertical list (Internet Explorer).

It would be great to have the following options for the radio element:
- Vertical or horizontal display of radio buttons
- Whether to display the labels above, below, in front of or behind the radio buttons."	Martin Røssland
New Feature	4362	Fire event when floatpanel opened	QA			confirmed	2009-09-01T14:12:46Z	3.0	2011-04-13T13:56:01Z	The opening of our panel system is a mixing of async( iframe loading for first time ) and sync ( subsequent showing ) process, which makes it hard to determinate it's ready to been manipulated, event is always  good treatment in these cases, an 'open' event could be fired when the panel is fully loaded and become visible.	Garry Yao
New Feature	3731	Support 'style only' override in style system	Core : Styles			confirmed	2009-06-16T05:42:33Z	3.0	2015-02-20T14:03:01Z	"This's a ticket derived from #705, which provide a UC of the following style definition which we don't support now:
{{{
{ element : 'strong', overrides : [ { element: 'b'}, { element: 'font', styles : { 'font-weight' : 'bold' } } ] }
}}}
And a more generic UC ( and actually a common case )with 'style' only definition could be inferred as:
{{{
{ element : 'strong', overrides : [ { element: 'b'}, { element: '*', styles : { 'font-weight' : 'bold' } } ] }
}}}
Which declare that we need to consider bold for the following two cases:
 1. It's a <strong> tag;
 1. It's a <b> tag;
 1. It's any tag with ''""font-weight"" : ""bold""'' style;

"	Garry Yao
New Feature	3627	Performance testing	QA		Garry Yao	assigned	2009-05-29T21:51:12Z	3.0	2010-12-29T08:53:51Z	"I guess that everybody has this in mind, but no one has written it so far.

In the future it would be very nice to have an automated performance testing system, so that we can keep track of any unexpected degradation of the performance. And also to avoid that little + little + little changed do end up summing a serious problem.

For a reference, this post about Chrome explains the same basic idea: http://blog.chromium.org/2008/11/putting-it-to-test.html and points that some of the tools are based on HTML and JS, so maybe we can reuse something from there.

"	Alfonso Martínez de Lizarrondo
New Feature	3371	Spring based Connector servlet	Server : Java			confirmed	2009-04-16T14:12:52Z		2012-07-19T08:58:55Z	"Attached is a patch which has a new spring based connector servlet project. It allows the Connector to be a Spring managed bean which is useful in Spring projects. For example if the connector is used to write to a database it will be able to use the Spring transaction manager or Spring events could be issued when an upload/download occurs for files.  

I`ve also updated the java-demo project so it uses the new servlet.
I`ve commented out the original ConnectorServlet in the web.xml 

I had to change the Dispatcher slightly so a Connector can be passed into it. I also had to make the dispatcher member variable in the ConnectorServlet protected as the new SpringConnectorServlet derives from ConnectorServlet.
"	Darran
New Feature	2848	suggestion: make hidden element actually hide in IE too, x-browser behavior	General			confirmed	2009-01-31T16:35:31Z		2011-11-17T13:26:17Z	"I think it's a good idea to make the behavior of hidden element the same in all browsers. This actually is doable in IE so I have found after lots of searching:

Setting
{{{
FCK.EditorDocument.execCommand('RespectVisibilityInDesign', true, null);
}}}
makes display:none and visibility:hidden to be respected in editable documents (contentEditable=true).

(Setting the second parameter to false instead of true will disrespect visibility, the default behavior of IE; and setting it to null will toggle the option.)

See http://msdn.microsoft.com/en-us/library/aa770023(VS.85).aspx (IDM_RESPECTVISIBILITY_INDESIGN)"	Paul Moers
New Feature	602	Syntax highlight and go to line	UI : Source View			confirmed	2007-06-21T03:58:08Z	3.0	2013-03-20T21:25:15Z	"It would be a great idea to be able to use highlighting
in source mode like you get in some text editors for
coding.

a button for go to line would be great because
sometimes you have this huuuge files and you got an
error on line 345. Would be great for debugging.
----
Moved from SF:[[BR]]
http://sourceforge.net/tracker/index.php?func=detail&aid=972673&group_id=75348&atid=543656"	objectcat@…
Task	8597	CKEditor.NET 3.6.2 editor not displayed after postback (RadAjaxPanel)	Server : ASP.Net			confirmed	2011-12-14T01:58:18Z	3.6.2	2012-02-17T14:07:41Z	"This is using ajax but not the MS update panel, I am using the Telerik RadAjaxPanel.

I have added a check to see if it is a RadAjaxPanel and it works now.

Fix: 
{{{
if (con.GetType() == updatePanel || con.GetType().FullName == ""Telerik.Web.UI.RadAjaxPanel"")
}}}"	Jaluka
Task	3358	Optimize 'CKEDITOR.dom.range.enlarge' on block unit	General			new	2009-04-14T09:35:51Z	3.0	2010-12-28T11:21:36Z	"After enlarging the range with a block unit with the following input:
{{{
<div>text^<p>paragraph</p></div>^
}}}
We'll got:
{{{
<div>^text<p>paragraph</p></div>^
}}}
No we got a partially selected block, it's better to have the 'div' been fully selected to prevent consequence operation like ''extractContent'' from resulting in unwanted node pieces, so an optimized result would be the following:
{{{
^<div>text<p>paragraph</p></div>^
}}}
"	Garry Yao
