Made Q/drawers respect Q.Pointer.canceledClick
Refactored Q/drawers swap slightly with a timeout