summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2021-02-10 17:03:01 +0100
committerMichal Klocek <michal.klocek@qt.io>2021-05-22 14:10:08 +0200
commitdd523573f2981cc58d4da0ec6e2b061a6172a8eb (patch)
tree77f190fbe00e111362711ce14be00117a3cb7a91 /examples
parente1e6e4c90071a7e4e7a12b9f529ca1da6d71e0c1 (diff)
Add examples to the cmake build
Add only quick and widget examples to the build for now. Update examples qmake files so the ci can also build qmake examples after the cmake bulid. Note this patch breakes qmake builds. Task-number: QTBUG-91760 Change-Id: Ia867a49bc3deab1967bdedcf525ad4afe3967c2a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'examples')
-rw-r--r--examples/CMakeLists.txt31
-rw-r--r--examples/examples.pro25
-rw-r--r--examples/webengine/CMakeLists.txt8
-rw-r--r--examples/webengine/customdialogs/CMakeLists.txt76
-rw-r--r--examples/webengine/lifecycle/CMakeLists.txt58
-rw-r--r--examples/webengine/minimal/CMakeLists.txt50
-rw-r--r--examples/webengine/quicknanobrowser/CMakeLists.txt91
-rw-r--r--examples/webengine/recipebrowser/CMakeLists.txt143
-rw-r--r--examples/webengine/webengineaction/CMakeLists.txt50
-rw-r--r--examples/webenginewidgets/CMakeLists.txt21
-rw-r--r--examples/webenginewidgets/contentmanipulation/CMakeLists.txt51
-rw-r--r--examples/webenginewidgets/cookiebrowser/CMakeLists.txt56
-rw-r--r--examples/webenginewidgets/html2pdf/CMakeLists.txt37
-rw-r--r--examples/webenginewidgets/maps/CMakeLists.txt38
-rw-r--r--examples/webenginewidgets/markdowneditor/CMakeLists.txt60
-rw-r--r--examples/webenginewidgets/minimal/CMakeLists.txt37
-rw-r--r--examples/webenginewidgets/notifications/CMakeLists.txt54
-rw-r--r--examples/webenginewidgets/printme/CMakeLists.txt57
-rw-r--r--examples/webenginewidgets/simplebrowser/CMakeLists.txt106
-rw-r--r--examples/webenginewidgets/spellchecker/CMakeLists.txt55
-rw-r--r--examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt55
-rw-r--r--examples/webenginewidgets/videoplayer/CMakeLists.txt55
-rw-r--r--examples/webenginewidgets/webenginewidgets.pro11
-rw-r--r--examples/webenginewidgets/webui/CMakeLists.txt51
24 files changed, 1249 insertions, 27 deletions
diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt
new file mode 100644
index 000000000..6d366112c
--- /dev/null
+++ b/examples/CMakeLists.txt
@@ -0,0 +1,31 @@
+cmake_minimum_required(VERSION 3.19)
+
+include(${CMAKE_CURRENT_LIST_DIR}/../.cmake.conf)
+
+project(QtWebEngineExamples
+ VERSION "${QT_REPO_MODULE_VERSION}"
+ DESCRIPTION "Qt WebEngine Examples"
+ HOMEPAGE_URL "https://qt.io/"
+ LANGUAGES CXX C
+)
+
+find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core)
+find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS WebEngineCore WebEngineWidgets WebEngineQuick)
+qt_build_repo_begin()
+qt_examples_build_begin()
+
+if(QT_FEATURE_qtwebengine_build AND QT_FEATURE_qtwebengine_quick_build)
+ add_subdirectory(webengine)
+endif()
+if(QT_FEATURE_qtwebengine_build AND QT_FEATURE_qtwebengine_widgets_build)
+ add_subdirectory(webenginewidgets)
+endif()
+if(QT_FEATURE_qtpdf_build )
+ add_subdirectory(pdf)
+endif()
+if(QT_FEATURE_qtpdf_build AND QT_FEATURE_pdf_widgets)
+ add_subdirectory(pdfwidgets)
+endif()
+
+qt_examples_build_end()
+qt_build_repo_end()
diff --git a/examples/examples.pro b/examples/examples.pro
index f36b98904..793e46be2 100644
--- a/examples/examples.pro
+++ b/examples/examples.pro
@@ -1,25 +1,8 @@
-include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri)
-include($$QTWEBENGINE_OUT_ROOT/src/webenginequick/qtwebenginequick-config.pri)
-include($$QTWEBENGINE_OUT_ROOT/src/webenginewidgets/qtwebenginewidgets-config.pri)
-include($$QTWEBENGINE_OUT_ROOT/src/pdf/qtpdf-config.pri)
-include($$QTWEBENGINE_OUT_ROOT/src/pdfwidgets/qtpdfwidgets-config.pri)
-
-QT_FOR_CONFIG += \
- buildtools-private \
- webenginequick-private \
- webenginewidgets-private \
- pdf-private \
- pdfwidgets-private
-
TEMPLATE=subdirs
-qtConfig(build-qtwebengine-core):qtConfig(webengine-core-support) {
- qtConfig(webengine-quick): SUBDIRS += webengine
- qtConfig(webengine-widgets): SUBDIRS += webenginewidgets
-}
+qtHaveModule(webenginequick): SUBDIRS += webengine
+qtHaveModule(webenginewidgets): SUBDIRS += webenginewidgets
+qtHaveModule(pdf): SUBDIRS += pdf
+qtHaveModule(pdfwidgets): SUBDIRS += pdfwidgets
-qtConfig(build-qtpdf):qtConfig(webengine-qtpdf-support) {
- SUBDIRS += pdf
- qtConfig(pdf-widgets): SUBDIRS += pdfwidgets
-}
diff --git a/examples/webengine/CMakeLists.txt b/examples/webengine/CMakeLists.txt
new file mode 100644
index 000000000..6e306111e
--- /dev/null
+++ b/examples/webengine/CMakeLists.txt
@@ -0,0 +1,8 @@
+add_subdirectory(customdialogs)
+add_subdirectory(minimal)
+add_subdirectory(quicknanobrowser)
+add_subdirectory(webengineaction)
+if(TARGET Qt::QuickControls2)
+ add_subdirectory(lifecycle)
+ add_subdirectory(recipebrowser)
+endif()
diff --git a/examples/webengine/customdialogs/CMakeLists.txt b/examples/webengine/customdialogs/CMakeLists.txt
new file mode 100644
index 000000000..d6d69548f
--- /dev/null
+++ b/examples/webengine/customdialogs/CMakeLists.txt
@@ -0,0 +1,76 @@
+cmake_minimum_required(VERSION 3.18)
+project(customdialogs LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/customdialogs")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(customdialogs
+ main.cpp
+ server.cpp server.h
+)
+set_target_properties(customdialogs PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(customdialogs PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineQuick
+)
+
+
+# Resources:
+set(customdialogs_resource_files
+ "MessageRectangle.qml"
+ "SwitchButton.qml"
+ "WebView.qml"
+ "forms/Authentication.qml"
+ "forms/AuthenticationForm.ui.qml"
+ "forms/Button.qml"
+ "forms/ColorCell.qml"
+ "forms/ColorPicker.qml"
+ "forms/ColorPickerForm.ui.qml"
+ "forms/FilePicker.qml"
+ "forms/FilePickerForm.ui.qml"
+ "forms/FileRow.qml"
+ "forms/JavaScript.qml"
+ "forms/JavaScriptForm.ui.qml"
+ "forms/Menu.qml"
+ "forms/MenuForm.ui.qml"
+ "icon.svg"
+ "index.html"
+ "main.qml"
+ "style.css"
+)
+
+qt6_add_resources(customdialogs "customdialogs"
+ PREFIX
+ "/"
+ FILES
+ ${customdialogs_resource_files}
+)
+
+if(TARGET Qt::Widgets)
+ target_link_libraries(customdialogs PUBLIC
+ Qt::Widgets
+ )
+endif()
+
+install(TARGETS customdialogs
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webengine/lifecycle/CMakeLists.txt b/examples/webengine/lifecycle/CMakeLists.txt
new file mode 100644
index 000000000..0459d7767
--- /dev/null
+++ b/examples/webengine/lifecycle/CMakeLists.txt
@@ -0,0 +1,58 @@
+cmake_minimum_required(VERSION 3.18)
+project(lifecycle LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/lifecycle")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS QuickControls2)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(lifecycle
+ main.cpp
+)
+set_target_properties(lifecycle PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(lifecycle PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::QuickControls2
+ Qt::WebEngineQuick
+)
+
+
+# Resources:
+set(resources_resource_files
+ "WebBrowser.qml"
+ "WebTab.qml"
+ "WebTabBar.qml"
+ "WebTabButton.qml"
+ "WebTabStack.qml"
+ "WebToolButton.qml"
+ "qtquickcontrols2.conf"
+)
+
+qt6_add_resources(lifecycle "resources"
+ PREFIX
+ "/"
+ FILES
+ ${resources_resource_files}
+)
+
+install(TARGETS lifecycle
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webengine/minimal/CMakeLists.txt b/examples/webengine/minimal/CMakeLists.txt
new file mode 100644
index 000000000..db253d8fc
--- /dev/null
+++ b/examples/webengine/minimal/CMakeLists.txt
@@ -0,0 +1,50 @@
+cmake_minimum_required(VERSION 3.18)
+project(minimal LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/minimal-qml")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(minimal-qml
+ main.cpp
+)
+set_target_properties(minimal-qml PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(minimal-qml PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineQuick
+)
+
+
+# Resources:
+set(qml_resource_files
+ "main.qml"
+)
+
+qt6_add_resources(minimal-qml "qml"
+ PREFIX
+ "/"
+ FILES
+ ${qml_resource_files}
+)
+
+install(TARGETS minimal-qml
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webengine/quicknanobrowser/CMakeLists.txt b/examples/webengine/quicknanobrowser/CMakeLists.txt
new file mode 100644
index 000000000..6c155789c
--- /dev/null
+++ b/examples/webengine/quicknanobrowser/CMakeLists.txt
@@ -0,0 +1,91 @@
+cmake_minimum_required(VERSION 3.18)
+project(quicknanobrowser LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/quicknanobrowser")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS Qml)
+find_package(Qt6 COMPONENTS Quick)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(quicknanobrowser
+ main.cpp
+ utils.h
+)
+set_target_properties(quicknanobrowser PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(quicknanobrowser PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::Qml
+ Qt::Quick
+ Qt::WebEngineQuick
+)
+
+
+# Resources:
+set(resources_resource_files
+ "ApplicationRoot.qml"
+ "BrowserDialog.qml"
+ "BrowserWindow.qml"
+ "DownloadView.qml"
+ "FindBar.qml"
+ "FullScreenNotification.qml"
+)
+
+qt6_add_resources(quicknanobrowser "resources"
+ PREFIX
+ "/"
+ FILES
+ ${resources_resource_files}
+)
+set_source_files_properties("icons/3rdparty/go-next.png"
+ PROPERTIES QT_RESOURCE_ALIAS "go-next.png"
+)
+set_source_files_properties("icons/3rdparty/go-previous.png"
+ PROPERTIES QT_RESOURCE_ALIAS "go-previous.png"
+)
+set_source_files_properties("icons/3rdparty/process-stop.png"
+ PROPERTIES QT_RESOURCE_ALIAS "process-stop.png"
+)
+set_source_files_properties("icons/3rdparty/view-refresh.png"
+ PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png"
+)
+set(resources1_resource_files
+ "icons/3rdparty/go-next.png"
+ "icons/3rdparty/go-previous.png"
+ "icons/3rdparty/process-stop.png"
+ "icons/3rdparty/view-refresh.png"
+)
+
+qt6_add_resources(quicknanobrowser "resources1"
+ PREFIX
+ "/icons"
+ FILES
+ ${resources1_resource_files}
+)
+
+if(TARGET Qt::Widgets)
+ target_link_libraries(quicknanobrowser PUBLIC
+ Qt::Widgets
+ )
+endif()
+
+install(TARGETS quicknanobrowser
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webengine/recipebrowser/CMakeLists.txt b/examples/webengine/recipebrowser/CMakeLists.txt
new file mode 100644
index 000000000..7019227d9
--- /dev/null
+++ b/examples/webengine/recipebrowser/CMakeLists.txt
@@ -0,0 +1,143 @@
+cmake_minimum_required(VERSION 3.18)
+project(recipebrowser LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/recipebrowser")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS Quick)
+find_package(Qt6 COMPONENTS Qml)
+find_package(Qt6 COMPONENTS QuickControls2)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(recipebrowser
+ main.cpp
+)
+set_target_properties(recipebrowser PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(recipebrowser PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::Qml
+ Qt::Quick
+ Qt::QuickControls2
+ Qt::WebEngineQucik
+)
+
+
+# Resources:
+set_source_files_properties("resources/pages/assets/3rdparty/markdown.css"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/assets/3rdparty/marked.js"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/assets/custom.css"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/assets/custom.js"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/burger.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/cupcakes.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/burger.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/cupcakes.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/pasta.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/pizza.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/skewers.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/soup.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/images/steak.jpg"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/pasta.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/pizza.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/skewers.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/soup.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/pages/steak.html"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/qml/RecipeList.qml"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set_source_files_properties("resources/qml/main.qml"
+ PROPERTIES QT_SKIP_QUICKCOMPILER 1
+)
+set(resources_resource_files
+ "pages/assets/3rdparty/markdown.css"
+ "pages/assets/3rdparty/marked.js"
+ "pages/assets/custom.css"
+ "pages/assets/custom.js"
+ "pages/burger.html"
+ "pages/cupcakes.html"
+ "pages/images/burger.jpg"
+ "pages/images/cupcakes.jpg"
+ "pages/images/pasta.jpg"
+ "pages/images/pizza.jpg"
+ "pages/images/skewers.jpg"
+ "pages/images/soup.jpg"
+ "pages/images/steak.jpg"
+ "pages/pasta.html"
+ "pages/pizza.html"
+ "pages/skewers.html"
+ "pages/soup.html"
+ "pages/steak.html"
+ "qml/RecipeList.qml"
+ "qml/main.qml"
+)
+
+qt6_add_resources(recipebrowser "resources"
+ PREFIX
+ "/"
+ BASE
+ "resources"
+ FILES
+ ${resources_resource_files}
+)
+
+if(CMAKE_CROSSCOMPILING AND (LINUX OR QNX OR posix))
+ target_compile_definitions(recipebrowser PUBLIC
+ QTWEBENGINE_RECIPE_BROWSER_EMBEDDED
+ )
+endif()
+
+install(TARGETS recipebrowser
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webengine/webengineaction/CMakeLists.txt b/examples/webengine/webengineaction/CMakeLists.txt
new file mode 100644
index 000000000..fce2f0b07
--- /dev/null
+++ b/examples/webengine/webengineaction/CMakeLists.txt
@@ -0,0 +1,50 @@
+cmake_minimum_required(VERSION 3.18)
+project(webengineaction LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webengine/webengineaction")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineQuick)
+
+qt_add_executable(webengineaction
+ main.cpp
+)
+set_target_properties(webengineaction PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(webengineaction PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineQuick
+)
+
+
+# Resources:
+set(qml_resource_files
+ "main.qml"
+)
+
+qt6_add_resources(webengineaction "qml"
+ PREFIX
+ "/"
+ FILES
+ ${qml_resource_files}
+)
+
+install(TARGETS webengineaction
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/CMakeLists.txt b/examples/webenginewidgets/CMakeLists.txt
new file mode 100644
index 000000000..651a01344
--- /dev/null
+++ b/examples/webenginewidgets/CMakeLists.txt
@@ -0,0 +1,21 @@
+add_subdirectory(minimal)
+add_subdirectory(contentmanipulation)
+add_subdirectory(cookiebrowser)
+add_subdirectory(notifications)
+add_subdirectory(simplebrowser)
+add_subdirectory(stylesheetbrowser)
+add_subdirectory(videoplayer)
+add_subdirectory(webui)
+if(QT_FEATURE_webengine_geolocation)
+ add_subdirectory(maps)
+endif()
+if(QT_FEATURE_webengine_webchannel)
+ add_subdirectory(markdowneditor)
+endif()
+if(QT_FEATURE_webengine_printing_and_pdf)
+ add_subdirectory(printme)
+ add_subdirectory(html2pdf)
+endif()
+if(QT_FEATURE_webengine_spellchecker AND NOT CMAKE_CROSSCOMPILING AND NOT QT_FEATURE_webengine_native_spellchecker)
+ add_subdirectory(spellchecker)
+endif()
diff --git a/examples/webenginewidgets/contentmanipulation/CMakeLists.txt b/examples/webenginewidgets/contentmanipulation/CMakeLists.txt
new file mode 100644
index 000000000..13986389d
--- /dev/null
+++ b/examples/webenginewidgets/contentmanipulation/CMakeLists.txt
@@ -0,0 +1,51 @@
+cmake_minimum_required(VERSION 3.18)
+project(contentmanipulation LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/contentmanipulation")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(contentmanipulation
+ main.cpp
+ mainwindow.cpp mainwindow.h
+)
+set_target_properties(contentmanipulation PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(contentmanipulation PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(jquery_resource_files
+ "jquery.min.js"
+)
+
+qt6_add_resources(contentmanipulation "jquery"
+ PREFIX
+ "/"
+ FILES
+ ${jquery_resource_files}
+)
+
+install(TARGETS contentmanipulation
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/cookiebrowser/CMakeLists.txt b/examples/webenginewidgets/cookiebrowser/CMakeLists.txt
new file mode 100644
index 000000000..51c936213
--- /dev/null
+++ b/examples/webenginewidgets/cookiebrowser/CMakeLists.txt
@@ -0,0 +1,56 @@
+cmake_minimum_required(VERSION 3.18)
+project(cookiebrowser LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/cookiebrowser")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(cookiebrowser
+ cookiedialog.ui
+ cookiewidget.ui
+ main.cpp
+ mainwindow.cpp mainwindow.h mainwindow.ui
+)
+set_target_properties(cookiebrowser PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(cookiebrowser PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set_source_files_properties("3rdparty/view-refresh.png"
+ PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png"
+)
+set(cookiebrowser_resource_files
+ "3rdparty/view-refresh.png"
+)
+
+qt6_add_resources(cookiebrowser "cookiebrowser"
+ PREFIX
+ "/"
+ FILES
+ ${cookiebrowser_resource_files}
+)
+
+install(TARGETS cookiebrowser
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/html2pdf/CMakeLists.txt b/examples/webenginewidgets/html2pdf/CMakeLists.txt
new file mode 100644
index 000000000..617a03e3b
--- /dev/null
+++ b/examples/webenginewidgets/html2pdf/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required(VERSION 3.18)
+project(html2pdf LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/html2pdf")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(html2pdf
+ html2pdf.cpp
+)
+set_target_properties(html2pdf PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(html2pdf PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+install(TARGETS html2pdf
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/maps/CMakeLists.txt b/examples/webenginewidgets/maps/CMakeLists.txt
new file mode 100644
index 000000000..8cb70abe1
--- /dev/null
+++ b/examples/webenginewidgets/maps/CMakeLists.txt
@@ -0,0 +1,38 @@
+cmake_minimum_required(VERSION 3.18)
+project(maps LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/maps")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(maps
+ main.cpp
+ mainwindow.cpp mainwindow.h
+)
+set_target_properties(maps PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(maps PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+install(TARGETS maps
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/markdowneditor/CMakeLists.txt b/examples/webenginewidgets/markdowneditor/CMakeLists.txt
new file mode 100644
index 000000000..458f8200f
--- /dev/null
+++ b/examples/webenginewidgets/markdowneditor/CMakeLists.txt
@@ -0,0 +1,60 @@
+cmake_minimum_required(VERSION 3.18)
+project(markdowneditor LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/markdowneditor")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+find_package(Qt6 COMPONENTS WebChannel)
+
+qt_add_executable(markdowneditor
+ document.cpp document.h
+ main.cpp
+ mainwindow.cpp mainwindow.h mainwindow.ui
+ previewpage.cpp previewpage.h
+)
+set_target_properties(markdowneditor PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(markdowneditor PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebChannel
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(markdowneditor_resource_files
+ "3rdparty/markdown.css"
+ "3rdparty/marked.js"
+ "default.md"
+ "index.html"
+)
+
+qt6_add_resources(markdowneditor "markdowneditor"
+ PREFIX
+ "/"
+ BASE
+ "resources"
+ FILES
+ ${markdowneditor_resource_files}
+)
+
+install(TARGETS markdowneditor
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/minimal/CMakeLists.txt b/examples/webenginewidgets/minimal/CMakeLists.txt
new file mode 100644
index 000000000..5edee428f
--- /dev/null
+++ b/examples/webenginewidgets/minimal/CMakeLists.txt
@@ -0,0 +1,37 @@
+cmake_minimum_required(VERSION 3.18)
+project(minimal LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/minimal-widgets")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(minimal-widgets
+ main.cpp
+)
+set_target_properties(minimal-widgets PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(minimal-widgets PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+install(TARGETS minimal-widgets
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/notifications/CMakeLists.txt b/examples/webenginewidgets/notifications/CMakeLists.txt
new file mode 100644
index 000000000..6a201e7e7
--- /dev/null
+++ b/examples/webenginewidgets/notifications/CMakeLists.txt
@@ -0,0 +1,54 @@
+cmake_minimum_required(VERSION 3.18)
+project(notifications LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/notifications")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(notifications
+ main.cpp
+ notificationpopup.h
+)
+set_target_properties(notifications PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(notifications PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(data_resource_files
+ "icon.png"
+ "index.html"
+)
+
+qt6_add_resources(notifications "data"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${data_resource_files}
+)
+
+install(TARGETS notifications
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/printme/CMakeLists.txt b/examples/webenginewidgets/printme/CMakeLists.txt
new file mode 100644
index 000000000..95af70461
--- /dev/null
+++ b/examples/webenginewidgets/printme/CMakeLists.txt
@@ -0,0 +1,57 @@
+cmake_minimum_required(VERSION 3.18)
+project(printme LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/printme")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+find_package(Qt6 COMPONENTS PrintSupport)
+
+qt_add_executable(printme
+ main.cpp
+ printhandler.cpp printhandler.h
+)
+set_target_properties(printme PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(printme PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::PrintSupport
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(data_resource_files
+ "icon.svg"
+ "index.html"
+ "style.css"
+)
+
+qt6_add_resources(printme "data"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${data_resource_files}
+)
+
+install(TARGETS printme
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/simplebrowser/CMakeLists.txt b/examples/webenginewidgets/simplebrowser/CMakeLists.txt
new file mode 100644
index 000000000..47583413c
--- /dev/null
+++ b/examples/webenginewidgets/simplebrowser/CMakeLists.txt
@@ -0,0 +1,106 @@
+cmake_minimum_required(VERSION 3.18)
+project(simplebrowser LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/simplebrowser")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(simplebrowser
+ browser.cpp browser.h
+ browserwindow.cpp browserwindow.h
+ certificateerrordialog.ui
+ downloadmanagerwidget.cpp downloadmanagerwidget.h downloadmanagerwidget.ui
+ downloadwidget.cpp downloadwidget.h downloadwidget.ui
+ main.cpp
+ passworddialog.ui
+ tabwidget.cpp tabwidget.h
+ webpage.cpp webpage.h
+ webpopupwindow.cpp webpopupwindow.h
+ webview.cpp webview.h
+)
+set_target_properties(simplebrowser PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(simplebrowser PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(simplebrowser_resource_files
+ "AppLogoColor.png"
+ "ninja.png"
+)
+
+qt6_add_resources(simplebrowser "simplebrowser"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${simplebrowser_resource_files}
+)
+set_source_files_properties("data/3rdparty/dialog-error.png"
+ PROPERTIES QT_RESOURCE_ALIAS "dialog-error.png"
+)
+set_source_files_properties("data/3rdparty/edit-clear.png"
+ PROPERTIES QT_RESOURCE_ALIAS "edit-clear.png"
+)
+set_source_files_properties("data/3rdparty/go-bottom.png"
+ PROPERTIES QT_RESOURCE_ALIAS "go-bottom.png"
+)
+set_source_files_properties("data/3rdparty/go-next.png"
+ PROPERTIES QT_RESOURCE_ALIAS "go-next.png"
+)
+set_source_files_properties("data/3rdparty/go-previous.png"
+ PROPERTIES QT_RESOURCE_ALIAS "go-previous.png"
+)
+set_source_files_properties("data/3rdparty/process-stop.png"
+ PROPERTIES QT_RESOURCE_ALIAS "process-stop.png"
+)
+set_source_files_properties("data/3rdparty/text-html.png"
+ PROPERTIES QT_RESOURCE_ALIAS "text-html.png"
+)
+set_source_files_properties("data/3rdparty/view-refresh.png"
+ PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png"
+)
+set(simplebrowser1_resource_files
+ "3rdparty/dialog-error.png"
+ "3rdparty/edit-clear.png"
+ "3rdparty/go-bottom.png"
+ "3rdparty/go-next.png"
+ "3rdparty/go-previous.png"
+ "3rdparty/process-stop.png"
+ "3rdparty/text-html.png"
+ "3rdparty/view-refresh.png"
+)
+
+qt6_add_resources(simplebrowser "simplebrowser1"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${simplebrowser1_resource_files}
+)
+
+install(TARGETS simplebrowser
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/spellchecker/CMakeLists.txt b/examples/webenginewidgets/spellchecker/CMakeLists.txt
new file mode 100644
index 000000000..a5e51ad53
--- /dev/null
+++ b/examples/webenginewidgets/spellchecker/CMakeLists.txt
@@ -0,0 +1,55 @@
+cmake_minimum_required(VERSION 3.18)
+project(spellchecker LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/spellchecker")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(spellchecker
+ main.cpp
+ webview.cpp webview.h
+)
+set_target_properties(spellchecker PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(spellchecker PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(spellchecker_resource_files
+ "icon.svg"
+ "index.html"
+ "style.css"
+)
+
+qt6_add_resources(spellchecker "spellchecker"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${spellchecker_resource_files}
+)
+
+install(TARGETS spellchecker
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt b/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt
new file mode 100644
index 000000000..774854ade
--- /dev/null
+++ b/examples/webenginewidgets/stylesheetbrowser/CMakeLists.txt
@@ -0,0 +1,55 @@
+cmake_minimum_required(VERSION 3.18)
+project(stylesheetbrowser LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/stylesheetbrowser")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(stylesheetbrowser
+ main.cpp
+ mainwindow.cpp mainwindow.h mainwindow.ui
+ stylesheetdialog.cpp stylesheetdialog.h stylesheetdialog.ui
+)
+set_target_properties(stylesheetbrowser PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(stylesheetbrowser PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set_source_files_properties("3rdparty/view-refresh.png"
+ PROPERTIES QT_RESOURCE_ALIAS "view-refresh.png"
+)
+set(stylesheetbrowser_resource_files
+ "3rdparty/view-refresh.png"
+)
+
+qt6_add_resources(stylesheetbrowser "stylesheetbrowser"
+ PREFIX
+ "/"
+ FILES
+ ${stylesheetbrowser_resource_files}
+)
+
+install(TARGETS stylesheetbrowser
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/videoplayer/CMakeLists.txt b/examples/webenginewidgets/videoplayer/CMakeLists.txt
new file mode 100644
index 000000000..7e49beb4b
--- /dev/null
+++ b/examples/webenginewidgets/videoplayer/CMakeLists.txt
@@ -0,0 +1,55 @@
+cmake_minimum_required(VERSION 3.18)
+project(videoplayer LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/videoplayer")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(videoplayer
+ fullscreennotification.cpp fullscreennotification.h
+ fullscreenwindow.cpp fullscreenwindow.h
+ main.cpp
+ mainwindow.cpp mainwindow.h
+)
+set_target_properties(videoplayer PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(videoplayer PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(videoplayer_resource_files
+ "index.html"
+)
+
+qt6_add_resources(videoplayer "videoplayer"
+ PREFIX
+ "/"
+ BASE
+ "data"
+ FILES
+ ${videoplayer_resource_files}
+)
+
+install(TARGETS videoplayer
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)
diff --git a/examples/webenginewidgets/webenginewidgets.pro b/examples/webenginewidgets/webenginewidgets.pro
index deb42a8cd..f783fc681 100644
--- a/examples/webenginewidgets/webenginewidgets.pro
+++ b/examples/webenginewidgets/webenginewidgets.pro
@@ -1,4 +1,3 @@
-include($$QTWEBENGINE_OUT_ROOT/src/core/qtwebenginecore-config.pri) # workaround for QTBUG-68093
QT_FOR_CONFIG += webenginecore webenginecore-private
TEMPLATE=subdirs
@@ -20,9 +19,9 @@ qtConfig(webengine-printing-and-pdf) {
SUBDIRS += printme html2pdf
}
-qtConfig(webengine-spellchecker):!qtConfig(webengine-native-spellchecker):!cross_compile {
- SUBDIRS += spellchecker
-} else {
- message("Spellcheck example will not be built because it depends on usage of Hunspell dictionaries.")
-}
+#qtConfig(webengine-spellchecker):!qtConfig(webengine-native-spellchecker):!cross_compile {
+# SUBDIRS += spellchecker
+#} else {
+# message("Spellcheck example will not be built because it depends on usage of Hunspell dictionaries.")
+#}
diff --git a/examples/webenginewidgets/webui/CMakeLists.txt b/examples/webenginewidgets/webui/CMakeLists.txt
new file mode 100644
index 000000000..61c271159
--- /dev/null
+++ b/examples/webenginewidgets/webui/CMakeLists.txt
@@ -0,0 +1,51 @@
+cmake_minimum_required(VERSION 3.18)
+project(webui LANGUAGES CXX)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_AUTOUIC ON)
+
+if(NOT DEFINED INSTALL_EXAMPLESDIR)
+ set(INSTALL_EXAMPLESDIR "examples")
+endif()
+
+set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/webenginewidgets/webui")
+
+find_package(Qt6 COMPONENTS Core)
+find_package(Qt6 COMPONENTS Gui)
+find_package(Qt6 COMPONENTS WebEngineWidgets)
+
+qt_add_executable(webui
+ main.cpp
+ webuihandler.cpp webuihandler.h
+)
+set_target_properties(webui PROPERTIES
+ WIN32_EXECUTABLE TRUE
+ MACOSX_BUNDLE TRUE
+)
+target_link_libraries(webui PUBLIC
+ Qt::Core
+ Qt::Gui
+ Qt::WebEngineWidgets
+)
+
+
+# Resources:
+set(webui_resource_files
+ "about.html"
+)
+
+qt6_add_resources(webui "webui"
+ PREFIX
+ "/"
+ FILES
+ ${webui_resource_files}
+)
+
+install(TARGETS webui
+ RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}"
+ BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}"
+ LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}"
+)