summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2018-02-07 15:01:02 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2018-02-20 13:10:28 +0000
commit605d54e65a6e7a79afda0173cbce5346985903ab (patch)
treea3671842c5189038cee18054a2a4da84b1cdfc48
parent35cc7e709f6c93a20a453d697f0da76cd9f05e1f (diff)
Prevent Qt Quick Compiler from removing qrc Javascript source code
By default whenever a Qt application is built with Qt Quick compiler, it will scan all qrc resources for javascript files, generate corresponding C++ code, and remove the original JS code. This is problematic for web pages that are loaded in WebEngine because the pages won't be able to access the javascript code, and silently fail (or if you are lucky, you will get some unrelated "can not be found" error). Use the undocumented QtQuick Compiler QTQUICK_COMPILER_SKIPPED_RESOURCES qmake variable to specify that Javascript source code found in qrc files should be left as is. Task-number: QTBUG-66155 Change-Id: Ib1dc744901baddd9e0c17c53db1ffede5c31e544 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
-rw-r--r--examples/webengine/recipebrowser/recipebrowser.pro3
-rw-r--r--examples/webenginewidgets/contentmanipulation/contentmanipulation.pro4
-rw-r--r--examples/webenginewidgets/markdowneditor/markdowneditor.pro4
3 files changed, 11 insertions, 0 deletions
diff --git a/examples/webengine/recipebrowser/recipebrowser.pro b/examples/webengine/recipebrowser/recipebrowser.pro
index c7e4dcaf8..2c2145fc6 100644
--- a/examples/webengine/recipebrowser/recipebrowser.pro
+++ b/examples/webengine/recipebrowser/recipebrowser.pro
@@ -10,6 +10,9 @@ SOURCES += main.cpp
RESOURCES += resources/resources.qrc
+# Make sure Qt Quick compiler does not remove the source code of the .js files.
+QTQUICK_COMPILER_SKIPPED_RESOURCES = resources/resources.qrc
+
DISTFILES += \
resources/pages/assets/3rdparty/MARKDOWN-LICENSE.txt \
resources/pages/assets/3rdparty/MARKED-LICENSE.txt
diff --git a/examples/webenginewidgets/contentmanipulation/contentmanipulation.pro b/examples/webenginewidgets/contentmanipulation/contentmanipulation.pro
index 2ac97d487..e0b568df0 100644
--- a/examples/webenginewidgets/contentmanipulation/contentmanipulation.pro
+++ b/examples/webenginewidgets/contentmanipulation/contentmanipulation.pro
@@ -5,6 +5,10 @@ SOURCES = main.cpp \
mainwindow.cpp
RESOURCES = jquery.qrc
+# Disable Qt Quick compiler because the example doesn't use QML, but more importantly so that
+# the source code of the .js files is not removed from the embedded qrc file.
+CONFIG -= qtquickcompiler
+
# install
target.path = $$[QT_INSTALL_EXAMPLES]/webenginewidgets/contentmanipulation
INSTALLS += target
diff --git a/examples/webenginewidgets/markdowneditor/markdowneditor.pro b/examples/webenginewidgets/markdowneditor/markdowneditor.pro
index 2f58ae061..7ffbd7487 100644
--- a/examples/webenginewidgets/markdowneditor/markdowneditor.pro
+++ b/examples/webenginewidgets/markdowneditor/markdowneditor.pro
@@ -17,6 +17,10 @@ SOURCES = \
RESOURCES = \
resources/markdowneditor.qrc
+# Disable Qt Quick compiler because the example doesn't use QML, but more importantly so that
+# the source code of the .js files is not removed from the embedded qrc file.
+CONFIG -= qtquickcompiler
+
FORMS += \
mainwindow.ui