#4797 closed Bug (fixed)
Opera: using enter key in dialogs triggers javascript error
Reported by: | Wiktor Walc | Owned by: | Garry Yao |
---|---|---|---|
Priority: | Normal | Milestone: | CKEditor 3.3 |
Component: | General | Version: | 3.0.1 |
Keywords: | Confrmed Opera | Cc: | Alfonso Martínez de Lizarrondo |
Description (last modified by )
When pressing enter in the dialog, an error occurs
Steps to reproduce (1)
- select some text
- open link dialog
- type some url and press enter (without moving with a tab to the "ok" button)
- result:
Event thread: change Error: name: TypeError message: Statement on line 2255: Cannot convert undefined or null to Object stacktrace: Line 2255 of linked script http://127.0.0.1/ckeditor%203.0.x/_source/plugins/dialog/plugin.js return this.getInputElement().getValue(); Line 72 of linked script http://127.0.0.1/ckeditor%203.0.x/_source/plugins/dialogui/plugin.js function(){ this.fire( 'change', { value : this.getValue() } ); } ... Line 150 of linked script http://127.0.0.1/ckeditor%203.0.x/_source/core/event.js listenerFunction.call( scopeObj, ev ); ... Line 245 of linked script http://127.0.0.1/ckeditor%203.0.x/_source/core/event.js var retData = listeners[i].call( this, editor, data, stopEvent, cancelEvent ); Line 48 of linked script http://127.0.0.1/ckeditor%203.0.x/_source/core/dom/domobject.js domObject.fire( eventName, new CKEDITOR.dom.event( domEvent ) ); ...
Attachments (4)
Change History (21)
comment:1 Changed 15 years ago by
Description: | modified (diff) |
---|---|
Summary: | Opera: using enter key in dialogs causing various issues → Opera: using enter key in dialogs triggers javascript error |
Changed 15 years ago by
Attachment: | 4797.patch added |
---|
comment:2 Changed 15 years ago by
Keywords: | Review? added |
---|---|
Owner: | set to Minh Nguyen |
Status: | new → assigned |
comment:3 Changed 15 years ago by
comment:4 Changed 15 years ago by
In this bug, Opera try to access url field when popup dialog has hidden.
comment:5 Changed 15 years ago by
We've seen similar bugs before, those are #3794, #4101, etc...
Minh's patch definitely works to eliminate this bug, while I'm smelling something wrong from the dialog hiding logic, [ http://dev.fckeditor.net/browser/CKEditor/trunk/_source/plugins/dialog/plugin.js#L807
where] the element will be detached from DOM tree, this's weird actually, never seen [any http://www.extjs.com/deploy/dev/examples/window/hello.html] other dialog implementation doing that, simply toggle the dialog element gain performance benefit as well.
Changed 15 years ago by
Attachment: | 4797_2.patch added |
---|
comment:6 follow-up: 8 Changed 15 years ago by
Cc: | Alfonso Martínez de Lizarrondo added |
---|---|
Keywords: | Discussion added |
We need hear some voices here.
comment:7 Changed 15 years ago by
Keywords: | Review- added; Review? removed |
---|
If you test with the ajax sample you'll see that now every dialog that has been launched will remain hidden in the page body even after the editor is destroyed.
I (mistakenly) thought that the current behavior was to hide the dialogs instead of destroying them, it just makes sense to avoid creating the dom again. I don't know why it's done this way.
comment:8 Changed 15 years ago by
Keywords: | Discussion removed |
---|
Replying to garry.yao:
We need hear some voices here.
I'm ok to have the dialogs hidden only. I think the original intention was to keep the DOM clean, but we should not have such a drastic impact with it.
Alfonso's notes must be considered though.
comment:9 Changed 15 years ago by
Owner: | changed from Minh Nguyen to new |
---|---|
Status: | assigned → new |
Changed 15 years ago by
Attachment: | 4797_3.patch added |
---|
comment:10 Changed 15 years ago by
Keywords: | Review? added; Review- removed |
---|---|
Owner: | changed from new to Garry Yao |
Status: | new → assigned |
comment:11 Changed 15 years ago by
Keywords: | Review+ added; Review? removed |
---|
comment:13 follow-up: 16 Changed 15 years ago by
Keywords: | Review+ removed |
---|---|
Resolution: | fixed |
Status: | closed → reopened |
The following regression is seen after the fix:
Reproducing Procedures
- Load the 'Ajax' sample page and click 'Create Editor' button;
- Open any of the the dialog;
- Execute the following lines of JavaScript in global scope:
removeEditor();
- Click once again 'Create Editor' and open the same dialog;
- Actual Result: Dialog opened with no viewport cover.
Changed 15 years ago by
Attachment: | 4797_4.patch added |
---|
comment:14 Changed 15 years ago by
Keywords: | Review? added |
---|
The patch providing the ability for caching dialog covers.
comment:15 Changed 15 years ago by
Please DO NOT reuse tickets for regressions, opening new tickets for them, possibly pointing to the changesets that introduced them.
comment:16 Changed 15 years ago by
Keywords: | Review? removed |
---|---|
Resolution: | → fixed |
Status: | reopened → closed |
#5618 is opened for it.
Could you explain what's happening here?