Opened 15 years ago
Closed 15 years ago
#5570 closed Bug (fixed)
[IE] SCAYT load blind cursor in document
Reported by: | Garry Yao | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | CKEditor 3.3 |
Component: | UI : Spell Checker | Version: | |
Keywords: | Confirmed IE Review+ | Cc: | WebSpellChecker.net |
Description
Environment
All IE versions.
Reproducing Procedures
- Open the 'replacebyclass' sample page;
- Enable SCAYT, before SCAYT get really enabled, put cursor into the document;
- Do nothing until SCAYT button has shown toggled on.
- Actual Result: Cursor is not blinking inside the document anymore.
Attachments (2)
Change History (18)
comment:1 Changed 15 years ago by
comment:3 Changed 15 years ago by
The bug is fixed by recent SCAYT core updates, but when using menu button to enable SCAYT, the cursor still get blinded by that, we need put focus manually into editor after SCAYT menu get closed, BTW, attachment:ticket:5572:5572.patch doesn't fix the problem.
comment:4 Changed 15 years ago by
Keywords: | Review? added |
---|
attachment:ticket:5572:5572_2.patch and new core resolve the problem
comment:5 Changed 15 years ago by
Keywords: | Review- added; Review? removed |
---|
The cursor has to be blinking inside document as soon as the SCAYT menu is closed, instead of on load of SCAYT.
comment:6 Changed 15 years ago by
attachment:ticket:5572:5572_3.patch and new core resolve the problem
comment:7 Changed 15 years ago by
By looking at the patch, I recognize a misunderstanding here, that SCAYT should NOT imply editor focus, by meaning of that, any SCAYT operations could only continue the focus status of the editor instead of changing it, e.g. when editor doesn't have initial focus, open SCAYT won't force it.
comment:9 Changed 15 years ago by
Block Styles, Paragraph Format, Font Name, Font Size, Text Color, Text Background are changing the focus status. Should SCAYT do the same or should it behaves differently?
We use editor.focus(); on line 343 in exec method to make SCAYT behaves the same way as controls described above do.
comment:10 Changed 15 years ago by
The listed commands are to change the editor contents and thus are different with SCAYT, SCAYT behavior could be compared to commands like 'maximize' and 'showblock'.
comment:11 follow-up: 12 Changed 15 years ago by
We have tried to prepare the solution which stores editor focus state (by attaching listeners to onfocus and on blur) on scayt toolbar button click and restore it on scayt.exec.
We have reviewed the implementation and found that scayt toolbar button is implemented on the base of menubutton plug-in, which is based on contextmenu plug-in. menubutton plug-in directly calls contextMenu.show method, while its' first routine is editor.focus(). menubutton plug-in allows to attach onMenu listener, but it fires after the show method is called. So we always get the same value for the focus state (focused), i.e. couldn’t get focus state from scayt plug-in using current architecture.
Could you please advice how we can correctly obtain focus state from the CKEditor perspective?
comment:12 Changed 15 years ago by
Could you please advice how we can correctly obtain focus state from the CKEditor perspective?
We've opened #5681 to resolve the problem you described here.
comment:13 Changed 15 years ago by
In the editor point of view, it's ok for the menu button to always move the focus into the editor. So, if SCAYT is activated through the menu, it can move the focus to the editor (so it's ok to always have the state "focused", as you're having).
But note that, there is a delay between the menu click and the SCAYT activation. So, after the click, the focus can go to the editor (as it's going), but if the user moves out of the editor, SCAYT must *not* move the focus back to the editor once the (asynchronous) activation is complete.
Changed 15 years ago by
Attachment: | 5572.patch added |
---|
Changed 15 years ago by
Attachment: | 5570.patch added |
---|
comment:14 Changed 15 years ago by
Patch 5570 is based on patches for #5572 and *restore* focus on SCAYT load and set focus on SCAYT enable/disable
comment:15 Changed 15 years ago by
Keywords: | Review? added; Review- removed |
---|
comment:16 Changed 15 years ago by
Keywords: | Review+ added; Review? removed |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Fixed with [5505].
Note that disable/re-enable SCAYT also blink the cursor necessarily.