Hi Phil,

I don't know if you already received a response to your question.

Nevertheless, here goes.

The reason that the "return false" is needed is to prevent the default 
action.
One of the reasons I added the distinction between draggables and drag 
handles (the change you put in your e-mail) is that we needed input 
elements in the draggables to work.
The first thing I tried (like you) is to remove the "return false" part, 
but that broke drag & drop in some browsers.

Met vriendelijke groet,
Kind regards,

Bas Gooren

Op 9-5-2013 7:17, schreef Phil Freo:
>
> In jquery.sortable.js:
>
> >  		placeholders = placeholders.add(placeholder);
> >  		if (options.connectWith) {
> >  			$(options.connectWith).add(this).data('connectWith', options.connectWith);
> >  		}
> > -		items.attr('draggable', 'true').on('dragstart.h5s', function(e) {
> > -			if (options.handle && !isHandle) {
> > -				return false;
> > -			}
> > -			isHandle = false;
> > +		// Setup drag handles
> > +		handles.attr('draggable', 'true').not('a[href], img').on('selectstart.h5s', function() {
> > +			this.dragDrop && this.dragDrop();
> > +			return false;
>
> what exactly is the purpose of this event handler? (I know it was 
> there before, but I figured you may know since you fixed some other 
> bugs in this library)
> and what is |this.dragDrop| for?
>
> By removing this event handler (or just the |return false| part), I 
> prevented a bug where cmd+a (to highlight/select the textbox text) in 
> an input textbox in the drag handle element wouldn't work properly.
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/farhadi/html5sortable/pull/54/files#r4148662>.
>