diff --git a/src/webengine/plugin/dependencies.json b/src/webengine/plugin/dependencies.json
new file mode 100644
index 0000000000000000000000000000000000000000..115ba72e7a8ef920fa6e96b61fba8105dea87dc0
--- /dev/null
+++ b/src/webengine/plugin/dependencies.json
@@ -0,0 +1,7 @@
+[
+    {
+        "name": "QtQuick",
+        "type": "module",
+        "version": "2.6"
+    }
+]
diff --git a/src/webengine/plugin/plugins.qmltypes b/src/webengine/plugin/plugins.qmltypes
index 23ba7723595b11fcba4314569125fb050d3e269d..c8aaaf420a22f8de4966c176a8d4108224cdc6f3 100644
--- a/src/webengine/plugin/plugins.qmltypes
+++ b/src/webengine/plugin/plugins.qmltypes
@@ -4,24 +4,35 @@ import QtQuick.tooling 1.2
 // It is used for QML tooling purposes only.
 //
 // This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable -defaultplatform QtWebEngine 1.3'
+// 'qmlplugindump -defaultplatform -dependencies dependencies.json -nonrelocatable QtWebEngine 1.4'
 
 Module {
-    dependencies: [
-        "Qt.labs.folderlistmodel 2.1",
-        "Qt.labs.settings 1.0",
-        "QtGraphicalEffects 1.0",
-        "QtQml.Models 2.2",
-        "QtQuick 2.6",
-        "QtQuick.Controls 1.5",
-        "QtQuick.Controls.Styles 1.4",
-        "QtQuick.Dialogs 1.2",
-        "QtQuick.Extras 1.4",
-        "QtQuick.Extras.Private.CppUtils 1.1",
-        "QtQuick.Layouts 1.1",
-        "QtQuick.PrivateWidgets 1.1",
-        "QtQuick.Window 2.2"
-    ]
+    dependencies: ["QtQuick 2.6"]
+    Component {
+        name: "QQuickWebEngineAuthenticationDialogRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/AuthenticationDialogRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Enum {
+            name: "AuthenticationType"
+            values: {
+                "AuthenticationTypeHTTP": 0,
+                "AuthenticationTypeProxy": 1
+            }
+        }
+        Property { name: "url"; type: "QUrl"; isReadonly: true }
+        Property { name: "realm"; type: "string"; isReadonly: true }
+        Property { name: "proxyHost"; type: "string"; isReadonly: true }
+        Property { name: "type"; type: "AuthenticationType"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+        Method {
+            name: "dialogAccept"
+            Parameter { name: "user"; type: "string" }
+            Parameter { name: "password"; type: "string" }
+        }
+        Method { name: "dialogReject" }
+    }
     Component {
         name: "QQuickWebEngineCertificateError"
         prototype: "QObject"
@@ -43,7 +54,9 @@ Module {
                 "CertificateWeakSignatureAlgorithm": -208,
                 "CertificateNonUniqueName": -210,
                 "CertificateWeakKey": -211,
-                "CertificateNameConstraintViolation": -212
+                "CertificateNameConstraintViolation": -212,
+                "CertificateValidityTooLong": -213,
+                "CertificateTransparencyRequired": -214
             }
         }
         Property { name: "url"; type: "QUrl"; isReadonly: true }
@@ -54,16 +67,61 @@ Module {
         Method { name: "ignoreCertificateError" }
         Method { name: "rejectCertificate" }
     }
+    Component {
+        name: "QQuickWebEngineColorDialogRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/ColorDialogRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Property { name: "color"; type: "QColor"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+        Method {
+            name: "dialogAccept"
+            Parameter { name: "color"; type: "QColor" }
+        }
+        Method { name: "dialogReject" }
+    }
+    Component {
+        name: "QQuickWebEngineContextMenuRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/ContextMenuRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Enum {
+            name: "MediaType"
+            values: {
+                "MediaTypeNone": 0,
+                "MediaTypeImage": 1,
+                "MediaTypeVideo": 2,
+                "MediaTypeAudio": 3,
+                "MediaTypeCanvas": 4,
+                "MediaTypeFile": 5,
+                "MediaTypePlugin": 6
+            }
+        }
+        Property { name: "x"; type: "int"; isReadonly: true }
+        Property { name: "y"; type: "int"; isReadonly: true }
+        Property { name: "selectedText"; type: "string"; isReadonly: true }
+        Property { name: "linkText"; type: "string"; isReadonly: true }
+        Property { name: "linkUrl"; type: "QUrl"; isReadonly: true }
+        Property { name: "mediaUrl"; type: "QUrl"; isReadonly: true }
+        Property { name: "mediaType"; type: "MediaType"; isReadonly: true }
+        Property { name: "isContentEditable"; type: "bool"; isReadonly: true }
+        Property { name: "misspelledWord"; type: "string"; isReadonly: true }
+        Property { name: "spellCheckerSuggestions"; type: "QStringList"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+    }
     Component {
         name: "QQuickWebEngineDownloadItem"
         prototype: "QObject"
         exports: [
             "QtWebEngine/WebEngineDownloadItem 1.1",
             "QtWebEngine/WebEngineDownloadItem 1.2",
-            "QtWebEngine/WebEngineDownloadItem 1.3"
+            "QtWebEngine/WebEngineDownloadItem 1.3",
+            "QtWebEngine/WebEngineDownloadItem 1.4"
         ]
         isCreatable: false
-        exportMetaObjectRevisions: [0, 1, 2]
+        exportMetaObjectRevisions: [0, 1, 2, 3]
         Enum {
             name: "DownloadState"
             values: {
@@ -83,6 +141,15 @@ Module {
                 "MimeHtmlSaveFormat": 2
             }
         }
+        Enum {
+            name: "DownloadType"
+            values: {
+                "Attachment": 0,
+                "DownloadAttribute": 1,
+                "UserRequested": 2,
+                "SavePage": 3
+            }
+        }
         Property { name: "id"; type: "uint"; isReadonly: true }
         Property { name: "state"; type: "DownloadState"; isReadonly: true }
         Property { name: "savePageFormat"; revision: 2; type: "SavePageFormat" }
@@ -90,11 +157,58 @@ Module {
         Property { name: "receivedBytes"; type: "qlonglong"; isReadonly: true }
         Property { name: "mimeType"; revision: 1; type: "string"; isReadonly: true }
         Property { name: "path"; type: "string" }
+        Property { name: "type"; revision: 3; type: "DownloadType"; isReadonly: true }
         Signal { name: "savePageFormatChanged"; revision: 2 }
         Signal { name: "mimeTypeChanged"; revision: 1 }
+        Signal { name: "typeChanged"; revision: 3 }
         Method { name: "accept" }
         Method { name: "cancel" }
     }
+    Component {
+        name: "QQuickWebEngineFileDialogRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/FileDialogRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Enum {
+            name: "FileMode"
+            values: {
+                "FileModeOpen": 0,
+                "FileModeOpenMultiple": 1,
+                "FileModeUploadFolder": 2,
+                "FileModeSave": 3
+            }
+        }
+        Property { name: "defaultFileName"; type: "string"; isReadonly: true }
+        Property { name: "acceptedMimeTypes"; type: "QStringList"; isReadonly: true }
+        Property { name: "mode"; type: "FileMode"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+        Method {
+            name: "dialogAccept"
+            Parameter { name: "files"; type: "QStringList" }
+        }
+        Method { name: "dialogReject" }
+    }
+    Component {
+        name: "QQuickWebEngineFormValidationMessageRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/FormValidationMessageRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Enum {
+            name: "RequestType"
+            values: {
+                "RequestTypeShow": 0,
+                "RequestTypeHide": 1,
+                "RequestTypeMove": 2
+            }
+        }
+        Property { name: "anchor"; type: "QRect"; isReadonly: true }
+        Property { name: "text"; type: "string"; isReadonly: true }
+        Property { name: "subText"; type: "string"; isReadonly: true }
+        Property { name: "type"; type: "RequestType"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+    }
     Component {
         name: "QQuickWebEngineFullScreenRequest"
         exports: ["QtWebEngine/FullScreenRequest 1.1"]
@@ -138,6 +252,34 @@ Module {
         isCreatable: false
         exportMetaObjectRevisions: [0]
     }
+    Component {
+        name: "QQuickWebEngineJavaScriptDialogRequest"
+        prototype: "QObject"
+        exports: ["QtWebEngine/JavaScriptDialogRequest 1.4"]
+        isCreatable: false
+        exportMetaObjectRevisions: [0]
+        Enum {
+            name: "DialogType"
+            values: {
+                "DialogTypeAlert": 0,
+                "DialogTypeConfirm": 1,
+                "DialogTypePrompt": 2,
+                "DialogTypeBeforeUnload": 3
+            }
+        }
+        Property { name: "message"; type: "string"; isReadonly: true }
+        Property { name: "defaultText"; type: "string"; isReadonly: true }
+        Property { name: "title"; type: "string"; isReadonly: true }
+        Property { name: "type"; type: "DialogType"; isReadonly: true }
+        Property { name: "securityOrigin"; type: "QUrl"; isReadonly: true }
+        Property { name: "accepted"; type: "bool" }
+        Method {
+            name: "dialogAccept"
+            Parameter { name: "text"; type: "string" }
+        }
+        Method { name: "dialogAccept" }
+        Method { name: "dialogReject" }
+    }
     Component {
         name: "QQuickWebEngineLoadRequest"
         prototype: "QObject"
@@ -188,9 +330,10 @@ Module {
         exports: [
             "QtWebEngine/WebEngineProfile 1.1",
             "QtWebEngine/WebEngineProfile 1.2",
-            "QtWebEngine/WebEngineProfile 1.3"
+            "QtWebEngine/WebEngineProfile 1.3",
+            "QtWebEngine/WebEngineProfile 1.4"
         ]
-        exportMetaObjectRevisions: [0, 1, 2]
+        exportMetaObjectRevisions: [0, 1, 2, 3]
         Enum {
             name: "HttpCacheType"
             values: {
@@ -216,7 +359,11 @@ Module {
         Property { name: "httpAcceptLanguage"; revision: 1; type: "string" }
         Property { name: "persistentCookiesPolicy"; type: "PersistentCookiesPolicy" }
         Property { name: "httpCacheMaximumSize"; type: "int" }
+        Property { name: "spellCheckLanguage"; revision: 3; type: "string" }
+        Property { name: "spellCheckEnabled"; revision: 3; type: "bool" }
         Signal { name: "httpAcceptLanguageChanged"; revision: 1 }
+        Signal { name: "spellCheckLanguageChanged"; revision: 3 }
+        Signal { name: "spellCheckEnabledChanged"; revision: 3 }
         Signal {
             name: "downloadRequested"
             Parameter { name: "download"; type: "QQuickWebEngineDownloadItem"; isPointer: true }
@@ -310,10 +457,11 @@ Module {
         exports: [
             "QtWebEngine/WebEngineSettings 1.1",
             "QtWebEngine/WebEngineSettings 1.2",
-            "QtWebEngine/WebEngineSettings 1.3"
+            "QtWebEngine/WebEngineSettings 1.3",
+            "QtWebEngine/WebEngineSettings 1.4"
         ]
         isCreatable: false
-        exportMetaObjectRevisions: [0, 1, 2]
+        exportMetaObjectRevisions: [0, 1, 2, 3]
         Property { name: "autoLoadImages"; type: "bool" }
         Property { name: "javascriptEnabled"; type: "bool" }
         Property { name: "javascriptCanOpenWindows"; type: "bool" }
@@ -333,12 +481,18 @@ Module {
         Property { name: "accelerated2dCanvasEnabled"; revision: 2; type: "bool" }
         Property { name: "autoLoadIconsForPage"; revision: 2; type: "bool" }
         Property { name: "touchIconsEnabled"; revision: 2; type: "bool" }
+        Property { name: "focusOnNavigationEnabled"; revision: 3; type: "bool" }
+        Property { name: "printElementBackgrounds"; revision: 3; type: "bool" }
+        Property { name: "allowRunningInsecureContent"; revision: 3; type: "bool" }
         Signal { name: "fullScreenSupportEnabledChanged"; revision: 1 }
         Signal { name: "screenCaptureEnabledChanged"; revision: 2 }
         Signal { name: "webGLEnabledChanged"; revision: 2 }
         Signal { name: "accelerated2dCanvasEnabledChanged"; revision: 2 }
         Signal { name: "autoLoadIconsForPageChanged"; revision: 2 }
         Signal { name: "touchIconsEnabledChanged"; revision: 2 }
+        Signal { name: "focusOnNavigationEnabledChanged"; revision: 3 }
+        Signal { name: "printElementBackgroundsChanged"; revision: 3 }
+        Signal { name: "allowRunningInsecureContentChanged"; revision: 3 }
     }
     Component {
         name: "QQuickWebEngineSingleton"
@@ -364,9 +518,10 @@ Module {
             "QtWebEngine/WebEngineView 1.0",
             "QtWebEngine/WebEngineView 1.1",
             "QtWebEngine/WebEngineView 1.2",
-            "QtWebEngine/WebEngineView 1.3"
+            "QtWebEngine/WebEngineView 1.3",
+            "QtWebEngine/WebEngineView 1.4"
         ]
-        exportMetaObjectRevisions: [0, 1, 2, 3]
+        exportMetaObjectRevisions: [0, 1, 2, 3, 4]
         Enum {
             name: "NavigationRequestAction"
             values: {
@@ -459,7 +614,8 @@ Module {
                 "RequestClose": 28,
                 "Unselect": 29,
                 "SavePage": 30,
-                "WebActionCount": 31
+                "ViewSource": 31,
+                "WebActionCount": 32
             }
         }
         Enum {
@@ -750,6 +906,44 @@ Module {
             revision: 3
             Parameter { type: "uint" }
         }
+        Signal {
+            name: "contextMenuRequested"
+            revision: 4
+            Parameter { name: "request"; type: "QQuickWebEngineContextMenuRequest"; isPointer: true }
+        }
+        Signal {
+            name: "authenticationDialogRequested"
+            revision: 4
+            Parameter {
+                name: "request"
+                type: "QQuickWebEngineAuthenticationDialogRequest"
+                isPointer: true
+            }
+        }
+        Signal {
+            name: "javaScriptDialogRequested"
+            revision: 4
+            Parameter { name: "request"; type: "QQuickWebEngineJavaScriptDialogRequest"; isPointer: true }
+        }
+        Signal {
+            name: "colorDialogRequested"
+            revision: 4
+            Parameter { name: "request"; type: "QQuickWebEngineColorDialogRequest"; isPointer: true }
+        }
+        Signal {
+            name: "fileDialogRequested"
+            revision: 4
+            Parameter { name: "request"; type: "QQuickWebEngineFileDialogRequest"; isPointer: true }
+        }
+        Signal {
+            name: "formValidationMessageRequested"
+            revision: 4
+            Parameter {
+                name: "request"
+                type: "QQuickWebEngineFormValidationMessageRequest"
+                isPointer: true
+            }
+        }
         Method {
             name: "runJavaScript"
             Parameter { type: "string" }
@@ -863,5 +1057,10 @@ Module {
             revision: 3
             Parameter { name: "callback"; type: "QJSValue" }
         }
+        Method {
+            name: "replaceMisspelledWord"
+            revision: 4
+            Parameter { name: "replacement"; type: "string" }
+        }
     }
 }