             return MTouchEvent(x: Double(location.x), y: Double(location.y), id: id)
         }
     }
+
+    // MARK: - MGestureRecognizerDelegate
+
+    public func gestureRecognizer(_ gestureRecognizer: MGestureRecognizer, shouldReceive touch: MTouch) -> Bool {
+        return true
+    }
+
+    public func gestureRecognizer(_ gestureRecognizer: MGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: MGestureRecognizer) -> Bool {
+        return true
+    }
 }
 
-internal class DrawingView: MView, MGestureRecognizerDelegate {
+internal class DrawingView: MView {
 
     /// Scene root node
     open var node: Node = Group() {

/// You could create your own view extended from MacawView with predefined scene.
///

open class MacawView: MView {

    internal var drawingView = DrawingView()


        let rotationRecognizer = MRotationGestureRecognizer(target: drawingView, action: #selector(DrawingView.handleRotation))
        let pinchRecognizer = MPinchGestureRecognizer(target: drawingView, action: #selector(DrawingView.handlePinch))

        tapRecognizer.delegate = self
        longTapRecognizer.delegate = self
        panRecognizer.delegate = self
        rotationRecognizer.delegate = self
        pinchRecognizer.delegate = self

        tapRecognizer.cancelsTouchesInView = false
        longTapRecognizer.cancelsTouchesInView = false
