effects: Improve gesture handling in some effects
At the moment, it's possible to activate a qtquick effect while another qtquick effect is already active, we have code that prevents fullscreen effects overriding each other, yet that still happens. The reason for that behavior is that the gesture recognizer will mark all gestures as started when user starts swiping on touchpad and cancel gestures as more swiping occurs. This can mistrigger toggling logic in the window view effect and the desktop grid effect, etc. In order to make handling of gesture cancellation correct, we could check whether user has swiped enough to deactivate window view, or desktop grid. This change tries to implement exactly that. As a side-effect, it also allows toggling the effect with the same gesture. However, we should make cancellation gestures opposite of activation gestures, i.e. if 4 swipe up gesture is used to activate an effect, then 4 swipe down gesture should be used to deactivate the effect.