diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp
index 728357e14865caf99fa72db97197dd79fee0b907..9968d3e493311ad2afa314c77a929185b47f64bc 100644
--- a/src/core/render_widget_host_view_qt.cpp
+++ b/src/core/render_widget_host_view_qt.cpp
@@ -942,9 +942,11 @@ bool RenderWidgetHostViewQt::forwardEvent(QEvent *event)
     case QEvent::TouchCancel:
         handleTouchEvent(static_cast<QTouchEvent*>(event));
         break;
+#ifndef QT_NO_GESTURES
     case QEvent::NativeGesture:
         handleGestureEvent(static_cast<QNativeGestureEvent *>(event));
         break;
+#endif // QT_NO_GESTURES
     case QEvent::HoverMove:
         handleHoverEvent(static_cast<QHoverEvent*>(event));
         break;
@@ -1336,6 +1338,7 @@ void RenderWidgetHostViewQt::clearPreviousTouchMotionState()
     m_touchMotionStarted = false;
 }
 
+#ifndef QT_NO_GESTURES
 void RenderWidgetHostViewQt::handleGestureEvent(QNativeGestureEvent *ev)
 {
     const Qt::NativeGestureType type = ev->gestureType();
@@ -1346,6 +1349,7 @@ void RenderWidgetHostViewQt::handleGestureEvent(QNativeGestureEvent *ev)
                                         static_cast<double>(dpiScale())));
     }
 }
+#endif
 
 Q_DECLARE_LOGGING_CATEGORY(QWEBENGINE_TOUCH_HANDLING);
 Q_LOGGING_CATEGORY(QWEBENGINE_TOUCH_HANDLING, "qt.webengine.touch");
diff --git a/src/core/render_widget_host_view_qt.h b/src/core/render_widget_host_view_qt.h
index 3b679923e950f6b86ffa73dc06673ef445233b80..ae3ce610c1000d61c0fc565a0876d414e794f65f 100644
--- a/src/core/render_widget_host_view_qt.h
+++ b/src/core/render_widget_host_view_qt.h
@@ -189,7 +189,9 @@ public:
     void handleKeyEvent(QKeyEvent*);
     void handleWheelEvent(QWheelEvent*);
     void handleTouchEvent(QTouchEvent*);
+#ifndef QT_NO_GESTURES
     void handleGestureEvent(QNativeGestureEvent *);
+#endif
     void handleHoverEvent(QHoverEvent*);
     void handleFocusEvent(QFocusEvent*);
     void handleInputMethodEvent(QInputMethodEvent*);
diff --git a/src/core/web_event_factory.cpp b/src/core/web_event_factory.cpp
index a7df934e41e2df604d7ac7a8d84f50dadbadde06..7853986b02277303ffb30cff00877d95920d322b 100644
--- a/src/core/web_event_factory.cpp
+++ b/src/core/web_event_factory.cpp
@@ -1212,6 +1212,7 @@ WebMouseEvent WebEventFactory::toWebMouseEvent(QHoverEvent *ev, double dpiScale)
     return webKitEvent;
 }
 
+#ifndef QT_NO_GESTURES
 WebGestureEvent WebEventFactory::toWebGestureEvent(QNativeGestureEvent *ev, double dpiScale)
 {
     WebGestureEvent webKitEvent;
@@ -1248,6 +1249,7 @@ WebGestureEvent WebEventFactory::toWebGestureEvent(QNativeGestureEvent *ev, doub
 
     return webKitEvent;
 }
+#endif
 
 blink::WebMouseWheelEvent WebEventFactory::toWebWheelEvent(QWheelEvent *ev, double dpiScale)
 {
diff --git a/src/core/web_event_factory.h b/src/core/web_event_factory.h
index d82113db36de9c6ae02e7072fd7c305f7f09fb59..859e97643dd398d216f287ef83ee7cca5b59584e 100644
--- a/src/core/web_event_factory.h
+++ b/src/core/web_event_factory.h
@@ -42,7 +42,9 @@
 
 #include "content/public/browser/native_web_keyboard_event.h"
 #include "third_party/WebKit/public/platform/WebInputEvent.h"
+#ifndef QT_NO_GESTURES
 #include "third_party/WebKit/public/platform/WebGestureEvent.h"
+#endif
 
 #include <QtGlobal>
 
@@ -51,7 +53,9 @@ class QHoverEvent;
 class QKeyEvent;
 class QMouseEvent;
 class QWheelEvent;
+#ifndef QT_NO_GESTURES
 class QNativeGestureEvent;
+#endif
 QT_END_NAMESPACE
 
 class WebEventFactory {
@@ -59,7 +63,9 @@ class WebEventFactory {
 public:
     static blink::WebMouseEvent toWebMouseEvent(QMouseEvent*, double dpiScale);
     static blink::WebMouseEvent toWebMouseEvent(QHoverEvent*, double dpiScale);
+#ifndef QT_NO_GESTURES
     static blink::WebGestureEvent toWebGestureEvent(QNativeGestureEvent *, double dpiScale);
+#endif
     static blink::WebMouseWheelEvent toWebWheelEvent(QWheelEvent*, double dpiScale);
     static content::NativeWebKeyboardEvent toWebKeyboardEvent(QKeyEvent*);
 };
diff --git a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
index b6069d5193d4412c9d54adf63940d5cbfc04c24b..5d8c4fa438c6315d40334f047786ccca249535ee 100644
--- a/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
+++ b/src/webengine/render_widget_host_view_qt_delegate_quick.cpp
@@ -243,8 +243,10 @@ bool RenderWidgetHostViewQtDelegateQuick::event(QEvent *event)
     if (event->type() == QEvent::ShortcutOverride)
         return m_client->handleShortcutOverrideEvent(static_cast<QKeyEvent *>(event));
 
+#ifndef QT_NO_GESTURES
     if (event->type() == QEvent::NativeGesture)
         return m_client->forwardEvent(event);
+#endif
 
     return QQuickItem::event(event);
 }