Opened 9 years ago
Closed 9 years ago
#14825 closed Bug (fixed)
[Edge] Dropped support for `setActive` (used to focus editor in some cases).
Reported by: | kkrzton | Owned by: | kkrzton |
---|---|---|---|
Priority: | Normal | Milestone: | CKEditor 4.5.11 |
Component: | General | Version: | |
Keywords: | Cc: |
Description (last modified by ) ¶
The parent task is #14819.
The newest version of Edge browser (Edge 38.14393, EdgeHTML 14.14393) dropped support for setActive
which is used to focus editor in some cases (e.g. divarea plugin) to prevent unwanted scrolling.
While focus
should be probably used in this case, it causes this unwanted scrolling so some workaround should be also applied.
Steps to reproduce ¶
- Go to
plugins/divarea/samples/divarea.html
. - Run
CKEDITOR.instances.editor1.editable().find('table').getItem(0).scrollIntoView()
in the console. - Run
CKEDITOR.instances.editor1.focus()
in the console.
To check if editor was focused use document.activeElement
.
Expected result ¶
Editor should be focused without scrolling.
Actual result ¶
Editor is focused and scrolled to the top.
Other details (browser, OS, CKEditor version, installed plugins) ¶
Edge (Edge 38.14393, EdgeHTML 14.14393)
This issue causes some unit tests fails in:
- tests/core/config/inline
- tests/core/dom/documentfragment
- tests/core/editable/domfix2
- tests/core/editable/wysiwyg
- tests/core/editor/title
- tests/core/filter/editor
- tests/core/selection/editor
- tests/core/selection/fake
- tests/plugins/autoembed/autoembednotifications
- tests/plugins/floatingspace/floatingspace
- tests/plugins/image/image
- tests/plugins/mathjax/mathjax-mock
- tests/plugins/pastefromword/pastefromword
- tests/plugins/sourcearea/source
- tests/plugins/uploadimage/uploadimage
- tests/tickets/11500/1
At least using focus
(instead of setActive
) fixes the tests but scrolling problem remains.

Change History (9)
comment:1 Changed 9 years ago by
Status: | new → confirmed |
---|
comment:2 Changed 9 years ago by
Description: | modified (diff) |
---|
comment:3 Changed 9 years ago by
Owner: | set to kkrzton |
---|---|
Status: | confirmed → assigned |
comment:4 Changed 9 years ago by
comment:5 Changed 9 years ago by
This one was a little tricky to track, but:
- The scrolling is caused by a native
focus
call (not by a custom logic as I assumed in a previous comment). - The scrolling effect does not occur when debugging via dev console (active breakpoints - pausing the code execution).
- The scrolling occurs only when
focus
is executed via code (not initiated by user interaction) - that's why here http://jsfiddle.net/f1ames/v1bbspoe/1 clicking button does not cause scrolling but timeout call does. - The scroll caused by
focus
happens in async way so the new scrollTop value should be retrieved in a deferred way afterfocus
is called.
comment:6 Changed 9 years ago by
Status: | assigned → review |
---|
Pushed fix to t/14825.
One thing to notice is that the scroll happens only if editor is focused for the first time. If it was focused before, refocusing works as expected.
comment:7 Changed 9 years ago by
Status: | review → assigned |
---|
comment:8 Changed 9 years ago by
Status: | assigned → review |
---|
comment:9 Changed 9 years ago by
Milestone: | → CKEditor 4.5.11 |
---|---|
Resolution: | → fixed |
Status: | review → closed |
Fixed with git:3f95046.

After further investigating this issue it seems that not the native
focus
is the reason of unwanted scrolling (http://jsfiddle.net/f1ames/v1bbspoe/) but some customfocus
post-logic.