Opened 5 years ago

Last modified 5 years ago

#11239 confirmed Bug

Dialog submit/cancel actions do not verify whether dialog is still opened

Reported by: Frederico Caldeira Knabben Owned by:
Priority: Low Milestone:
Component: UI : Dialogs Version:
Keywords: Cc:

Description

  1. Click "New Page".
  2. Click the table icon.
  3. Without any change, hit ENTER to insert the table.

Two tables are inserted.

Confirmed in IE9, IE10 and Firefox (randomly) on Windows. I was not able to reproduce it on Mac.

Attachments (1)

#11239 - Screencast.mp4 (548.4 KB) - added by Frederico Caldeira Knabben 5 years ago.

Download all attachments as: .zip

Change History (6)

comment:1 Changed 5 years ago by Piotrek Koszuliński

Status: newpending

I cannot reproduce this on IE9 and Firefox on master and 4.3.

comment:2 Changed 5 years ago by Jakub Ś

@fredck I have tried latest master/major, clicking with mouse, using keyboard and could not get result you were talking about.

Changed 5 years ago by Frederico Caldeira Knabben

Attachment: #11239 - Screencast.mp4 added

comment:3 Changed 5 years ago by Frederico Caldeira Knabben

Just reproduced this on current master with IE10... see attached screenshot.

comment:4 Changed 5 years ago by Piotrek Koszuliński

Component: Core : TablesUI : Dialogs
Priority: NormalLow
Status: pendingconfirmed
Summary: Two tables inserted when confirming dialog with ENTERDialog submit/cancel actions do not verify whether dialog is still opened
Version: 4.3.1

It turned out that apparently enter pressed on our VM trigger enter event twice and most likely these are synchronous calls, so dialog is submitted twice before focus is moved back to editable.

It can be programatically triggered with:

var dialog = CKEDITOR.dialog.getCurrent();
dialog.getButton( 'ok' ).click();
dialog.getButton( 'ok' ).click();

This reveals a small issue, because dialog could verify whether it's still opened (dialog.getCurrent() returns null synchronously after first click, so it's synchronously closed). We could fix this, but it seems as a very rare (only one of us can reproduce it) and VM-only issue.

comment:5 Changed 5 years ago by Marek Lewandowski

I could not repro it using native IE10@win8 and virtualized IE9@win7 (virtualBox)

You are able to abuse this dialog sending multiply enters very quickly (like with script or sth). PK pointed out that you can also do so with js calls.

Note: See TracTickets for help on using tickets.
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy