A bit of enhancement in dispatchTouchEvent