Custom Query

Filters
 
Or
 
  
 
Columns

Show under each result:


Results (2001 - 2100 of 2591)

Ticket Summary Status Owner Type Priority Milestone
#14239 Spurious nodes added to document when toggling source view control when certain ACF rules applied confirmed Bug Normal
Description

Steps to reproduce

  1. Create custom CKEditor ACF configuration which permits non-html4 tags into the document, for example:

CKEDITOR.config.extraAllowedContent = 'summary';

  1. Instantiate browser instance using this custom configuration
  2. Repeatedly toggle the source view control
  3. Observe the <p>&nbsp;</p> nodes being rapidly appended to the document. Seemingly these nodes duplicate every single time you toggle.

Expected result

I do not expect to see random <p>&nbsp;</p> added to the document.

Actual result

<p>&nbsp;</p> nodes are rapidly added to the document, corrupting it.

Other details (browser, OS, CKEditor version, installed plugins)

A demo of this bug is present at the following URL: https://jsfiddle.net/kamelkev/hqLbhzxz/1/

I have observed this issue with current Firefox (42), current Safari (9.0.1) and current Chrome (47.0.2526.80).

I have observed this issue with the most recent release (4.5.5), but replicated it with older versions as well.

Note that the issue does not appear to manifest itself if you use the ENTER_BR entermode.

Note the issue does not appear if you disable auto-paragraphing.

Note the issue does not appear if you apply the fix from the following stackoverflow article: http://stackoverflow.com/questions/24283528/line-break-and-paragraph-has-doubled-itself-every-time-i-save-the-document-ckedi

#14250 Block Styles are not copied to new line confirmed Bug Normal
Description

Steps to reproduce

  1. Apply a style to a single line of text in the full editor using the style combo dropdown
  2. Select all of the text again, and copy (ctrl-c).
  3. Position cursor at the end of the text and press return to create a new line. Now Paste (ctrl-p). The style formatting is not retained in the pasted text.

(However, if you copy/paste multiple lines, the bug does not happen, the style is successfully retained.)

Expected result

The pasted line should retain the style

Actual result

The pasted line does not retain the style

Other details (browser, OS, CKEditor version, installed plugins)

Happens in your demo, even in your 10/7/15 nightly build: http://nightly.ckeditor.com/15-12-10-07-07/full/samples/

Bug happens in multiple browsers: Firefox, IE, and Google Chrome


EDIT:

  1. Open default sample and clear editor contents with "New Page" button
  2. Type 'Test', select it with mouse and select "Italic Title" block style from Styles dropdown
  3. Copy selected text with Ctrl+C
  4. Click next to selected text to unmark selection and press enter to move to new line
  5. Paste copied content into editor

Result: Simple paragraph instead of styled Header is pasted.

NOTES: Block Styles were copied till CKEditor version 4.4.8

#14254 Wrong label for Cell Properties height input confirmed Bug Normal
Description

The height input has two labels assigned in aria-labelledby attribute. The first one is correct, while the second label points to the br element, while it should point to its parent element (that contains "pixels" text node).

#14257 [Blink] Pasting from MS Word leaves <![endif]--> confirmed Bug Normal
Description

Steps to reproduce

  1. Set allowedContent : true in editor configuration.
  2. Open replacebycode.html sample and attched MS Word File.
  3. Copy content from MS Word and paste it into editor.
  4. Switch to source

Expected result

<p></p><table cellpadding="0" cellspacing="0" width="100%"><tr><td><div><p>textbox</span></p></div></td></tr></table><img width="165" height="119" src="file:///C:\Users\john\AppData\Local\Temp\OICE_4027FAD9-2B4E-4B07-94CA-B7B328B953E0.0\msohtmlclip1\01\clip_image001.png" alt="Text Box: textbox" /></span>Plain text</span> 

Actual result

<p></p><table cellpadding="0" cellspacing="0" width="100%"><tr><td><div><p>textbox</span></p></div></td></tr></table><![endif]--><img width="165" height="119" src="file:///C:\Users\john\AppData\Local\Temp\OICE_4027FAD9-2B4E-4B07-94CA-B7B328B953E0.0\msohtmlclip1\01\clip_image001.png" alt="Text Box: textbox" /></span>Plain text</span> </![endif]-->

Other details (browser, OS, CKEditor version, installed plugins)

Problem can be reproduced from CKEditor 4.5.0 in Blink browsers.

#14262 [mathjax] Add scrollbar inside dialog for mathjax preview wider than viewport confirmed New Feature Normal
Description

Noticed when fixing #13612. One think is proposed fix for #13612 which repositions the dialog after rendering mathjax preview so it's always centered (see detailed description).

The second think is sometimes mathajx preview can be so wide it does not fit inside the viewport even when repositioning dialog. To see how it looks, simply paste this formula inside mathjax dialog:

x = {-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a} x = {-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}{-b \pm \sqrt{b^2-4ac} \over 2a}

Probably not many people use such long and complicated formulas. However adding a scrollbar inside dialog (to enable mathjax preview scrolling) and restricting its maximum width to a viewport width could solve this issue.

#14265 Moving focus outside toolbar is not documented confirmed Bug Normal
Description

Steps to reproduce

  1. Press Alt+0 to open "Accessibility Instructions".
  2. Look at "Editor toolbar" section.

Expected result

There is an information about how to restore focus into editor, e.g.

Press Esc to return to editor.

Actual result

There is no such information.

#14271 By pressing ENTER below a table in an enumerated list item, the whole list item will be deleted confirmed Bug Normal
Description

Steps to reproduce

  1. Insert an enumerated list in CKEditor
  2. Write "Hello World" as first item in this list
  3. Press SHIFT + ENTER for simple linebreak without paragraph
  4. Insert a table (e.g. with default settings: 3 lines, 2 columns)
  5. Place the cursor directly below the table
  6. Press ENTER

Now the whole enumeration is deleted.

Alternatively you can just paste the following generated code into the source-view, go back to wysiwyg-view, place your cursor in the line directly after the table and press ENTER

<ol>
	<li>Hello World
	<table border="1" cellpadding="1" cellspacing="1" style="width:500px">
		<tbody>
			<tr>
				<td>a</td>
				<td>b</td>
			</tr>
			<tr>
				<td>c</td>
				<td>d</td>
			</tr>
			<tr>
				<td>e</td>
				<td>f</td>
			</tr>
		</tbody>
	</table>

	<p>&nbsp;</p>
	</li>
</ol>

Expected result

We would expect either:

  • a linebreak after pressing ENTER, but having the possibility to create another enumeration item "2."

or:

  • after inserting the table another enumeration item is automatically generated and the cursor is placed in "2."

Actual result

The whole enumeration item "1." including the table is deleted, by just pressing ENTER.

Other details (browser, OS, CKEditor version, installed plugins)

This is reproducible with the following browsers in the current official CKEditor Demo, but also in older versions of CKEditor: Firefox 42, Chrome 47, Internet Explorer 11,

#14272 You can't delete (using Ctrl+A Del) two lists separated by a paragraph confirmed Bug Normal
Description

Steps to reproduce

  1. Create two element bulleted/numbered list
  2. Press Enter twice to escape list and type some text
  3. Press Enter to move to new line
  4. Create two element bulleted/numbered list
  5. Press Ctrl+A Delete

Expected result

Whole content should be removed.

Actual result

Only list at the bottom gets removed.

Other details (browser, OS, CKEditor version, installed plugins)

Problem can be reproduced in Blink Browsers from CKEditor 4.0

Similar issues that deal with deleting lists and list items: #12783, #13216, #12248, #12502

#14274 under firefox, ckeditor word-break not working when focus first. confirmed Bug Normal
Description

https://jsfiddle.net/mfine2/ekggowow/2/ with Firefox, when you click ckeditor, the horizontal scroll bar will display, can not understand what happened to the ckeditor.

#14280 Unclear error message when image size is changed to an incorrect value confirmed Bug Normal
Description

Steps to reproduce

  1. click on insert image.
  2. under image Info tab,give image url and set width or height as 0.
  3. click Ok.

Expected result

should show valid message saying "Width must be greater than 0"

Actual result

Shows a message saying "Width must be a number."

#14285 Overflow CSS property added to html element when using autogrow with fullpage plugin confirmed Bug Normal
Description

Steps to reproduce

  1. Build 4.5.6, including autogrow plugin
  2. fullpage: true, allowedContent: true

Expected result

<html> -- no change to source

Actual result

<html style="overflow-y: hidden; ">

Notes=

removePlugins: 'autogrow',

will stop the change to <html>, but obviously disables the autogrow too .

Other details (browser, OS, CKEditor version, installed plugins)

#14289 Issue with Merging and Deleting Cell at last column confirmed Bug Normal
Description

in cases where there are multiple row spans.

merging or deleting cell at the last column will cause the next row to move up to the right of the last column cell of the current row.

sample source code at "https://dl.dropboxusercontent.com/u/67609133/CKEditor%20Bug%20Source%20Code.htm"

Steps to reproduce

Merging Cell

  1. Copy sample source code to CKEditor
  2. Right click on the cell containing red text "Merge Cell Down"
  3. Select Cell > Merge Down

Deleting Cell

  1. Copy sample source code to CKEditor
  2. Right click on the cell containing red text "Delete This Cell"
  3. Select Cell > Delete Cells

Expected result

Merging Cell Cell will merge correctly with cell containing text "Row 5, Col 5". Rows should be maintain.

Deleting Cell Cell will be deleted. Rows should be maintain.

Actual result

Merging Cell Cell will merge but the next row will shift up to the right.

Deleting Cell Cell will be deleted but the next row will shift up to the right.

Other details (browser, OS, CKEditor version, installed plugins)

Browser: (Firefox 38, IE 8-11, Chrome 47) OS: (Win 8.1 Pro) CKEditor: (4.5.6) CKEditor Build: (http://ckeditor.com/builder/24cdab0854f59a615f60afcd3b55d623)

#14294 CheckDirty is true after focusing image2 and simplebox widgets confirmed Bug Normal
Description

Steps to reproduce

Same as #11753, except with Firefox 43.0.1: As soon as you focus a place in a widget where you can put text, CheckDirty is true. (Also works with editor1)

Expected result

CheckDirty remains false

Actual result

CheckDirty switches to true

Other details (browser, OS, CKEditor version, installed plugins)

Firefox 43.0.1 Chrome seems to be ok.

Edit: This issue may concern other widgets as well. Please also see #12891 where MathJax and Code Snippet have other problems with checkDirty.

#14299 [mathjax] MathJax dialog not updating on mouse paste confirmed Bug Normal
Description

Steps to reproduce

  1. Open mathjax dialog
  2. Enter the following formula in the mathjax dialog via context menu (right click > paste):
x = 1 + 2

Expected result

Preview should refresh with newly added formula.

Actual result

Preview does not refresh on paste from context menu.

Related to #13612.

#14300 Cut Copy events attached do other element than editable are no longer cancellable. confirmed Bug Low
Description

Steps to reproduce

Below code works until CKE 4.4.8

editor.on('contentDom', function(){
var editable = editor.editable();
editable.attachListener( editor.document, 'cut',  function(ev){
        console.log('logic');
        ev.data.preventDefault();
        return false;
}, null, null, 0);
});

This code works in all versions:

editor.on('contentDom', function(){
   var editable = editor.editable();
   editable.attachListener( editable, 'cut',  function(ev){ //here
         console.log('logic');
         ev.data.preventDefault();
         //ev.cancel();
         return false;
   }, null, null, 0);              
});    

and so does this one:

editor.on('contentDom', function(){
    var editable = editor.editable()
    editable.on( 'cut',  function(ev){
         ev.data.preventDefault();
         return false;
    }, null, null, 0);
});

Was this planned or is this a bug?

#14302 span tag replaced by font confirmed Bug Normal
Description

Steps to reproduce

  1. Go here http://sdk.ckeditor.com/samples/acf.html in section 'Adjusting Automatic ACF Mode'
  2. Select the text in green 'text colors' and click on backspace
  3. Type a new text

Expected result

Only the new text should be added

Actual result

A font tag with the previous color is added

Other details (browser, OS, CKEditor version, installed plugins)

Linux Fedora, chrome Version 40.0.2214.115 (64-bit). I also saw the bug on windows chrome and firefox

#14307 Page scrolling when spacebar is pressed to de-select lock ratio checkbox confirmed Bug Normal
Description

Steps to reproduce

  1. Open 'Image Properties' dialog
  2. Navigate to Lock Ratio check box which is selected
  3. Press spacebar to de-select it

Actual result

Lock Ratio is deselected and entire page scrolls down

Other details (browser, OS, CKEditor version, installed plugins)

#14309 Table or horizontal line disappeared after insert in case of numbered/bulleted list. confirmed Bug Normal
Description

Steps to reproduce

Tested on demo page http://ckeditor.com/demo#standard

  1. From the editor, click on 'Numbered List' or 'Bulleted List' button.
  2. Insert a table or a horizontal line (see attached screen shot for example)
  3. After insert, make sure the cursor is at the end
  4. Press 'Enter' key

Expected result

Inserted table/line should display and the next bullet/number in the list should appear.

Actual result

The inserted table or horizontal line disappeared.

Other details (browser, OS, CKEditor version, installed plugins)

I'm currently on CKEditor 4.5.3, but I can reproduce the problem on the latest CKEditor demo. The problem happens on FireFox 38.4, Chrome and IE11.

#14313 Copying/pasting nested lists in IE results in flat list confirmed Bug Normal
Description

Steps to reproduce

  1. Open replacebycode sample in IE and create nested list in the editor or just paste below code:
    <ol>
    	<li>one
    	<ol>
    		<li>two</li>
    		<li>three</li>
    	</ol>
    	</li>
    	<li>four</li>
    </ol>
    
  2. Select list with a mouse (from one to four or from four to one)
  3. Paste the list somewhere below existing one (enter down if necessary)

Expected result

Nested list should be pasted.

Actual result

Flat list or single level list gets pasted into editor.

Other details (browser, OS, CKEditor version, installed plugins)

The same problem can be reproduced in native IE. Please use attached file. Just select, copy and paste the nested list below existing list.

#14319 BIDI: When locale is set to Arabic, Font Size combo displays Arabic-European digits confirmed Bug Normal
Description

Steps to reproduce

Change the browser local to Arabic and reload CKEditor.

Expected result

In the toolbar, in the Font Size dropdown menu:

  • text is displayed in Arabic
  • digits are displayed in Arabic-Indic (٨, ٩)

Actual result

The name and the tooltip of the Font size dropdown are displayed in Arabic but the size digits are displayed in Arabic-European (8, 9).

#14321 [FF] Selection from native getSelection inconsistent with other browsers. confirmed Bug Normal
Description

In FF getSelection method inside contenteditable=true works differently than in other browsers (Chrome, IE, Opera) which is the cause of some issues (e.g. #8958, #10709, #10966, #14288). In FF selection from caret on exactly same position can have to different states while in other browsers it is always the same one state. Considering sample html:

normal^<strong>bold<strong>

in FF when caret is moved (via arrow keys) from normal to marked caret position, selection points to normal text node and typing produces normal text. When caret is moved from bold to marked caret postion, selection points to bold text/element node and typing produces bold text. So it basically depends on context from which cursor was moved (see more detailed description or jsfiddle sample).

In other browsers, no matter what previous context was, selection always points on the same element (usually it is the node/element before caret).

It is the difference between native implementations not the issue in CKEditor. However, as mentioned earlier, this difference causes some issues so it is worth considering if and how it could be handled in CKEditor.

#14331 BR Enter Mode: New list item not created when we press ENTER at end of list item confirmed Bug Normal
Description

Steps to reproduce

Set config.enterMode = CKEDITOR.ENTER_BR

  1. In editor, enable Numbered/Bulleted list by clicking on corresponding icon in toolbar.
  1. Type some text in first list item & press ENTER.

Expected result

New list item created

Actual result

Nwe list item not created, if you look at source, it will create a <br /> tag rather than enclosing the content with <li> </li> tags.

Additional notes

Required configuration:

var editor = CKEDITOR.replace( 'editor1', {
	enterMode : CKEDITOR.ENTER_BR,
	forceEnterMode:true 
});
#14334 EDGE: Pasting Numbered list from word with more than 2 levels not working properly confirmed Bug Normal
Description

Steps to reproduce

  1. Open attached word doc
  2. Copy & paste the list using Paste from word doc

Expected result

List pasted properly with all nested levels shown properly

Actual result

List pasted incorrectly

Other details (browser, OS, CKEditor version, installed plugins)

#14337 [IE] Proper selection restoring after modification of text while unfocused confirmed Bug Normal
Description

In IE (opposite to other browsers) opening dialogs causes loss of focus in editable area. When focus is lost selection is stored (core/selection.js#L957) and when focus is gained again by editor, saved selection is restored (core/selection.js#L936 and core/selection.js#L1650).

The problem is when during the unfocused period something in an editable area is changed (especially in nodes that were selected and are going to be used for restoring). In such case restoring selection produces some unexpected results because of the changes, e.g.

  1. Open demo (http://ckeditor.com/demo#full)
  2. Remove all sample content
  3. Type test case 1
  4. Select tes[t case 1]
  5. Press Replace button on the toolbar
  6. In the Find what field type: case
  7. In the Replace with field type: cc
  8. Press Replace All button
  9. Press OK button on the notification Message Box
  10. Press close button on the Find and Replace dialog

Selection which was restored is:

tes[t ]c 1

and probably should be (that's the way it works in other browsers):

tes[t c 1]


In this particular case the restored selection looks like this because text node where split (while replacing) to:

test |c| 1

and saved selection points to first text node with valid startOffset but outdated endOffset (so the selection ends where text node ends). There are also other cases like #12459, #11962.

Happens in IE8 - IE11.

#14340 AVT: No info about applied text/background colour to normal/JAWS users in Colour options list box confirmed Bug Normal
Description

Steps to reproduce

  1. Open http://nightly.ckeditor.com/16-01-22-07-07/full/samples/
  2. Apply text colour ( ex: red) to text
  3. Keep cursor in the text that has text colour applied and open Text Colour list box

Expected result

Red colour is shown as selected in Colour options list box.

Actual result

Red colour not shown as selected & user has no info which colour aplied. Same issue with Background colour. This is AVT violation.

#14346 native Browser Spellchecking not working when pressing return without space confirmed Bug Normal
Description

Steps to reproduce

  1. Download basic package of ckeditor 4.5.6
  2. Download firefox 43.0.4
  3. Enable spellchecking in firefox
  4. modify config.js and add "config.disableNativeSpellChecker = false;"
  5. open samples/index.html
  6. Add some text like "ABCDEFGHIJK" and press return

Expected result

The word "ABCDEFGHIJK" will be underlined red

Actual result

In Firefox 43.0.4 the red underlining only appears if you press space, tab or any other key expect return In Chrome 48.0.2564.82 m it works as expected.

Other details (browser, OS, CKEditor version, installed plugins)

Windows 10 (but I think it is os independent) CKEDITOR 4.5.6 Basic package none special plugin

Further Information

I assume this is a ckeditor problem because I tested the behaviour of firefox with the attached file and it works just great. I think when pressing return in firefox the keystroke is not reaching firefox.

If you need any further information, please ask

#14349 Safari on MAC : Drag & drop of images from web not working confirmed Bug Normal
Description

Steps to reproduce

  1. Open nightly build
  2. Drag & drop the image from a wesbite ex: use this link http://www.bbc.co.uk/news/technology-35401668

Expected result

Image drag & drop works & it shows successfully in editor body.

Actual result

Image drag & drop not working, it just shows Image URL as plain text

This works in all browsers Firefox, Chrome etc

#14353 [Blink] It is possible to select content outside nested editable confirmed Bug Normal
Description

Steps to reproduce

  1. Open http://sdk.ckeditor.com/samples/simplebox.html
  2. Triple click in the simple box header.
  3. Press backspace.

Expected result

Only content of the header was touched.

Actual result

Text from the simplebox content was moved to the header.

Other details (browser, OS, CKEditor version, installed plugins)

This means that backpace handler is also broken as it crosses editable boundaries: #14354.

NOTE: once #14354 is fixed you will need to investigate where's the selection to confirm the issue.

Reported in http://stackoverflow.com/questions/34992972/ckeditor-titlebody-simplebox-example-widget-select-title-text-and-remove

PS. This is a browser issue, but due to a missing spec it's unlikely that someone will patch it.

#14354 Backspace handler crosses editable boundaries confirmed Bug Normal
Description

Steps to reproduce

This scenario may work only in Chrome, because in other browsers it may not be possible to make a selection crossing editable boundaries.

  1. Open ​http://sdk.ckeditor.com/samples/simplebox.html
  2. Triple click in the simple box header.
  3. Press backspace.

Expected result

Only content of the header was touched.

Actual result

Text from the simplebox content was moved to the header.

Other details (browser, OS, CKEditor version, installed plugins)

This issue is reproducible because of #14353. Once that issue will be fixed, this one will only be reproducible from code, but will still be valid.

Reported in http://stackoverflow.com/questions/34992972/ckeditor-titlebody-simplebox-example-widget-select-title-text-and-remove

#14365 Refactor editor#getSelectedHtml confirmed Task Nice to have (we want to work on it)
Description

In ticket t/13884 we added a support for multi ranges in selection when using editor.getSelectedHtml().

But the code is not integrated nicely with what has been developed so far. We need to refactor it so it sits nicely toghether with the original implementation.

More thoughts in the original comment.

#14367 Dropdown open empty after moving CKEditor toolbar using shared spaces confirmed Bug Normal
Description

Steps to reproduce

  1. Extract attached zip file, open test.html
  2. Notice the drop downs work.
  3. Click Move CK Editor
  4. The toolbar moves, and now the drop downs open empty

Expected result

Dropdowns should open with content after the toolbar is moved

Actual result

Dropdowns open but appear blank

Other details (browser, OS, CKEditor version, installed plugins)

Tested in IE and Chrome using the latest CKEditor 4.5.6 with the shared spaces plugin installed.

#14371 [Webkit] Wrong paragraphs inserted on select all + enter confirmed Bug Normal
Description

You can test well these cases on manual test.

TC1

  1. Set a following content using source button:

<p>foo</p>
<p></p>

  1. Press ctrl/cmd+a.
  2. Press enter.
  3. Switch to source mode.

Expected:

<p>&nbsp;</p>

<p>&nbsp;</p>

Actual:

<p>&nbsp;</p>

<p>&nbsp;</p>

<p>&nbsp;</p>

There's one extra paragraph. This paragraph is prepended to the contenteditable without a bogus br (so you can't place selection there).

TC2

  1. Set a following content using source button: <p>foo</p>
  2. Press ctrl/cmd+a.
  3. Press enter.
  4. Check contenteditable elements using dev inspector.

Expected:

Extra paragraph should have bogus br.

Actual:

A paragraph is missing bogus br.

Additional notes

I could repro it on CKE 4.0, didn't check earlier.

#14372 IE: Column in doublecolumn widget disappears after drag & drop confirmed Bug Normal
Description

Steps to reproduce

  1. Open http://tests.ckeditor.dev:1030/tests/plugins/manual/widget/block
  2. Create a code snippet widget and a doublecolumn widget after it.
  3. Cut & paste the code snippet widget to the upper field of the doublecolumn widget.
  4. Drag & drop the code snippet widget to the lower field of the doublecolumn widget.

Expected result

The code snippet widget is dropped to the lower field and nothing else happens.

Actual result

The code snippet widget is dropped to the lower field and the upper field disappears.

Other details (browser, OS, CKEditor version, installed plugins)

IE11

#14382 Dialog tab is disabled if has content elements of html contain ID confirmed Bug Normal
Description

Cheers,

In addition to what described here: https://dev.ckeditor.com/ticket/13193

Steps to reproduce

  1. CKEDITOR.dialog.add('dsDialogSIL', function (editor)
            {
                return {
                    title: 'Cargar datos SIL',
                    minWidth: 400,
                    minHeight: 200,
                    contents:
                    [
                        {
                            id: 'Tab1',
                            label: 'Tab1',
                            title: '',
                            expand: true,
                            padding: 0,
                            elements: [
                                {
                                    type: 'html',
                                    html: '<div class="tab_container">Sample <b>text</b>.</div><div id="otherId">Another div.</div>'
                                }
                            ]
                        },
                        {
                            id: 'Tab2',
                            label: 'Tab2',
                            title: '',
                            expand: true,
                            padding: 0,
                            elements: [
                                {
                                    type: 'html',
                                    html:
                                        '<div class="tab_container">' +
                                        '<p>' +
                                            'Sample text' +
                                        '</p>' +
                                        '</div>'
                                }
                            ]
                        },
                        {
                            id: 'tab-sil-sesiones',
                            label: 'Sesiones',
                            elements: [
                                {
                                    type: 'text',
                                    id: 'id',
                                    label: 'Id'
                                }
                            ]
                        }
                    ],
                    onOk: function ()
                    {
                        var dialog = this;
    
                        var abbr = editor.document.createElement('abbr');
                        abbr.setAttribute('title', dialog.getValueOf('tab-basic', 'title'));
                        abbr.setText(dialog.getValueOf('tab-basic', 'abbr'));
    
                        var id = dialog.getValueOf('tab-adv', 'id');
                        if (id)
                        {
                            abbr.setAttribute('id', id);
                        }
    
                        editor.insertElement(abbr);
                    }
                };
            });
    

Expected result

http://i.imgur.com/cjy9NCj.png

Actual result

http://i.imgur.com/UxvRBs3.png

Other details (browser, OS, CKEditor version, installed plugins)

CKEditor 4.5.7 - Latest --

You can take the same example that j.swiderski upload and just add id="MyTab1" the main DIV:

https://dev.ckeditor.com/attachment/ticket/13193/mytest.zip

Best regards.

#14386 Unify compositable input change events confirmed New Feature Normal
Description

Compositable input is handled differently in different browsers which means the change event in CKEditor is also fired differently when handling compositable input. Composition events (composition events w3c specs) concerns typing in Japanese (and other languages in which typing one symbol involves more than one keystrokes) and some mobile typing (e.g. suggestions).

According to tests from ticket #14329 and some additional testing:

  • In Blink change event is fired with every key press, it is not fired for confirmation (when enter is pressed) but it is fired more than once (two, sometimes three times - needs additional testing) when you move to new line (when enter is pressed for the second time). Change event is also fired for keys which cancels composition (backspace, delete, esc), but it is not fired when during composition editor loses focus (which means the end of composition so word/symbol is inserted).
  • In FF change event is fired for confirmation (when enter is pressed). For second enter press it behaves same as in Blink (two, three change events fired). Change event is also fired when canceling composition (backspace, delete, esc) - same as in Blink and losing focus during composition behaves also same as in Blink.
  • In IE change event is not fired for confirmation (when enter is pressed) but it is fired twice when you move to new line (when enter is pressed for the second time). IE doesn't fire any change event when handling composition. There is proposed fix for this behavior (#14329), but it also may need some unification.

Native events flow differs also a little in above browsers. Most important differences:

  • IE8 does not support composition* and textinput event.
  • IE11 has a specific bug which won't be fixed.
  • Edge - after compositionend, there are no further events fired for action which caused compostionend (usually it is enter keyup event). It seems it is consistent with specs: "During the composition session, all keydown and keyup events may be suppressed.".
  • Chrome fires keydown event (with key code 229) after compositionend event for enter key. In all other browsers it is keyup event with key code 13.

Native event flow tested with this jsfiddle.


Unifying change event for compositable input should result in consistent change event firing in all browsers. It seems like the best approach is to fire change event only when symbol/word is inserted (after end of composition). Also it should not be fired for keys which cancels composition. It may be achieved using compositionstart and compositionend events, there is also data attribute for those events which holds currently composed input.


For more "historical" context, see #14329.

#14387 Inline edit mode toolbar is resized to hide field when horizontally scrolling confirmed Bug Normal
Description

Steps to reproduce

  1. Create a CKEditor inline instance
  2. Have a wide page so the browser windows displays a horizontal scrollbar. This can be series of CKEditor fields.
  3. Scroll about halfway across the page horizontally and notice the toolbar width is much shorter than the other toolbars and when doing so it hides the actual field of edit.

Expected result

Properly resize CKEditor toolbar width so it does not hide field, smarter placement of toolbar

Actual result

Improper sizing/placement of toolbar and it hides the inline edit field

Other details (browser, OS, CKEditor version, installed plugins)

CKEditor 4.5.7, chrome

#14390 Indent plugin outdent doesn't work all the way using decimal ems confirmed Bug Normal
Description

Steps to reproduce

  1. Configure IndentOffset and indentUnit:
  CKEDITOR.config.indentOffset = 1.618;  
  CKEDITOR.config.indentUnit = 'em';
  1. Indent some text
  2. Outdent same text

Expected result

The element should not have the style attribute with the value "margin-left: 1.618em;"

Actual result

The element does have the style attribute with the value "margin-left: 1.618em;"

Other details (browser, OS, CKEditor version, installed plugins)

Chrome 48.0.2564.103 (64-bit) OSX 10.10.5

#14392 uiColor config option doesn't change editor's color with kama skin confirmed Bug Normal
Description

Steps to reproduce

  1. Change skin of editor to kama and set custom color with uiColor config option.

Expected result

Editor's layout's color is changed according to uiColor option.

Actual result

Editor's layout's color remains unchanged.

Other details (browser, OS, CKEditor version, installed plugins)

Tested in CKE 4.5.6 and 4.5.7, probably reproducible from 4.5.0.

#14393 New line after styled elements creates inline context which breaks pasting block elements. confirmed Bug Normal
Description

There are 3 cases for pasting block elements (e.g. headers):

  1. Pasting multilined block element always creates block element (when pasted inside inline or block context)
  2. Pasting singlelined block element creates:
    1. Inline element when pasted inside inline context
    2. Block element when pasted inside non-inline context

This is desirable behavior which works pretty well, but there is one case which breaks pasting block elements.

After creating a new line (by pressing enter) from end of the line with styled/formatted text, e.g. bolded text like <p><strong>Line1</strong></p>, new line is <p><strong>^</strong></p> so the typing is still in bold. But when block element is pasted inside this new line, it is treated as pasted inside inline context and changed to inline element - which is rather non-intuitive behavior. The line contains only empty inline element so pasting probably should create block element instead of inlining it.

Steps to reproduce

  1. Go to http://ckeditor.com/demo
  2. Paste the following html <h1><strong>Line 1</strong></h1><p>Line 2</p> in the source mode
  3. Switch back to WYSIWYG mode and select Line 1
  4. Click h1 tag on the bottom bar of the editor (where path of selected element is visible) to make sure header is correctly selected
  5. Press Ctrl + C to copy selection
  6. Click on the end of the line
  7. Press Enter and Ctrl + V to paste copied header

Expected result

Pasted header should still be a bolded header.

Actual result

Pasted header is bolded text.

Other details (browser, OS, CKEditor version, installed plugins)

Tested in Chrome with CKEditor 4.5.7 and 4.4.8. In both versions of CKEditor this issue occurs.

#14395 [Firefox] backspacing into a list with an empty list in between causes content to be removed confirmed Bug Normal
Description

Steps to reproduce

  1. go to the ckeditor demo page
  2. put the following html into the demo page
<ul>
    <li>dsadas</li>
    <li>dsa</li>
</ul>

<ol>
</ol>

<p>this will disappear</p>
  1. Place the cursor at the start of the paragraph tag and press backspace

Expected result

Under chrome - "this will disappear" will be merged into the list item "dsa". The empty ol in between will be removed.

Actual result

Under Firefox 44 - paragraph tag disappears, empty ol remains.

Other details (browser, OS, CKEditor version, installed plugins)

Firefox 44 and 44.0.1 on OSX.

#14397 [IE] Block Elements removed when we copy & paste confirmed Bug Normal
Description

This issue was separated from #14358 due to 14358#comment:8.


  1. Open a sample with ACF disabled.
  2. Create a Block level element ( ex: H1)
  3. select the Block lelvel elemnt( ex: H1) with mouse or use Shift + Home
  4. Ctrl + C to copy
  5. Press Enter to go to a new paragraph
  6. Ctrl + V to paste

Expected result

Block Level element(ex: H1) pasted properly with all attributes(if any applied)

Actual result

Pasted as plain text with out Block level element and it's attributes

This is a regression from 4.5.x & it's HIGH priority defect for us & we have customer PMR

#14398 Using the tab key to switch to multiple editors does not scroll down the page in Chrome confirmed Bug Normal
Description

Hi, with multiple CKEditor's on the page, navigating to them via tabbing does not scroll the page to the focused CKEditor in Chrome. This works in Firefox and IE. This is really important for accessibility for our users using Chrome.

Steps to reproduce

  1. In Chrome navigate to a page with many CKEditors http://ckeditor.com/demo#widgets
  2. Keep pressing tab to switch focus between editors
  3. You'll see the window does not scroll to the focused editor

Expected result

In IE and Firefox, the window scrolls to the focused editor so the user can see what they are typing.

Actual result

This is not the case in Chrome and the user can not see what they are typing unless they scroll the page with their mouse.

Other details (browser, OS, CKEditor version, installed plugins)

Happens in Chrome only.

#14399 Double indented nested list items confirmed Bug Normal
Description

Steps to reproduce

  1. Open full featured example
  2. Click increase indent and create list with one nested list

Expected result

Nested list has the same indent as the regular list

Actual result

Nested list has double indent

Other details (browser, OS, CKEditor version, installed plugins)

#14401 Make fake elements responsive or replace them with such confirmed New Feature Normal
Description

Fake elements are an good idea for elements like anchors or input type=hidden to make them visible. They are also used for elements like flash or iframe to make them clickable and editable. This works good with static sizes, but there are issues in modern homepages with responsive, scalable webdesigns.

Example: There is a responsive video in format 16:9, it has a 100% width on every viewport.

CSS:
.responsivevideo {
    width: 100%;
}
.responsivevideo:before {
    content: "";
    display: block;
    position: absolute;
    padding-bottom: 56.25%;
}
.responsivevideo video {
    width: 100%;
    height: 100%;
}

HTML:
<div class="responsivevideo">
	<video controls="controls">
		<source src="track.mp4" type="video/mp4" />
	</video>
</div>

Everything is working fine, no problem. But what happen in CKEditor? If you open the source in CKEditor, the video tag is replaced by a fake image. But the size of the fake image is not in format 16:9, because it is another element. It has the initial size of the fake element only.

So my idea is, why not cover the real element by an transparent image insteed of replacing it? The produced source could look like this:

<div class="responsivevideo">
	<img src="transparent.gif" data-cke-element="cover-someID" style="position: absolute; width:[ video width ]px; height:[ video height ]px; left:[ video left ]px; right:[ video right ]px;" />
	<video controls="controls" data-cke-element="covered-someID">
		<source src="track.mp4" type="video/mp4" />
	</video>
</div>

Elements like video, audio, flash or iframe would be visible. They are connected by data-cke-element="cover-someID" and data-cke-element="covered-someID", position and size of the video must be read and set to the cover image.

Another use case is the never ending story of uneditable form input fields. Simply covering the fields and everybody will be happy. Elements can have styles defined in CSS, are visible and editable. Fake elements only can have styles defined by the plugin.

#14406 [IE] Alignment/Indentation/Language direction lost when we copy & paste confirmed Bug Normal
Description

This issue was separated from #14391 due to ​#14391#comment:9.


Steps to reproduce

  1. Open nightly build
  2. Type few paragraphs & apply different Alignments(left, center, right, justify)
  3. Select a paragraph with alignment(ex: right), copy it and paste it.

Expected result

Paragraph pasted properly with correct alignment

Actual result

Paragraph pasted with out any alignment.

  1. Type few paragraphs & apply different Indentaions to them
  2. Select a paragraph with Indentation(ex: margin-left:40px;), copy and paste it.

Expected result

Paragraph pasted properly with correct indentation

Actual result

Paragraph pasted with out any indentation.

This is happening across all browsers

See also #14391#comment:2 for more tcs.

#14408 Inaccessible "OK" button in dialogs (Moono) confirmed Bug Normal
Description

Problem

The contrast between the white text and green background is too low to meet WCAG 2.0 AA for small text.

At the moment it looks like

Current colorset

but to meet WCAG 2.0 it must be more like

Required colorset

References

#14411 Removing content using backspace right after paste not triggering onChange event confirmed Bug Normal
Description

Steps to reproduce

  1. Open nightly build . http://nightly.ckeditor.com/16-02-17-07-09/full/samples/
  2. Open firebug or Chrome's developer tools' console tab.
  1. Copy, Paste & execute following command in the console:
CKEDITOR.instances.editor.on('change', function(){ console.log('onChange triggered') })
  1. Copy some text (ie. web or text editor) into clipboard using CTRL+C.
  1. Go to editor body, paste copied content using CTRL+V. It will trigger the console to display "onChange triggered".
  1. Now press Backspace to delete some content.

Issue : It won't trigger the onChange event to display "onChange triggered" message in console. But any Backspace after that will display the onChange message in console

#14412 <blockquote> breaks into 2 <blockquote> when you increase indent for Blockquote confirmed Bug Normal
Description

Steps to reproduce

This is happening with <blockquote> containing several lines of <br> and <div>.

Copy below code,paste in source mode & Go to Rich Text

<div dir="ltr">
aaaaaaaaaaaaaaaaaaaa
  <blockquote>
    bbbbbbbbb<br/>
    ccccccccc<br/>
    ddddddddd<br/>
    eeeeeeeee<br/>
    <div>
      ffffffffff
    </div>
  </blockquote>
</div>

Select the Blockquote using Elements path bar & click on Increase Indent button.

Issue: Block quote <blockquote> broken into 2 like:

<div dir="ltr">aaaaaaaaaaaaaaaaaaaa
<blockquote style="margin-left: 40px;">bbbbbbbbb<br />
ccccccccc<br />
ddddddddd<br />
eeeeeeeee</blockquote>

<blockquote>
<div style="margin-left: 40px;">ffffffffff</div>
</blockquote>
</div>

#14414 List created incorectly when confirmed Bug Normal
Description

Steps to reproduce

  1. Clear editor contents and paste following code in source mode
    <span style="font-family: arial;">Zeile1<br />
    Zeile2<br />
    Zeile3</span>
    
  2. Switch to wysiwyg, select all 3 lines and click the list button

Expected result

Whether this is enter-mode br or p, there should be a list with one element where content is separated by BRs.

<ul>
<li><span style="font-family: arial;">Zeile1<br />
 Zeile2<br /> 
 Zeile3</span>
</li>
</ul>

Actual result

Instead of one, three elements are created and BRs are now out of place.

<ul>
	<li><br />
	<span style="font-family:arial">Zeile1</span></li>
	<li><br />
	<span style="font-family:arial">Zeile2</span></li>
	<li><span style="font-family:arial">Zeile3</span></li>
</ul>

Other details (browser, OS, CKEditor version, installed plugins)

Three elements instead of one can be observed even in CKEditor 3.0.
Extra out of place BR’s can be reproduced from CKEditor 4.5.0

Problem occurs in every browser.

#14420 Bad source mapping included in the samples confirmed Bug Normal
Description

At the end of /samples/css/samples.css there's included this source mapping:

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2dsb2JhbC9nbG9iYWwubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2NvcmUvY29yZS5sZXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nrc291cmNlLXNhbXBsZXMtZnJhbWV3b3JrL2NvbXBvbmVudHMvZ3JpZC9ncmlkLmxlc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2tzb3VyY2Utc2FtcGxlcy1mcmFtZXdvcmsvbm9kZV9tb2R1bGVzL2xlc3NoYXQvYnVpbGQvbGVzc2hhdC5sZXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nrc291cmNlLXNhbXBsZXMtZnJhbWV3b3JrL2NvbXBvbmVudHMvaGVhZGVyLWEvaGVhZGVyLWEubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL25hdmlnYXRpb24tYS9uYXZpZ2F0aW9uLWEubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL25hdmlnYXRpb24tYi9uYXZpZ2F0aW9uLWIubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2Zvb3Rlci1hL2Zvb3Rlci1hLmxlc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2tzb3VyY2Utc2FtcGxlcy1mcmFtZXdvcmsvY29tcG9uZW50cy9jb250ZW50L2NvbnRlbnQubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2J1dHRvbi1hL2J1dHRvbi1hLmxlc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2tzb3VyY2Utc2FtcGxlcy1mcmFtZXdvcmsvY29tcG9uZW50cy9iYWxsb29uLWEvYmFsbG9vbi1hLmxlc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvY2tzb3VyY2Utc2FtcGxlcy1mcmFtZXdvcmsvY29tcG9uZW50cy9pY29uL2ljb24ubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL3N3aXRjaC9zd2l0Y2gubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL3RvZ2dsZXIvdG9nZ2xlci5sZXNzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2Nrc291cmNlLXNhbXBsZXMtZnJhbWV3b3JrL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2Jhc2ljc2FtcGxlL2NvcmUubGVzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ja3NvdXJjZS1zYW1wbGVzLWZyYW1ld29yay9jb21wb25lbnRzL2Jhc2ljc2FtcGxlL2Fkam9pbmVkLmxlc3MiLCIuLi8uLi9zYW1wbGVzL2xlc3MvY3VzdG9tLmxlc3MiLCIuLi8uLi9zYW1wbGVzL3Rvb2xiYXJjb25maWd1cmF0b3IvbGVzcy90b29sYmFybW9kaWZpZXIubGVzcyIsIi4uLy4uL3NhbXBsZXMvdG9vbGJhcmNvbmZpZ3VyYXRvci9sZXNzL2Jhc2UubGVzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBc0RBLFFBSGlDO0VBeUNoQztJQUNDLHdCQUFBOzs7QUMxRkY7QUFBUztBQUFPO0FBQVM7QUFBWTtBQUFRO0FBQVE7QUFBUTtBQUFRO0FBQU07QUFBTTtBQUFLO0VBQ3JGLGNBQUE7O0FBR0Q7QUFBTTtFQUNMLFNBQUE7RUFDQSxVQUFBO0VBQ0Esd0JETitCLHVDQ00vQjtFQUNBLGdCQUFBO0VBQ0EsY0FBQTs7QUNIQSxZQUFZO0VBQ1gsVUFBQTs7QUFERCxZQUFZO0VBQ1gsVUFBQTs7QUFERCxZ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 */

which decodes to

{"version":3,"sources":["../../node_modules/cksource-samples-framework/components/global/global.less","../../node_modules/cksource-samples-framework/components/core/core.less","../../node_modules/cksource-samples-framework/components/grid/grid.less","../../node_modules/cksource-samples-framework/node_modules/lesshat/build/lesshat.less","../../node_modules/cksource-samples-framework/components/header-a/header-a.less","../../node_modules/cksource-samples-framework/components/navigation-a/navigation-a.less","../../node_modules/cksource-samples-framework/components/navigation-b/navigation-b.less","../../node_modules/cksource-samples-framework/components/footer-a/footer-a.less","../../node_modules/cksource-samples-framework/components/content/content.less","../../node_modules/cksource-samples-framework/components/button-a/button-a.less","../../node_modules/cksource-samples-framework/components/balloon-a/balloon-a.less","../../node_modules/cksource-samples-framework/components/icon/icon.less","../../node_modules/cksource-samples-framework/components/switch/switch.less","../../node_modules/cksource-samples-framework/components/toggler/toggler.less","../../node_modules/cksource-samples-framework/components/modal/modal.less","../../node_modules/cksource-samples-framework/components/basicsample/core.less","../../node_modules/cksource-samples-framework/components/basicsample/adjoined.less","../../samples/less/custom.less","../../samples/toolbarconfigurator/less/toolbarmodifier.less","../../samples/toolbarconfigurator/less/base.less"],"names":[],"mappings":"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"}

as you can see, it references files like ../../node_modules/cksource-samples-framework/components/ that doesn't exist

#14424 Refactoring of the Popup plugin confirmed Bug Normal
Description

Problems

Popup is a utility used internally by various CKEditor plugins. It does the job but it is pretty useless when there's some complex case to handle.

  1. http://stackoverflow.com/questions/35493182/how-do-i-control-where-ckeditor-api-opens-a-new-new-window-for-the-filebrowserbr – Popup plugin overrides any geometry passed with options argument. So setting editor.config.fileBrowserWindowFeatures is useless, because whatever width|height|top|left is passed there, it will be discarded anyway.
  1. http://stackoverflow.com/questions/12636638/use-popup-window-to-open-html-document-and-call-methods-elements-within-it (https://dev.ckeditor.com/ticket/9403) – There is no way to obtain the window handler of the popup. Once it's open, there's no way to customise or control it. DOM does not offer any access to child "popup" windows so the only entry point is the value returned by window.open().

Solutions

  1. There are many possible improvements:

1.1. editor.popup() options argument could be a plain object, which can be iterated. If any property is included, then it's not generated by the Popup plugin (like: width in options? – don't calculate it). Drawback: losing backwards compatibility (changed type of an argument).

1.2. editor.popup() options argument remains string but is parsed to object and, as in 1.1., the plugin is smart when it comes to actually using it. This solution does not break backwards compatibility.

1.3. editor#beforePopup event, which passes all window.open() options, which can be intercepted by the listener and customised. It could be an independent feature (unrelated to 1.1. or 1.2.), giving control over any popup window, i.e. not limited to editor.config.fileBrowserWindowFeatures.

  1. The plugin could fire editor#popup event with the reference to the new window in the event data. One could listen to the event and intercept it.
#14427 Image2 widget isn't in the correct state after drag&drop confirmed Bug Normal
Description

Steps to reproduce

  1. Use a page with image2 and a captioned image
  2. Include also a way to check the currently selected widget like the attached plugin. Check that selecting the widget turns the smiley on and anything else turns it off
  3. Now drag&drop the image, select again using the cross handles

Expected result

toolbar Icon is on (widget is selected)

Actual result

the toolbar is off, clicking on the image doesn't turn it off until clicking somewhere else and the select the image again

Other details (browser, OS, CKEditor version, installed plugins)

Tested with Chrome

#14429 Webkit Blink add multiple &nbsp; to HTML pasted into contenteditable element. confirmed Bug Normal
Description

Steps to reproduce

  1. Go to https://en.wikipedia.org/wiki/HTTPS and copy first paragraph (from HTTPS to exchanged data)
  2. Paste it in to CKEditor and switch to source.

Expected result

Clean HTML without any extra &nbsp; before/after or between tags.

Actual result

HTML with extra &nbsp; before/after or between tags. It works as expected if I for example run this code in dev tools: console.log(document.getElementById('mw-content-text').getElementsByTagName('p')[0].innerHTML);

Other details (browser, OS, CKEditor version, installed plugins)

Reproducible in Win 7 and Mac on Safari and Chrome.

#14430 Splitting/merging table cells messes up table layout confirmed Bug Normal
Description

Steps to reproduce

  1. Create a table with 7 row, 5 cols. See attachment starting-table.png.
  2. Merge right cell B3.
  3. Merge right cell C4.
  4. Split vertical cell B4.
  5. Merge down cell E5. Then split vertical.
  6. Split horizontal cell C4.

Expected result

Step 6 should split the cell horizontally and table layout should be maintained properly.

Actual result

The table layout gets messed up. See resulting-table.png.

#14432 the traditional chinese translate for Insert/Remove Numbered List needs to revise confirmed Bug Normal
Description

Steps to reproduce

Here is the snapshot,

http://p.formosasoft.com/sysdata/album/81/54c114c257b44066d7f93e2eedc14919.png

Expected result

插入/移除編號清單

Actual result

插入/移除編號清單清單

#14434 Floating toolbar misplaced w/ body { position: relative; } and margin-top confirmed Bug Normal
Description

Steps to reproduce

  1. Create a page with: (see attachment)
    • <body style="position: relative"> (used by Foundation 5)
    • <div style="margin-top: 200px"></div> (any length works, but a large one makes it obvious)
    • <div contenteditable="true">
  2. Activate an inline editor on the last div.

Expected result

Toolbar appears at the top of the editable div.

Actual result

Toolbar appears 200px below that.

Other details (browser, OS, CKEditor version, installed plugins)

Tested most thoroughly in Safari on OS 10.11.3, but also occurs in Chrome on Windows (not certain of versions).

Occurs with just a CKEditor Basic install. Placing the attached file in the samples directory shows the error.

When determining the source of the error, I noticed that the floatspace plugin uses CKEDITOR.editable.getDocumentPosition() to get the values for the top and left CSS properties for the toolbar. The issue is that this function measures the position from the top of the document, which is not necessarily where CSS top measures from. The attached HTML uses jQuery to illustrate the difference, as $.fn.position() gets the correct value.

#14435 [Blink] Cursor disappears on removing selection confirmed Bug Normal
Description

Steps to reproduce

  1. Clear all contents, add only one paragraph
  2. Select the whole paragraph
  3. Click outside of paragraph but inside editor area

Expected result

Selection removed, cursor moved at the end of paragraph

Actual result

Selection removed, cursor disappears, typing/pasting is not possible

Other details (browser, OS, CKEditor version, installed plugins)

Chrome, CKEditor 4.5.7, Screencast: http://www.screencast.com/t/wmFKi1L7H5

#14436 [IE] Use color HEX format instead of RGB for colorpicker confirmed New Feature Normal
Description

Steps to reproduce

  1. Type any text in ckEditor4.5.6
  2. Apply the text-color
  3. Switch to source mode
  4. The color is using RGB format while we want HEX format
  5. P.S. We have changed color definition from SPAN to FONT using below code

config.colorButton_foreStyle = {

element: 'font', attributes: { 'color': '#(color)' }

};

Expected result

<font style="color: #000000">Hello</font>

Actual result

<font style="color: rgb(0, 0, 0);">Hello </font>

Other details (browser, OS, CKEditor version, installed plugins)

Browser – IE 11 OS – Windows 7 ckEditor – 4.5.6 Application – ASP.Net (Visual Studio 2013)

#14455 Control id attribute when pasting html to editor. confirmed New Feature Normal
Description

When pasting html to editor, it may contain some elements with id attributes. Pasting such content may result in invalid html with more than one element with identical id values.

While pasting, pasted and existing (in editor) content should be checked for identical ids. Such conflicts should be solved. There are few possibilities:

  1. Remove id attributes from pasted content.
  2. Remove id attributes from content in editor.
  3. Rename id attributes in pasted content (may be tricky in some cases).
  4. Rename id attributes in editor content (may be tricky in some cases).
  5. Do nothing, so the user should be aware that he can generate invalid html.

I think solutions 1 and 3 seems most reasonable.

#14501 [Blink] Range.enlarge behaves different with empty blocks. confirmed Bug Normal
Description

While using range.enlarge( CKEDITOR.ENLARGE_ELEMENT ) on selection like <p><b>[abc]</b><span class="foo"></span></p>, in Blink enlarging stops on empty span element while in other browsers (FF, IE, Edge) span is omitted so range fully enlarges to p element.

Steps to reproduce

  1. Open editor demo/sample.
  2. Set html to <p><b>abc</b><span class="foo"></span></p> (using dev console to make sure editor doesn't remove empty tags).
  3. Select abc.
  4. Run code:
var range = CKEDITOR.instances.editor.getSelection().getRanges()[0]; // preview range here
range.enlarge( CKEDITOR.ENLARGE_ELEMENT ); //preview range here

In Blink after enlarging:

  • startContainer: body
  • startOffset: 0
  • endContainer: p (p has 2 child nodes)
  • endOffset: 1

In other browsers:

  • startContainer: body
  • startOffset: 0
  • endContainer: body (body has 1 child node)
  • endOffset: 1

Expected result

Resulted range after using range.enlarge is same in all browsers.

Actual result

Resulted range after using range.enlarge is different in Blink browsers.

Not sure what should be expected behavior, if it should be same as in Blink or same as in FF/IE for all browsers.

Other details (browser, OS, CKEditor version, installed plugins)

Tested in CKEditor 4.5.7.

#14502 baseHref setting not used for loading resources in Сombo panels confirmed Bug Normal
Description

Steps to reproduce

  1. set CKEDITOR.config.baseHrefto root of www.site.com (for example)
  2. set CKEDITOR.config.contentsCss to point to some subfolder css — theme/test.css
  3. open editor from some subfolder page — www.site.com/pages/myeditor.html

Expected result

  1. Expect <base href="https://www.site.com/"> to be added in main iframe of editor
  2. Expect <base href="https://www.site.com/"> to addition iframes created for Combo boxes like «Styles» and «Formats» select

Actual result

  1. it's OK — we get base for main editor iframe
  2. it's fails as Combobox iframes have not base href, and style files paths expand to pages/theme/test.css and not to root theme/test.css so it's not found with 404 error.

Other details (browser, OS, CKEditor version, installed plugins)

This bug is located in Chrome browser (latest) on Windows7x64.

This bug is not revealed in Firefox as it treats all iframe loaded resources base relative to site root.

#14507 Ability to customize the position where the spinner icon is rendered on the dialog confirmed New Feature Normal
Description

We would like the ability to control the position of the spinner within the dialog. Currently it is attached to the dialog's title.

potentially this can be done by adding extra/optional parameter to the 'setState' dialog's method

setState: function( state, position ) {
var oldState = this.state;
...

this.parts.spinner.setHtml( '&#8987;' );
this.parts.spinner.appendTo( (position? position : this.parts.title), 1 );
}

// Finally, show the spinner.
this.parts.spinner.show();

....

#14514 AVT: JAWS users has no info when Insert Spanner is spinning on Insert Media dialog confirmed Bug Normal
Description

Steps to reproduce

  1. Open http://sdk.ckeditor.com/samples/mediaembed.html
  2. Open Insert Media dialog
  3. Enter a Video URL ( ex: https://vimeo.com/86541796 ) in URL field and click OK button
  4. Insert Spinner spins while waiting response from backend

Issue: JAWS not reading that info for user, it should say Loading or embedding to give info for screen reader user on what's happening similar to visual user.

This is AVT Violation

#14515 Nested widget hover css selects all children confirmed Bug Normal
Description

Steps to reproduce

  1. Create a widget.
  2. Place several widgets inside.
  3. Hover mouse over outer widget - all nested widgets get a yellow outline.

Expected result

Only the widgets being hovered over should get an outline.

Actual result

All children of the outermost widget get highlighted.

Other details (browser, OS, CKEditor version, installed plugins)

n/a

Fix

Currently the following css gets added to the page -

.cke_widget_wrapper:hover .cke_widget_editable {
	outline: 2px solid yellow;
}

Changing it to this fixes the issue -

.cke_widget_wrapper:hover > .cke_widget_editable {
	outline: 2px solid yellow;
}
#14516 Copy form Safari: broken encoding confirmed Bug Normal
Description

Steps to reproduce

  1. go to a CKEditor (e.g. http://ckeditor.com/demo) using the current Safari (tested with Version 9.0.3 (11601.4.4) on MacOSX 10.11.3)
  2. type a test with some accents or other encodings (e.g. "c'est l'été ô oui"; note for US keyboard use alt-E then E to enter é)
  3. copy that text and go to a "classical rich-text editor" of Apple such as TextEdit, Stickies and paste

Expected result

The text with accents should be pasted.

Actual result

The accents are broken (using the classic ut-8-file-is-read-with-some-8-bit-encoding pathology: most accents show as two unrelated characters)

Opening ClipboardViewer which lists the flavours, it seems like the public/html flavour is there but without any header that indicates the charset (whereas this header is there when copying in the same place with Firefox or Chrome).

Other details (browser, OS, CKEditor version, installed plugins)

browser and OS, see above. CKEditor version: today's version on ckeditor.com/demo. I seem to understand that there's no plugin playing here... but I am not sure.

#14517 Mouse Clicks break tab navigation in "html" element in dialog confirmed Bug Normal
Description

This is similar to issue #13088. I am using the "html" element in my plugin's dialog. Following the resolution to issue #13088, I am using the addFocusable to add <input> tags to the list of focusable fields. Tab navigation works. However, as soon as I mouse-click into a field, tab navigation is broken. Clicking with a mouse isn't recognized by ckeditor as changing the currently-focused item. As a result, the next <tab> goes to the wrong field.

Steps to reproduce

  1. Download the attached plug-in to plugins folder, and add to config.js

config.extraPlugins = 'bugplugin';

  1. Run the attached index.html and follow the steps given there.

Expected result

Mouse-clicking in Field N, then pressing <tab> should move focus to Field N+1.

Actual result

Focus is moved to the field after the last one that was tabbed into, not the last one that was clicked on.

Other details (browser, OS, CKEditor version, installed plugins)

#14520 SDK sample for balloonpanel confirmed Task Normal
Description

Let's create a meaningful SDK sample that would show how useful the Balloon Panel plugin can be without Accessibility Checker.

Features we'd like to highlight:

Setting custom content in the balloon panel. Automatic balloon repositioning on editor scroll (classic editor). Alignment to the borders of the viewport in case of classic editor. As for the content of this sample we're looking for propositions, so feel free to propose something that would make sense to end user/developer.

Related issue on SDK tracker: https://github.com/ckeditor/ckeditor-sdk/issues/173

#14521 Android backspace behaviour confirmed Bug Normal
Description

Steps to reproduce

  1. Using environment described below, go to http://ckeditor.com/demo#widgets
  2. In the "Code Snippets" example, place the cursor after a code snippet.
  3. Press the backspace key.

Expected result

The code snippet is deleted.

Actual result

The code snippet is not deleted.

Other details (browser, OS, CKEditor version, installed plugins)

Android with Chrome (probably any version but we received reports specifying the environments below) using the Google (i.e. default), Swiftkey or Swype keyboards. Issue does not present using Go or Touchpad keyboards.

Environments we have received reports on:

  • Vodafone Smart Ultra 6 with Android 5.1.1 and Chrome 49
  • Note 4 running Android 5.1.1 and Chrome 48.0.2564.95
  • Nexus 5 running Android 6.0.1 and latest Chrome
#14524 [IE] Destroying CKEditor prevents following input from focus confirmed Bug Normal
Description

Steps to reproduce

  1. Visit my plnkr here: http://embed.plnkr.co/LeTskAqj785Ic9dD2O6y/
  2. type something in CKEDITOR, press next
  3. click the input

Expected result

Input should receive focus

Actual result

No input is achieved

Other details (browser, OS, CKEditor version, installed plugins)

IE 9-11, Windows 10, CKEditor 4.5.1 - 4.5.7, plugins from standard cdn distro

In this limited scenario, you can gain focus if you keep clicking the input, but on heavier pages, the input will never gain focus.

#14525 Japanese charactor disappeared while typing confirmed Bug Normal
Description

Steps to reproduce

  1. In the editor demo (http://ckeditor.com/demo#standard), click inside the window and performed a CTRL+A to select all text, and then hit the Delete key.
  2. Once all data was deleted from that window, please select "Japanese" on the Windows language tool bar. Select the "Full-width Katakana" IME on the Windows language tool bar.
  3. Go to inside the editor window and hit Enter to move to second line.
  4. Hit the "A" key (あ) 30 times, and the cursor moved to the beginning of the line.
  5. Hit the "A" key once more, and then all but two characters disappeared from that line.

Expected result

The cursor should not be moved to the beginning of the next line. If I hit "A" key 31 times, there should be 31 charactors appeard.

Actual result

When I hit the "A" key 30 times, the cursor moved to the beginning of the next line. If I hit the "A" key once more, and all but two characters disappeared from that line.

Other details (browser, OS, CKEditor version, installed plugins)

I could reproduce this with CKEditor 4.5

#14526 Carriage return in empty list leaves childless list behind. confirmed Bug Normal
Description

Steps to reproduce

  1. Create an empty list
    <ul><li></li></ul>
    
  1. Press enter when caret is inside the first empty list item (it should already be here)
  2. Check the view source to see the current page source

Expected result

<p>&nbsp;</p>

Actual result

<p>&nbsp;</p>

<ul>
</ul>

The ul will be invisible as well, which is extra annoying.

Other details (browser, OS, CKEditor version, installed plugins)

I've tested this in both demo & nightly, on Chrome & Firefox.

#14529 Applying Styles can sometimes break existing content (especially widgets) confirmed Bug Normal
Description

Note: This is more prevalent when using BR as the enter mode and not using automatic paragraphs, which is our preferred configuration.

Steps to reproduce

  1. In the config, set enter mode to BR and automatic paragraph off
  2. In any container's editable portion (I am using a widget that emulates a bootstrap panel.) add some text, maybe even 2 lines
  3. using the styles dropdown, select 'Heading 2' to convert the text to an H2

Expected result

Selected text would be wrapped with an H2

Actual result

The container div gets converted to an H2 and any attributes are applied. This is what is breaking the widget editable portion.

Other details (browser, OS, CKEditor version, installed plugins)

using widget and some custom plugins that are simple bootstrap grid system and panels.

See attached picture.

#14530 Ckeditor allows to create multiple anchors with same name and id confirmed Bug Normal
Description

Steps to reproduce

1.click on anchor button,enter a name "Test"
2.Again click on anchor button ,enter "Test"

source view of two anchors:

<p><a id="Test" name="Test"></a></p>

<p><a id="Test" name="Test"></a></p>

Actual result: As shown above Ckeditor allows to create two anchors with same name and ID

Expected result: Ckeditor should not allow to create two anchors with same name and ID

#14532 Inconsistent API of dialog.openDialog confirmed Bug Normal
Description

In case of asynchronous loading of the dialog script with scriptLoader, dialog variable is null. In the other case, when the dialog had already been loaded, dialog variable points to the actual dialog.

As this API cannot be consistent because of asynchronous load, I'd suggest returning nothing. IOW remove the line with return

Also, the documentation is wrong.

See https://github.com/ckeditor/ckeditor-dev/commit/ebf122f4ab28dbae57fb6176d2e1d281486ae834#commitcomment-16761658

#14533 Selectors passed to CKEDITOR.dom.element.prototype.find are not properly escaped confirmed Bug Normal
Description

Steps to reproduce

  1. Open https://jsfiddle.net/5487w3gc/3/
  2. Click the button located under the editor.

Expected result

The alert with Test is shown.

Actual result

The alert with Error is thrown is shown.

Other details (browser, OS, CKEditor version, installed plugins)

The problem is located inside the getContextualizedSelector function inside core/dom/element.js file. It escapes only the id of the element. The proposed fix could split the selector on all special chars likely to appear in a CSS selector and escapes them separately: https://gist.github.com/Comandeer/de6c832993a8b9c21b01

Blocked on #14451 (as it introduces CKEDITOR.tools.escapeCss method).

#14540 Opening native context menu on a link & selecting "Open Link" results in new page loaded in content area confirmed Jakub Ś New Feature Normal
Description

Steps to reproduce

  1. Open nightly build http://nightly.ckeditor.com/16-03-22-07-07/full/samples/
  2. Keep cursor inside link(CK Editor)
  3. use CMD + Right click to ope Browser context menu
  4. Click on Open Link in Browser context menu

Expected result

EDIT: Since we can't change browser behaviour, there should be dialog displayed (fired on beforeunload event) asking if user wants to leave the page or not.

Actual result

Entire CKEditor content area is replaced by the CKEditor page and can't go back to editor body or click on any options in toolbar.

Other details (browser, OS, CKEditor version, installed plugins)

Safari, OS MAC

#14543 EDGE: Replacing text with empty string not working in Find & Replace dialog confirmed Bug Normal
Description

Steps to reproduce

  1. Open nightly build http://nightly.ckeditor.com/16-03-23-07-06/full/samples/
  2. Remove existing text and add test find and replace icon button
  3. Keep cursor at beginning of paragraph
  4. Open Find & Replace dialog, go to Replace tab, uncheck all checkboxes
  5. In Find what field type "find", In Replace with field leave it empty
  6. Click on Replace button
  7. It finds word find
  8. Click on Replace button again

Expected result

Find word is removed

Actual result == Find word not replaced

#14545 editor.showNotification doesn't handle line breaks confirmed New Feature Normal
Description

Steps to reproduce

  1. Load ckeditor.com/demo
  2. Open the console and execute
CKEDITOR.instances.editor1.showNotification("Hi\r\nWhat's up?")
  1. Compare with an editor without the notification plugin that will end up calling window.alert:
alert("Hi\r\nWhat's up?")

Expected result

The notification plugin should convert linebreaks into <br> so that any call to editor.showNotification is displayed in a similar way.

Actual result

alert shows the message in two lines, the html notification uses only one.

Other details (browser, OS, CKEditor version, installed plugins)

Introduced with the notifications plugin, I'm guessing 4.5 at least

#14548 EDGE: Not able to edit the Image if Image has Alignment set confirmed Bug Normal
Description

Steps to reproduce

  1. Open nightly build http://nightly.ckeditor.com/16-03-24-07-07/full/samples/
  2. Open Image Properties dialog, enter an Image URL ex: http://img2.3lian.com/2014/f5/158/d/86.jpg
  3. Select Alignment ( ex: Left)
  4. Click OK to insert the image.
  5. Right Click on Inserted Image.

Expected result

Context menu opens & it has Image Properties option.

Actual result

Context menu opens but it has no Image Properties option, so there is no way for user to edit the image

#14549 Safari 9: Link context menu opions are missing when image has alignment set confirmed Bug Normal
Description

Steps to reproduce

  1. Open any sample, e.g. http://nightly.ckeditor.com/16-03-24-07-07/full/samples/
  2. Insert a smiley into the editor
  3. Right click on the inserted smiley icon to open Image Properties dialog
  4. Apply alignment, e.g. Left
  5. Add a url in the 'Link' tab
  6. Click ok button
  7. Right click on the smiley icon

Expected result

Context menu opens with link options, e.g. edit link and unlink

Actual result

Context menu opens without link options

  1. Click back somewhere in the editor body to set focus on the editor
  1. Right click on the smiley icon and select Image Properties from the context menu

Expected result

User defined fields on Image Properties dialog are not empty

Actual result

All fields on Image Properties dialog are empty, e.g. url, alignment and url in the link tab

Other details (browser, OS, CKEditor version, installed plugins)

Safari 9

#14551 Add documentation to richcombo and listblock plugins. confirmed Task Normal
Description

Richcombo and listblock plugins are used by other plugins (like font plugin) to build drop-downs. They may (or even should) also be reused by other plugins which require dropdowns so there should be solid documentation for easier usage.

Currently documentation is missing and needs to be added.

#14557 [iOS] Long lines are not broken in the editable confirmed Bug Normal
Description

Test tests.ckeditor.dev:10458/tests/tickets/10448/2 shows a long line, without word-wrap taking any effect.

As reported in #16730 - tests/tickets/10448/1 is also failing.

It is to be determined if it's a bug of iOS Safari. If it is, then we can do nothing more than report the issue to upstream and set the VendorFix keyword.

#14558 Widgets gets deleted when editor is readonly confirmed Bug Normal
Description

Steps to reproduce

  1. Make editor readOnly in config
  2. Use a widget like placeholder
  3. Try to delete placeholder

Expected result

Do nothing

Actual result

Widget gets deleted in read only editor

Tested in 4.5.7 and 4.5.8

#14563 Active link cursor continues on new line when pressing enter confirmed Bug Normal
Description

Steps to reproduce

  1. Create a URL link
  2. Move the cursor to the end of the link (Press END)
  3. Press Enter (enter mode should ENTER_BR)

Expected result

Opening the link plugin now will open a dialog for creating a NEW link.

Actual result

Opening the link plugin now will start editing the link in the previous line.

Other details (browser, OS, CKEditor version, installed plugins)

After step (3), if i start typing again, the link blue special cursr will be gone and the regular black cursor will be back, that means, the link doesn't continue in the second line, only when i press enter. So now to disable the link effect, I type a letter and then remove it.

==

#14566 Link continues to the second line confirmed Bug Normal
Description

Steps to reproduce

  1. Clean editor contents and type 'dddd'
  2. Select this text and press link button, type any link and press OK.
  3. Press End button to move to the end of link and the Shift+Enter to insert BR
  4. Type 'eeee'. Everything is fine - text is unlinked.
  5. Press up arrow and End button to move to the end of the link
  6. Press Shift+Enter and start typing 'ffff'.

Expected result

Typed text should be unlinked

Actual result

Typed text is linked.

Other details (browser, OS, CKEditor version, installed plugins)

Problem can be reproduced at least from CKEditor 4.0

#14572 Drag & drop of anchor at edge of content to same location causes error confirmed Bug Normal
Description

You can see this on the current 4.5.8 demo @ http://ckeditor.com/demo . Tried on Chrome & Firefox.

  1. Sample content (source)

<a href="http://ckeditor.com/">link1</a> abc <a href="http://ckeditor.com/">link2</a>

  1. In WYSIWYG mode, drag & drop the link1 to the very beginning or link2 to the very end of the line.

The link disappears & there's an error in the console:

Uncaught TypeError: Cannot read property 'type' of null
window.CKEDITOR.window.CKEDITOR.dom.CKEDITOR.dom.range.setStart @ ckeditor.js:formatted:3729

which is at:

setStart: function(b, c) {
                b.type == CKEDITOR.NODE_ELEMENT && CKEDITOR.dtd.$empty[b.getName()] && (c = b.getIndex(),

Upstream of that, a has no parent node @ setStartAfter:

setStartAfter: function(a) {
                this.setStart(a.getParent(), a.getIndex() + 1)
            },
#14575 Page is scrolling down when I click on any panel element confirmed Bug Normal
Description

Steps to reproduce

  1. Go to http://ckeditor.com/demo#full-page
  2. Scroll page, so that editor appear in bottom of the screen.
  3. In editor, click "Source", delete all HTML content and Copy&Paste new content from here: http://pastebin.com/raw/U0QHSidz
  4. Сlick "Source" to switch from source mode to visual.
  5. Click any panel element, for example "B" (Bold) button.

Expected result

Page is not scrolled.

Actual result

Page is scrolled down.

Other details (browser, OS, CKEditor version, installed plugins)

If content have many lines, then page is scrolled very far. I have usual Chromium browser 49.0.2623.108

#14581 Pasting from MS Excel to CKEditor using IE loses background colors IF cells are resized from the default prior to copying confirmed Bug Normal
Description

I am aware of #6465 and the many duplicates, as well as #13623.

It seems likely that this issue is the same, in that CKEditor is depending upon what the browser sends from the system clipboard with the paste event. However, somehow, this works fine in Google Apps (Gmail) and Office 365 (I'm sure Office 365 has some kind of inside track here, but how would Google Apps?).

Perhaps CKEditor is removing the colors in this case?

We have received customer complaints regarding this issue, therefore I am obliged to report it.

Steps to reproduce

  1. Open MS Excel
  2. Add background colors to some cells
  3. Change the width of the cells in question
  4. Copy the cells
  5. Paste to CKEditor in IE browser window

Expected result

Background colors are maintained along with formatting

Result from editor.on("paste") event.data.dataValue without resizing the cells:

<table width="128" style="width: 96pt; border-collapse: collapse;" border="0" cellspacing="0" cellpadding="0"><font face="Times New Roman" size="3">

 </font><colgroup><col width="64" style="width: 48pt;" span="2"><font face="Times New Roman" size="3">
 </font><tbody><tr height="20" style="height: 15pt;"><font face="Times New Roman" size="3">
  </font><td width="64" height="20" style="border: 0px black; width: 48pt; height: 15pt; background-color: yellow;"><font face="Calibri" size="3">Test</font></td><font face="Times New Roman" size="3">
  </font><td width="64" style="border: 0px black; width: 48pt; background-color: transparent;"><font face="Calibri" size="3">Super</font></td><font face="Times New Roman" size="3">
 </font></tr><font face="Times New Roman" size="3">
 </font><tr height="20" style="height: 15pt;"><font face="Times New Roman" size="3">
  </font><td height="20" style="border: 0px black; height: 15pt; background-color: transparent;"><font face="Calibri" size="3">Super</font></td><font face="Times New Roman" size="3">
  </font><td style="border: 0px black; background-color: rgb(31, 73, 125);"><font face="Calibri" size="3">Test</font></td><font face="Times New Roman" size="3">
 </font></tr><font face="Times New Roman" size="3">

</font></tbody></table>

Actual result

Background colors are missing

Result from editor.on("paste") event.data.dataValue after resizing the cells:

<table width="157" style="width:157px;" border="0" cellspacing="0" cellpadding="0"><tbody><tr height="20"><td height="20" style="width:93px;height:20px;">Test</td><td style="width:64px;">Super</td></tr><tr height="20"><td height="20" style="height:20px;">Super</td><td>Test</td></tr></tbody><colgroup><col /><col /></colgroup></table>

Other details (browser, OS, CKEditor version, installed plugins)

Windows 7

MS Office 2010 Internet Explorer 11

CKEditor version 4.5.7

config = {
   "toolbar" : 'WCToolbar',
   "toolbar_WCToolbar" :
      [
        ['attachFileButton'],
        ['Font', 'FontSize', 'Bold', 'Italic', 'Underline', 'TextColor', 'BGColor', 'NumberedList', 'BulletedList', 'Blockquote', 'Outdent', 'Indent', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', 'Link', 'Image', 'addImage', 'spellCheckButton'],
        ['expandCollapseButton'],
        '/',
        ['Format','Styles', 'Strike','-','Subscript','Superscript', 'Table','HorizontalRule','SpecialChar', 'Unlink','Anchor', 'ShowBlocks','Source', 'Maximize','DocProps','-','Preview'],
        '/',
        ['Cut','Copy','Paste','PasteText','PasteFromWord','-','Print', 'Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat', 'Templates']
      ],
      "fontSize_sizes" : '8pt;9pt;10pt;12pt;14pt;18pt;24pt;36pt',
      "tabSpaces" : 5,
      "removePlugins" : 'elementspath,magicline',
      "allowedContent" : true,
      "extraPlugins": 'expandCollapseButton,altnplugin,attachFileButton,spellCheckButton,simpleuploads',
      "defaultLanguage" : 'en',
      "disableNativeSpellChecker" : false,
      "browserContextMenuOnCtrl" : true,
      "enterMode" : CKEDITOR.ENTER_DIV,
      "skin" : 'office2013',
      "resize_enabled" : false,
      "toolbarCanCollapse" : false,
      "toolbarStartupExpanded" : false,
      "image_previewText" : ' ',
      "removeDialogTabs": 'link:upload',
      "templates_files": [ '&View=StandardResponses' ],
      "templates_replaceContent" : false,
      "startupFocus" : true,
      "contentsCss" : "&View=Compose&ContentType=css&ReturnCSS=1",
      "extraAllowedContent": 'div b i a table thead tbody tfoot tr th td',
      "pasteFromWordRemoveFontStyles" : false,
      "pasteFromWordRemoveStyles" : false,
      "customConfig":""
}
#14586 Copy-paste in Firefox results in extra spaces confirmed Bug Normal
Description

Steps to reproduce

  1. Make a selection in the text that doesn't begin or end with a space (best illustrated with part of a word).
  2. Copy to clipboard
  3. Paste it somewhere in the editor

Expected result

The pasted content should be exactly the same.

Actual result

It adds a space before and after the selection.

Other details (browser, OS, CKEditor version, installed plugins)

This seems to only happen in Firefox. Currently using version 45.0.2. Can be reproduced in the official CKEditor demo as well.

#14588 CKEditor doesn’t translate 4-byte entities correctly. confirmed Bug Nice to have (we want to work on it)
Description

Steps to reproduce

Based on: http://stackoverflow.com/questions/36574026/disable-conversion-of-html-entities-in-ckeditor

  1. Set below configuration in your CKEditor test page
    CKEDITOR.replace( 'editor1', {
    	//entities_processNumerical : 'force'
    	entities_additional : '#128247'
    } );
    
  1. Paste the following text into editor and switch to source (and back) "Foo 📷 Bar"

Expected result

Camera character translated to entity &#128247;

Actual result

For setting entities_processNumerical : 'force' you will get &#55357;&#56567; in source mode and �� in wysiwyg view.

For setting entities_additional : '#128247' you will get &#128247;&undefined; in source mode and 📷&undefined; in wysiwyg view. The undefined word will be added every time you change modes.

Other details (browser, OS, CKEditor version, installed plugins)

When I checked in code it looks like character is ok in here: https://github.com/ckeditor/ckeditor-dev/blob/master/plugins/entities/plugin.js#L152 but gets destroyed here: https://github.com/ckeditor/ckeditor-dev/blob/master/plugins/entities/plugin.js#L152. It looks like replace method is breaking it.

Now, I'm not sure if this is a problem and if replace method is using charCodeAt or fromCharCode but these methods e.g. charCodeAt return codes between 0 and 65535 and this seems to be what is happening here. Every character with code below 65356 is a 3-byte character and is handled properly but starting from 65536 4-byte characters get split into two entities.

Links:

#14591 French localization: Overlapped labels on flash properties windows confirmed Bug Normal
Description

Repro steps:

  1. Change localization to French
  2. Click on Flash icon
  3. Click on flash icon on CKE editor. Flash properties window will open

Actual Result: Horizontal spacing and vertical spacing strings are getting overlapped.

Expected Result: Horizontal spacing and vertical spacing strings should not overlap image

Problem: French localization for flash plugin(plugins/flash/lang/fr-ca.js) is using too long label (in another languages are using short version - hSpace: 'HSpace'):

hSpace: 'Espacement horizontal', As possible solution can be make this text shorter.

https://cloud.githubusercontent.com/assets/5136213/14557626/e3747b72-0306-11e6-979d-0153aa3e0d00.png

#14593 CHROME: Copying & pasting content from one editor instance to another removing all styles confirmed Bug Normal
Description

Steps to reproduce

  1. Open nightly build http://nightly.ckeditor.com/16-04-18-06-06/full/samples/ in two tabs
  2. Add text in one editor and apply different formatting to text(ex: font name, font size, text/background color, Alignment, Indentation)
  3. Select the text & use Ctrl + C to copy the text
  4. Go to editor in next tab, clear existing content & paste the copied content from editor in previous tab

Expected result

Pasted content should have all the styles of the txt copied from previous editor

Actual result: Pasted text has no styles

This is a regression in 4.5 & it's working properly in 4.4.8

#14598 Order of style properties is changed when inserting content confirmed Bug Normal
Description

Steps to reproduce

Insert a new element with insertHtml(). The inline style contains a border and a border-top property (in this order):

<div style="border:none; border-top:solid #E1E1E1 1.0pt;"></div>

(see https://jsfiddle.net/Papillon/h6w4w1ah/, click on the insert content button)

The inserted element should have a top border, since this property was defined last. I belive content filtering reverses the properties, so the element gets no border.

Expected result

<div style="border:none; border-top:solid #E1E1E1 1.0pt;"></div>

The element should have a top border.

Actual result

<div style="border-top:solid #E1E1E1 1.0pt; border:none; "></div>

The element has no top border.

Other details (browser, OS, CKEditor version, installed plugins)

Chrome 49, Firefox 45, CKEditor standard package

#14604 [Skin building] Some versions of ImageMagic may corrupt icons while processing. confirmed Task Low
Description

While generating new icons using iconmaker.js script (./dev/iconmaker/iconmaker.js) we discovered that some icons generated on Linux and Mac differs.

On Linux current version is:

Version: ImageMagick 6.7.7-10 2014-03-06 Q16 http://www.imagemagick.org

and on Mac:

Version: ImageMagick 6.9.3-7 Q16 x86_64 2016-03-27 http://www.imagemagick.org

The problem is with newer version on Mac (which will probably land one day on Linux too) for specific icons it adds some blurring/background (not sure how to call it). It can be seen on attached screenshot comparing generated icons (left - mac, right - Linux).

It's not a big deal for now but we should keep in mind that such problem exists and may return in future.

ImageMagick convert method which is used by the script have plenty of options and maybe some of them may help to solve the issue.

#14606 Problem with TableResizer confirmed Bug Normal
Description

Hi,

I've found an issue with code below when trying to resize last column. The resizer cursor show on whole width of last column instead of its borders. I can't resize it aswell

<table border="1" cellpadding="0" cellspacing="0" style="width:100%">
	<tbody>
		<tr>
			<td rowspan="2">&nbsp;</td>
			<td colspan="4" rowspan="1">&nbsp;</td>
			<td rowspan="2">&nbsp;</td>
		</tr>
		<tr>
			<td>&nbsp;</td>
			<td>&nbsp;</td>
			<td style="width: 206px;">&nbsp;</td>
			<td style="width: 324px;">&nbsp;</td>
		</tr>
	</tbody>
</table>
#14608 The inline editor is not scrolling inside scrollable div confirmed Bug Normal
Description

Steps to reproduce

  1. Create a scrollable div
  2. Inside that scrollable div, add content so that it can actually scroll
  3. Put a inline-editor into to div by setting one div into contenteditable.

Reference: https://jsfiddle.net/pteryvk3/6/

Expected result

The inline editor should scroll with the div and behaves as in official demo page. http://ckeditor.com/demo#inline

Actual result

It doesn't scroll.

Other details (browser, OS, CKEditor version, installed plugins)

This has been tested using Internet Explorer 11.212.10586, Chrome 49.0.2623.112, Firefox 43.0.1, Edge 25.10586.0.0 under Windows 10 CDN is used to include the editor and no plugin is used.

#14614 Whitespace is removed when pasting content in visual mode confirmed Bug Normal
Description

This behavior changed between v4.5.4 and v4.5.7. In v4.5.4, if you pasted content with whitespace, the whitespace was preserved. In v4.5.7, the whitespace is trimmed. It appears on the current demo page as well.

Steps to reproduce

  1. Open http://ckeditor.com/demo
  2. Switch to Source mode
  3. Add a fixed width section, like:
    <pre>
      |\_/|
     / @ @ \
    ( > º < )
     `>>x<<´
     /  O  \
    </pre>
    
  4. Switch back to WYSIWYG mode
  5. Copy the ASCII art
  6. Paste it. Consecutive whitespace is removed.
  7. Switch back to Source mode. Paste. Whitespace is retained

Expected result

In either visual or source mode, the whitespace is retained.

Actual result

Whitespace is only retained in source mode.

Other details (browser, OS, CKEditor version, installed plugins)

Also reproduces on developer.mozilla.org, using CKEditor v4.5.7. and plugins:

dialogui, dialog, a11yhelp, autogrow, basicstyles, bidi, blockquote, clipboard, panel, floatpanel, menu, contextmenu, dialogadvtab, elementspath, enterkey, entities, find, htmlwriter, image, indent, indentlist, button, menubutton, language, fakeobjects, link, list, liststyle, magicline, maximize, pastefromword, pastetext, removeformat, resize, scayt, sharedspace, showblocks, showborders, sourcearea, listblock, richcombo, stylescombo, tab, table, tabletools, toolbar, undo, wsc, wysiwygarea, mdn-attachment, mdn-format, mdn-sticky-toolbar, mdn-image-attachment, mdn-link-customization, mdn-link-launch, mdn-redirect, mdn-sample-finder, mdn-sampler, mdn-spell, mdn-syntaxhighlighter, mdn-system-integration, mdn-table-customization, mdn-toggle-block, mdn-wrapstyle, mdn-youtube, descriptionlist, tablesort, texzilla

#14615 protected source in attributes modified in custom html elements confirmed Bug Normal
Description

With angular, it is a common practice to define new HTML elements, and it is also needed to protect angular code, but CKEditor change attributes if they are in a custom tag and protected with protectedSource

This bug is related to a previous one that changed attributes in regular HTML tags: https://dev.ckeditor.com/ticket/4475

Steps to reproduce

  1. protect angular code with the following in config:

protectedSource: [ /{{[\s\S]*?}}/g ]

  1. put the following in source:

<custom-directive data="{{ item }}">test</custom-directive> <div data="{{ item }}">test</div>

Expected result

<custom-directive data="{{ item }}">test</custom-directive> <div data="{{ item }}">test</div>

Actual result

<custom-directive data="&lt;!--{cke_protected}%7B%7B%20item%20%7D%7D--&gt;">test</custom-directive> <div data="{{ item }}">test</div>

#14619 Unable to resize editor on mobile confirmed Tade0 Bug Normal
Description

Resize handler does not work on mobile browsers. Tested both on Android and iOS.

#14622 Borders lost when pasting from libre office calc from Chrome Windows - config.allowedContent off or with ACF filters confirmed Bug Normal
Description

Steps to reproduce

  1. open attached table.ods, select the table and copy to clipboard
  2. paste into CKeditor content on provided html template
  3. compare result to old attached image

Expected result

Table with same styles and black borders should appear just like on LibreOffice Calc.

Actual result

Borders are not defined. Style tags are being filtered out even though allowedContent has them enabled. allowedContent=true does not work either. The result started happening on 4.5.0. Version 4.4.8 is not affected.

Other details (browser, OS, CKEditor version, installed plugins)

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.94 Safari/537.36 No installed chrome plugins

Note: See TracQuery for help on using queries.
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy