if ( elementDefinition.labelLayout != 'horizontal' )\r
html.push( '<label class="cke_dialog_ui_labeled_label' + requiredClass + '" ',\r
' id="'+ _.labelId + '"',\r
- ' for="' + _.inputId + '"',\r
+ ( _.inputId? ' for="' + _.inputId + '"' : '' ),\r
( elementDefinition.labelStyle ? ' style="' + elementDefinition.labelStyle + '"' : '' ) +'>',\r
elementDefinition.label,\r
'</label>',\r
if ( elementDefinition.inputStyle )\r
attributes.style = elementDefinition.inputStyle;\r
\r
- // If user presses Enter in a text box, it implies clicking OK for the dialog.\r
- var me = this, keyPressedOnMe = false;\r
- dialog.on( 'load', function()\r
- {\r
- me.getInputElement().on( 'keydown', function( evt )\r
- {\r
- if ( evt.data.getKeystroke() == 13 )\r
- keyPressedOnMe = true;\r
- } );\r
-\r
- // Lower the priority this 'keyup' since 'ok' will close the dialog.(#3749)\r
- me.getInputElement().on( 'keyup', function( evt )\r
- {\r
- if ( evt.data.getKeystroke() == 13 && keyPressedOnMe )\r
- {\r
- dialog.getButton( 'ok' ) && setTimeout( function ()\r
- {\r
- dialog.getButton( 'ok' ).click();\r
- }, 0 );\r
- keyPressedOnMe = false;\r
- }\r
- }, null, null, 1000 );\r
- } );\r
-\r
/** @ignore */\r
var innerHTML = function()\r
{\r
' frameborder="0"' +\r
' allowtransparency="0"' +\r
' class="cke_dialog_ui_input_file"' +\r
+ ' role="presentation"' +\r
' id="', _.frameId, '"' +\r
' title="', elementDefinition.label, '"' +\r
' src="javascript:void(' ];\r
if ( elementDefinition.size )\r
size = elementDefinition.size - ( CKEDITOR.env.ie ? 7 : 0 ); // "Browse" button is bigger in IE.\r
\r
+ var inputId = _.frameId + '_input';\r
+\r
frameDocument.$.write( [ '<html dir="' + langDir + '" lang="' + langCode + '"><head><title></title></head><body style="margin: 0; overflow: hidden; background: transparent;">',\r
'<form enctype="multipart/form-data" method="POST" dir="' + langDir + '" lang="' + langCode + '" action="',\r
CKEDITOR.tools.htmlEncode( elementDefinition.action ),\r
'">',\r
- '<input type="file" name="',\r
+ // Replicate the field label inside of iframe.\r
+ '<label id="', _.labelId, '" for="', inputId, '" style="display:none">',\r
+ CKEDITOR.tools.htmlEncode( elementDefinition.label ),\r
+ '</label>',\r
+ '<input id="', inputId, '" aria-labelledby="', _.labelId,'" type="file" name="',\r
CKEDITOR.tools.htmlEncode( elementDefinition.id || 'cke_upload' ),\r
'" size="',\r
CKEDITOR.tools.htmlEncode( size > 0 ? size : "" ),\r