@@ -57,7 +57,7 @@ define([
57
57
58
58
this . _super ( ) ;
59
59
60
- events . on ( 'image:' + this . id + ':assignAfter' , this . onAssignedFile . bind ( this ) ) ;
60
+ events . on ( 'image:' + this . id + ':assignAfter' , this . onAssignedFile . bind ( this ) ) ;
61
61
62
62
// bind dropzone highlighting using event delegation only once
63
63
if ( ! initializedOnce ) {
@@ -95,19 +95,26 @@ define([
95
95
* @param {jQuery.event } e
96
96
*/
97
97
highlightDropzone : function ( e ) {
98
- var $dropzone = $ ( e . target ) . closest ( this . dropZone ) ,
98
+ var draggedItem = e . originalEvent . dataTransfer . items [ 0 ] ,
99
+ $dropzone = $ ( e . target ) . closest ( this . dropZone ) ,
99
100
$otherDropzones = $ ( this . dropZone ) . not ( $dropzone ) ,
100
101
isInsideDropzone = ! ! $dropzone . length ;
101
102
102
- if ( isInsideDropzone ) {
103
- $dropzone
104
- . removeClass ( this . classes . draggingOutside )
105
- . addClass ( [ this . classes . dragging , this . classes . draggingInside ] . join ( ' ' ) ) ;
106
- }
103
+ if ( draggedItem . kind === 'file' &&
104
+ ( draggedItem . type === 'image/png' ||
105
+ draggedItem . type === 'image/gif' ||
106
+ draggedItem . type === 'image/jpg' )
107
+ ) {
108
+ if ( isInsideDropzone ) {
109
+ $dropzone
110
+ . removeClass ( this . classes . draggingOutside )
111
+ . addClass ( [ this . classes . dragging , this . classes . draggingInside ] . join ( ' ' ) ) ;
112
+ }
107
113
108
- $otherDropzones
109
- . removeClass ( this . classes . draggingInside )
110
- . addClass ( [ this . classes . dragging , this . classes . draggingOutside ] . join ( ' ' ) ) ;
114
+ $otherDropzones
115
+ . removeClass ( this . classes . draggingInside )
116
+ . addClass ( [ this . classes . dragging , this . classes . draggingOutside ] . join ( ' ' ) ) ;
117
+ }
111
118
} ,
112
119
113
120
/**
@@ -178,7 +185,6 @@ define([
178
185
*/
179
186
updateResponsiveClasses : function ( ) {
180
187
var classesToAdd = [ ] ,
181
- classConfig ,
182
188
elementWidth = this . $uploadArea . width ( ) ,
183
189
modifierClass ;
184
190
@@ -189,16 +195,17 @@ define([
189
195
this . $uploadArea . removeClass ( Object . keys ( this . elementWidthModifierClasses ) . join ( ' ' ) ) ;
190
196
191
197
for ( modifierClass in this . elementWidthModifierClasses ) {
192
- if ( ! this . elementWidthModifierClasses . hasOwnProperty ( modifierClass ) ) {
193
- continue ;
194
- }
195
-
196
- classConfig = this . elementWidthModifierClasses [ modifierClass ] ;
197
-
198
- if ( classConfig . minWidth && classConfig . maxWidth &&
199
- ( classConfig . minWidth <= elementWidth && elementWidth <= classConfig . maxWidth ) ||
200
- classConfig . minWidth && ! classConfig . maxWidth && classConfig . minWidth <= elementWidth ||
201
- classConfig . maxWidth && ! classConfig . minWidth && elementWidth <= classConfig . maxWidth
198
+ if ( this . elementWidthModifierClasses . hasOwnProperty ( modifierClass ) && (
199
+ this . elementWidthModifierClasses [ modifierClass ] . minWidth &&
200
+ this . elementWidthModifierClasses [ modifierClass ] . maxWidth &&
201
+ ( this . elementWidthModifierClasses [ modifierClass ] . minWidth <= elementWidth &&
202
+ elementWidth <= this . elementWidthModifierClasses [ modifierClass ] . maxWidth ) ||
203
+ this . elementWidthModifierClasses [ modifierClass ] . minWidth &&
204
+ ! this . elementWidthModifierClasses [ modifierClass ] . maxWidth &&
205
+ this . elementWidthModifierClasses [ modifierClass ] . minWidth <= elementWidth ||
206
+ this . elementWidthModifierClasses [ modifierClass ] . maxWidth &&
207
+ ! this . elementWidthModifierClasses [ modifierClass ] . minWidth &&
208
+ elementWidth <= this . elementWidthModifierClasses [ modifierClass ] . maxWidth )
202
209
) {
203
210
classesToAdd . push ( modifierClass ) ;
204
211
}
@@ -212,7 +219,7 @@ define([
212
219
/**
213
220
* {@inheritDoc }
214
221
*/
215
- hasData : function ( ) {
222
+ hasData : function ( ) {
216
223
// Some of the components automatically add an empty object if the value is unset.
217
224
return this . _super ( ) && ! $ . isEmptyObject ( this . value ( ) [ 0 ] ) ;
218
225
}
0 commit comments