Make splitters more responsive (using timing events)

pull/156/head
Aleksander Machniak 11 years ago
parent 3bcc065831
commit 571c109260

@ -124,6 +124,17 @@ function rcube_splitter(attrib)
if (!this.drag_active)
return false;
ref = this;
// with timing events dragging action is more responsive
window.clearTimeout(this.ts);
this.ts = window.setTimeout(function() { ref.onDragAction(e); }, 1);
return false;
};
this.onDragAction = function(e)
{
var pos = rcube_event.get_mouse_pos(e);
if (this.relative) {
@ -147,8 +158,6 @@ function rcube_splitter(attrib)
this.p1pos = this.relative ? $(this.p1).position() : $(this.p1).offset();
this.p2pos = this.relative ? $(this.p2).position() : $(this.p2).offset();
return false;
};
/**

@ -1292,6 +1292,18 @@ function rcube_splitter(p)
if (!me.drag_active)
return false;
// with timing events dragging action is more responsive
window.clearTimeout(me.ts);
me.ts = window.setTimeout(function() { onDragAction(e); }, 1);
return false;
};
/**
* Dragging action (see onDrag())
*/
function onDragAction(e)
{
var pos = rcube_event.get_mouse_pos(e);
if (me.relative) {
@ -1315,7 +1327,6 @@ function rcube_splitter(p)
me.p1pos = me.relative ? me.p1.position() : me.p1.offset();
me.p2pos = me.relative ? me.p2.position() : me.p2.offset();
return false;
};
/**

Loading…
Cancel
Save