├── .clang-format
├── .editorconfig
├── .gitattributes
├── .github
├── ISSUE_TEMPLATE
│ ├── bug-report--报告你发现的缺陷-.md
│ ├── config.yml
│ └── feature-request--提议你想增加的功能-.md
├── release.yml
└── workflows
│ ├── build-linux-x86_64.yml
│ ├── build-macos-x86_64.yml
│ ├── build-windows-x86_64.yml
│ └── create-release.yml
├── .gitignore
├── .gitmodules
├── CMakeLists.txt
├── CONTRIBUTING.md
├── LICENSE
├── cmake
└── QtConfig.cmake
├── docs
├── 00-_introduction_8md.html
├── 01-_build_and_config_8md.html
├── 02-_first_project_8md.html
├── 03-_resource_loading_8md.html
├── 04-_interoperability_8md.html
├── 05-_rendering_8md.html
├── 06-_web_a_p_is_8md.html
├── _cef_version_8h.html
├── _cef_version_8h.js
├── _q_cef_config_8h.html
├── _q_cef_config_8h.js
├── _q_cef_context_8h.html
├── _q_cef_context_8h.js
├── _q_cef_download_item_8h.html
├── _q_cef_download_item_8h.js
├── _q_cef_event_8h.html
├── _q_cef_event_8h.js
├── _q_cef_query_8h.html
├── _q_cef_query_8h.js
├── _q_cef_setting_8h.html
├── _q_cef_setting_8h.js
├── _q_cef_view_8h.html
├── _q_cef_view_8h.js
├── _q_cef_view__global_8h.html
├── _q_cef_view__global_8h.js
├── add-event-listener-01.png
├── add-event-listener-02.png
├── annotated.html
├── annotated_dup.js
├── bc_s.png
├── bc_sd.png
├── cefview-query-01.png
├── cefview-query-02.png
├── class_q_cef_config-members.html
├── class_q_cef_config.html
├── class_q_cef_config.js
├── class_q_cef_context-members.html
├── class_q_cef_context.html
├── class_q_cef_context.js
├── class_q_cef_download_item-members.html
├── class_q_cef_download_item.html
├── class_q_cef_download_item.js
├── class_q_cef_event-members.html
├── class_q_cef_event.html
├── class_q_cef_event.js
├── class_q_cef_query-members.html
├── class_q_cef_query.html
├── class_q_cef_query.js
├── class_q_cef_setting-members.html
├── class_q_cef_setting.html
├── class_q_cef_setting.js
├── class_q_cef_view-members.html
├── class_q_cef_view.html
├── class_q_cef_view.js
├── classes.html
├── clipboard.js
├── closed.png
├── cookie.js
├── custom-alternative.css
├── custom.css
├── deprecated.html
├── dir_d44c64559bbebec7f509842c48db8b23.html
├── dir_d44c64559bbebec7f509842c48db8b23.js
├── dir_f717602cc3ca9f25f43675f90fbe7db2.html
├── doc.svg
├── docd.svg
├── doxygen-awesome-darkmode-toggle.js
├── doxygen-awesome-fragment-copy-button.js
├── doxygen-awesome-interactive-toc.js
├── doxygen-awesome-paragraph-link.js
├── doxygen-awesome-sidebar-only-darkmode-toggle.css
├── doxygen-awesome-sidebar-only.css
├── doxygen-awesome-tabs.js
├── doxygen-awesome.css
├── doxygen.css
├── doxygen.svg
├── doxygen_crawl.html
├── dynsections.js
├── files.html
├── files_dup.js
├── first-project.png
├── folderclosed.svg
├── folderclosedd.svg
├── folderopen.svg
├── folderopend.svg
├── functions.html
├── functions_b.html
├── functions_c.html
├── functions_d.html
├── functions_dup.js
├── functions_e.html
├── functions_enum.html
├── functions_eval.html
├── functions_f.html
├── functions_func.html
├── functions_func.js
├── functions_func_b.html
├── functions_func_c.html
├── functions_func_d.html
├── functions_func_e.html
├── functions_func_f.html
├── functions_func_h.html
├── functions_func_i.html
├── functions_func_j.html
├── functions_func_k.html
├── functions_func_l.html
├── functions_func_m.html
├── functions_func_n.html
├── functions_func_o.html
├── functions_func_p.html
├── functions_func_q.html
├── functions_func_r.html
├── functions_func_s.html
├── functions_func_t.html
├── functions_func_u.html
├── functions_func_w.html
├── functions_func_~.html
├── functions_h.html
├── functions_i.html
├── functions_j.html
├── functions_k.html
├── functions_l.html
├── functions_m.html
├── functions_n.html
├── functions_o.html
├── functions_p.html
├── functions_q.html
├── functions_r.html
├── functions_s.html
├── functions_t.html
├── functions_u.html
├── functions_vars.html
├── functions_w.html
├── functions_~.html
├── globals.html
├── globals_defs.html
├── globals_func.html
├── hierarchy.html
├── hierarchy.js
├── index.html
├── index.js
├── invoke-method-01.png
├── invoke-method-02.png
├── jquery.js
├── linux-demo.png
├── macOS-demo.png
├── md_docs_201-_build_and_config.html
├── md_docs_202-_first_project.html
├── md_docs_203-_resource_loading.html
├── md_docs_204-_interoperability.html
├── md_docs_205-_rendering.html
├── md_docs_206-_web_a_p_is.html
├── menu.js
├── menudata.js
├── minus.svg
├── minusd.svg
├── nav_f.png
├── nav_fd.png
├── nav_g.png
├── nav_h.png
├── nav_hd.png
├── navtree.css
├── navtree.js
├── navtreedata.js
├── navtreeindex0.js
├── navtreeindex1.js
├── open.png
├── pages.html
├── plus.svg
├── plusd.svg
├── resize.js
├── search
│ ├── all_0.js
│ ├── all_1.js
│ ├── all_10.js
│ ├── all_11.js
│ ├── all_12.js
│ ├── all_13.js
│ ├── all_14.js
│ ├── all_15.js
│ ├── all_16.js
│ ├── all_17.js
│ ├── all_18.js
│ ├── all_19.js
│ ├── all_1a.js
│ ├── all_1b.js
│ ├── all_2.js
│ ├── all_3.js
│ ├── all_4.js
│ ├── all_5.js
│ ├── all_6.js
│ ├── all_7.js
│ ├── all_8.js
│ ├── all_9.js
│ ├── all_a.js
│ ├── all_b.js
│ ├── all_c.js
│ ├── all_d.js
│ ├── all_e.js
│ ├── all_f.js
│ ├── classes_0.js
│ ├── close.svg
│ ├── defines_0.js
│ ├── defines_1.js
│ ├── defines_2.js
│ ├── defines_3.js
│ ├── enums_0.js
│ ├── enums_1.js
│ ├── enumvalues_0.js
│ ├── enumvalues_1.js
│ ├── files_0.js
│ ├── files_1.js
│ ├── files_2.js
│ ├── functions_0.js
│ ├── functions_1.js
│ ├── functions_10.js
│ ├── functions_11.js
│ ├── functions_12.js
│ ├── functions_13.js
│ ├── functions_14.js
│ ├── functions_15.js
│ ├── functions_2.js
│ ├── functions_3.js
│ ├── functions_4.js
│ ├── functions_5.js
│ ├── functions_6.js
│ ├── functions_7.js
│ ├── functions_8.js
│ ├── functions_9.js
│ ├── functions_a.js
│ ├── functions_b.js
│ ├── functions_c.js
│ ├── functions_d.js
│ ├── functions_e.js
│ ├── functions_f.js
│ ├── mag.svg
│ ├── mag_d.svg
│ ├── mag_sel.svg
│ ├── mag_seld.svg
│ ├── pages_0.js
│ ├── pages_1.js
│ ├── pages_2.js
│ ├── pages_3.js
│ ├── pages_4.js
│ ├── pages_5.js
│ ├── pages_6.js
│ ├── pages_7.js
│ ├── pages_8.js
│ ├── pages_9.js
│ ├── search.css
│ ├── search.js
│ ├── searchdata.js
│ ├── variables_0.js
│ └── variables_1.js
├── splitbar.png
├── splitbard.png
├── sync_off.png
├── sync_on.png
├── tab_a.png
├── tab_ad.png
├── tab_b.png
├── tab_bd.png
├── tab_h.png
├── tab_hd.png
├── tab_s.png
├── tab_sd.png
├── tabs.css
├── toggle-alternative-theme.js
└── windows-demo.png
├── example
└── QCefViewTest
│ ├── CMakeLists.txt
│ ├── CefViewWidget.cpp
│ ├── CefViewWidget.h
│ ├── DownloadManager.cpp
│ ├── DownloadManager.h
│ ├── MainWindow.cpp
│ ├── MainWindow.h
│ ├── MainWindow.ui
│ ├── QCefViewTest.manifest
│ ├── mac
│ ├── Info.plist
│ └── MainWindow_mac.mm
│ ├── main.cpp
│ ├── qcefviewtest.qrc
│ └── websrc
│ ├── iframe.in.html
│ ├── left.in.html
│ └── right.in.html
├── generate-linux-x86.sh
├── generate-linux-x86_64.sh
├── generate-mac-arm64.sh
├── generate-mac-x86_64.sh
├── generate-win-arm64.bat
├── generate-win-x86.bat
├── generate-win-x86_64.bat
├── include
├── CefVersion.h
├── QCefConfig.h
├── QCefContext.h
├── QCefDownloadItem.h
├── QCefEvent.h
├── QCefQuery.h
├── QCefSetting.h
├── QCefView.h
└── QCefView_global.h
├── readme.md
├── scripts
└── doxygen
│ ├── Doxyfile
│ ├── docs
│ ├── 00-Introduction.md
│ ├── 01-BuildAndConfig.md
│ ├── 02-FirstProject.md
│ ├── 03-ResourceLoading.md
│ ├── 04-Interoperability.md
│ ├── 05-Rendering.md
│ ├── 06-WebAPIs.md
│ └── img
│ │ ├── QCefViewTest-Windows-Hardware-Rendering-FPS1000-Limit.png
│ │ ├── QCefViewTest-Windows-Software-Rendering-FPS1000-Limit.png
│ │ ├── QCefViewTest-macOS-Hardware-Rendering-FPS1000-Limit.png
│ │ ├── QCefViewTest-macOS-Software-Rendering-FPS1000-Limit.png
│ │ ├── guide
│ │ ├── add-event-listener-01.png
│ │ ├── add-event-listener-02.png
│ │ ├── cefview-query-01.png
│ │ ├── cefview-query-02.png
│ │ ├── first-project.png
│ │ ├── invoke-method-01.png
│ │ └── invoke-method-02.png
│ │ ├── linux-demo.png
│ │ ├── macOS-demo.png
│ │ └── windows-demo.png
│ ├── gen-doc.bat
│ └── theme
│ ├── css
│ ├── custom-alternative.css
│ ├── custom.css
│ ├── doxygen-awesome-sidebar-only-darkmode-toggle.css
│ ├── doxygen-awesome-sidebar-only.css
│ └── doxygen-awesome.css
│ ├── html
│ └── header.html
│ └── js
│ ├── doxygen-awesome-darkmode-toggle.js
│ ├── doxygen-awesome-fragment-copy-button.js
│ ├── doxygen-awesome-interactive-toc.js
│ ├── doxygen-awesome-paragraph-link.js
│ ├── doxygen-awesome-tabs.js
│ └── toggle-alternative-theme.js
├── src
├── CMakeLists.txt
├── QCefConfig.cpp
├── QCefContext.cpp
├── QCefDownloadItem.cpp
├── QCefEvent.cpp
├── QCefQuery.cpp
├── QCefSetting.cpp
├── QCefView.cpp
├── QCefView_global.h.in
├── details
│ ├── CCefAppDelegate.cpp
│ ├── CCefAppDelegate.h
│ ├── CCefClientDelegate.cpp
│ ├── CCefClientDelegate.h
│ ├── QCefConfigPrivate.cpp
│ ├── QCefConfigPrivate.h
│ ├── QCefContextPrivate.cpp
│ ├── QCefContextPrivate.h
│ ├── QCefDownloadItemPrivate.cpp
│ ├── QCefDownloadItemPrivate.h
│ ├── QCefEventPrivate.cpp
│ ├── QCefEventPrivate.h
│ ├── QCefQueryPrivate.cpp
│ ├── QCefQueryPrivate.h
│ ├── QCefSettingPrivate.cpp
│ ├── QCefSettingPrivate.h
│ ├── QCefViewPrivate.cpp
│ ├── QCefViewPrivate.h
│ ├── QCefWindow.cpp
│ ├── QCefWindow.h
│ ├── handler
│ │ ├── CCefClientDelegate_ContextMenuHandler.cpp
│ │ ├── CCefClientDelegate_DialogHandler.cpp
│ │ ├── CCefClientDelegate_DisplayHandler.cpp
│ │ ├── CCefClientDelegate_DownloadHandler.cpp
│ │ ├── CCefClientDelegate_DragHandler.cpp
│ │ ├── CCefClientDelegate_FocusHandler.cpp
│ │ ├── CCefClientDelegate_JSDialogHandler.cpp
│ │ ├── CCefClientDelegate_KeyboardHandler.cpp
│ │ ├── CCefClientDelegate_LifeSpanHandler.cpp
│ │ ├── CCefClientDelegate_LoadHandler.cpp
│ │ └── CCefClientDelegate_RenderHandler.cpp
│ ├── render
│ │ ├── CefViewRendererFactory.cpp
│ │ ├── CefViewRendererFactory.h
│ │ ├── ICefViewRenderer.h
│ │ ├── hardware
│ │ │ ├── CefViewHardwareRenderer.cpp
│ │ │ └── CefViewHardwareRenderer.h
│ │ └── software
│ │ │ ├── QtSoftwareRenderer.cpp
│ │ │ └── QtSoftwareRenderer.h
│ └── utils
│ │ ├── CommonUtils.cpp
│ │ ├── CommonUtils.h
│ │ ├── CursorUtils.cpp
│ │ ├── CursorUtils.h
│ │ ├── DragAndDropUtils.cpp
│ │ ├── DragAndDropUtils.h
│ │ ├── KeyboardUtils.cpp
│ │ ├── KeyboardUtils.h
│ │ ├── MenuBuilder.cpp
│ │ ├── MenuBuilder.h
│ │ ├── ValueConvertor.cpp
│ │ └── ValueConvertor.h
├── linux
│ └── details
│ │ ├── QCefContextPrivate_linux.cpp
│ │ └── render
│ │ └── hardware
│ │ ├── OpenGLRenderBackend.cpp
│ │ └── OpenGLRenderBackend.h
├── mac
│ ├── Info.plist
│ └── details
│ │ ├── QCefContextPrivate_mac.mm
│ │ └── render
│ │ └── hardware
│ │ ├── MetalRenderBackend.h
│ │ └── MetalRenderBackend.mm
└── win
│ └── details
│ ├── QCefContextPrivate_win.cpp
│ └── render
│ └── hardware
│ ├── DX11RenderBackend.cpp
│ └── DX11RenderBackend.h
└── thirdparty
└── CMakeLists.txt
/.clang-format:
--------------------------------------------------------------------------------
1 | ---
2 | BasedOnStyle: Mozilla
3 | ColumnLimit: 120
4 | AlignAfterOpenBracket: Align
5 | BinPackArguments: false
6 | SortIncludes: true
7 | FixNamespaceComments: true # add commend at end:
8 | NamespaceIndentation: None #intend content of namespace
9 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | # To learn more about .editorconfig see https://aka.ms/editorconfigdocs
2 |
3 | # All files
4 | [*.{c,cpp,cxx,h,hpp,hxx}]
5 | indent_style = space
6 | charset = utf-8-bom
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto eol=lf
2 | *.{cmd,[cC][mM][dD]} text eol=crlf
3 | *.{bat,[bB][aA][tT]} text eol=crlf
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug-report--报告你发现的缺陷-.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug Report [报告你发现的缺陷]
3 | about: Create a bug report to help us improve 【请使用此模板提交BUG报告,没有使用模板的issue将被直接关闭】
4 | title: "[BUG]: "
5 | labels: bug, feature, triage
6 | assignees: tishion
7 |
8 | ---
9 |
10 | [//]: # (以下所有的以"[//]: #"开始的文字都是注释,不会被markdown渲染,所以无需删除)
11 | [//]: # (All lines start "with [//]: #" below are comment lines and will not be rebdered by markdown, so there's no need to delete them)
12 |
13 |
14 | [//]: # (注意:如果你发现的BUG是由于使用了与当前代码库中不同的Qt/CEF版本,该BUG将会被忽略)
15 | [//]: # (Node: if you find some bugs caused by using different CEF/Qt version with the one in current repo, this report will be ignored)
16 |
17 | **Describe the bug 【Bug描述】**
18 |
19 | [//]: # (在下面填写描述BUG发生的表现)
20 | [//]: # (A clear and concise description of what the bug is)
21 | ...
22 |
23 |
24 | **To Reproduce 【复现步骤】**
25 |
26 | [//]: # (在下面填写复现该BUG的详细操作步骤)
27 | [//]: # (Steps to reproduce the behavior)
28 | 1. Go to '...'
29 | 2. Click on '....'
30 | 3. Scroll down to '....'
31 | 4. See error
32 |
33 | **Expected behavior 【正确的预期行为】**
34 |
35 | [//]: # (在下面填写如果不存在该BUG时候预期的正确行为)
36 | [//]: # (A clear and concise description of what you expected to happen)
37 | ...
38 |
39 | **Screenshots 【截图】**
40 |
41 | [//]: # (如果可以请在下面请提供BUG的截图信息)
42 | [//]: # (If applicable, add screenshots to help explain your problem)
43 | ...
44 |
45 | **Environment 【BUG产生的环境】**
46 |
47 | [//]: # (请提供以下信息,OSR和非OSR模式为必须提供项目,无此项目issue不会被处理)
48 | [//]: # (Please complete the following information, OSR/NCW is mandatory)
49 | - OSR/NCW Mode:
50 | - OS & Version: [e.g. Windows/macOS/Linux]
51 | - Qt Version:
52 | - CEF Version:
53 |
54 |
55 | **Additional context 【更多额外信息】**
56 |
57 | [//]: # (如有更多额外信息,请在下面添加)
58 | [//]: # (Add any other context about the problem here)
59 | ...
60 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: FAQ-讨论区
4 | url: https://github.com/CefView/QCefView/discussions
5 | about: Please ask and answer questions here.【请在这里获取帮助/解答】
6 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature-request--提议你想增加的功能-.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request 【提议你想增加的功能】
3 | about: Suggest an idea for this project 【请使用此模板发起新特性需求】
4 | title: "[FEATURE]"
5 | labels: triage
6 | assignees: tishion
7 |
8 | ---
9 |
10 | [//]: # (以下所有的以"[//]: #"开始的文字都是注释,不会被markdown渲染,所以无需删除)
11 | [//]: # (All lines start "with [//]: #" below are comment lines and will not be rendered by markdown, so there's no need to delete them)
12 |
13 | ** Feature Description 【特性详细描述】**
14 |
15 | [//]: # (请在下面描述所需新特性的详细信息)
16 | [//]: # (Please describe the detailed information about the request feature)
17 | ...
18 |
--------------------------------------------------------------------------------
/.github/release.yml:
--------------------------------------------------------------------------------
1 | changelog:
2 | exclude:
3 | labels:
4 | - ignore-for-release
5 | categories:
6 | - title: 🛑 Breaking Changes
7 | labels:
8 | - breaking-change
9 | - title: 🎉 New Features
10 | labels:
11 | - feature
12 | - enhancement
13 | - title: 🌈 Bug Fix
14 | labels:
15 | - bug
16 | - title: Other Changes
17 | labels:
18 | - "*"
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .vscode
2 | .build
3 | .build.*
4 | dep/cef
5 | output
6 | .DS_Store
7 | CMakeLists.txt.user
8 | docs/doxygen/xml
9 | out
10 | scripts/doxygen/xml
11 | include/QCefView_global.h
12 | .idea/
13 | cmake-build-*/
14 | build
15 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/.gitmodules
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | This project welcomes contributions and suggestions.
2 | Make sure to align your code style with the configuration defined by .clang-format file
3 |
4 | Making contributions is not a hard thing.
5 | - Solving an issue(maybe just answering a question raised in issues list or gitter)-
6 | - Fixing/Issuing a bug
7 | - Improving the documents and even fixing a typo
8 | are important contributions to QCefView
9 |
10 | If you would like to become one of QCefView's maintainers to contribute more (e.g. help merge PR, triage issues), please contact me by email(sheentianshen#gmail.com). I am glad to help you to set the right permission.
11 |
--------------------------------------------------------------------------------
/cmake/QtConfig.cmake:
--------------------------------------------------------------------------------
1 | # ################################################################################
2 | #
3 | # The Qt SDK path
4 | # You can set the environment variable via
5 | # 1. command line
6 | # Windows: SET QTDIR=PATH/TO/QT
7 | # Non-Windows: export QTDIR=PATH/TO/QT
8 | # 2. modifying the value below directly
9 | #
10 |
11 | # Qt build toolchain path not set or doesn't exist
12 | # try to read from environment QTDIR
13 | if(NOT EXISTS ${QT_SDK_DIR})
14 | message(STATUS "QT_SDK_DIR not found, try to read from environment variable: QTDIR")
15 | set(QT_SDK_DIR "$ENV{QTDIR}" CACHE STRING "QT_SDK_DIR read from environment variable: QTDIR" FORCE)
16 | endif()
17 |
18 | # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!NOTE!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
19 | # You must make sure the target platform and architecture
20 | # of QT binaries math the ones of CEF binaries
21 | # Qt linux-x86 + CEF linux-x86
22 | # Qt linux-x86_64 + CEF linux-x86_64
23 | # Qt windows-x86 + CEF windows-x86
24 | # Qt windows-x86_64 + CEF windows-x86_64
25 | # Qt macos-x86_64 + CEF macos-x86_64
26 | # Qt macos-arm64 + CEF macos-arm64
27 | #
28 |
29 | # find required components
30 | message(STATUS "Qt SDK dir: " ${QT_SDK_DIR})
31 | set(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ${QT_SDK_DIR})
32 | find_package(QT NAMES Qt6 Qt5 COMPONENTS Core Gui Widgets REQUIRED)
33 | find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Core Gui Widgets REQUIRED)
--------------------------------------------------------------------------------
/docs/_cef_version_8h.js:
--------------------------------------------------------------------------------
1 | var _cef_version_8h =
2 | [
3 | [ "CEF_VERSION", "_cef_version_8h.html#af685e354a4145c66d8020a366872fa31", null ],
4 | [ "CEF_VERSION_MAJOR", "_cef_version_8h.html#a7a9be029daf6e2078b974348dcea2985", null ],
5 | [ "CEF_VERSION_MINOR", "_cef_version_8h.html#a67ccdb367f59d0948c8c607b3fa8c1fd", null ],
6 | [ "CEF_VERSION_PATCH", "_cef_version_8h.html#a43e12afa87b9af993b0aa6aba4d4cc80", null ],
7 | [ "CEF_COMMIT_NUMBER", "_cef_version_8h.html#a95fd47d721b7760374eeee9089bedd54", null ],
8 | [ "CEF_COMMIT_HASH", "_cef_version_8h.html#a3eed202b5601adca42fcb536e7fc8301", null ]
9 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_config_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_config_8h =
2 | [
3 | [ "QCefConfig", "class_q_cef_config.html", "class_q_cef_config" ],
4 | [ "Q_DECLARE_METATYPE", "_q_cef_config_8h.html#a9c4f9b520ed6a74eb2f7c521c08471c6", null ]
5 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_context_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_context_8h =
2 | [
3 | [ "QCefContext", "class_q_cef_context.html", "class_q_cef_context" ]
4 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_download_item_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_download_item_8h =
2 | [
3 | [ "QCefDownloadItem", "class_q_cef_download_item.html", "class_q_cef_download_item" ]
4 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_event_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_event_8h =
2 | [
3 | [ "QCefEvent", "class_q_cef_event.html", "class_q_cef_event" ],
4 | [ "Q_DECLARE_METATYPE", "_q_cef_event_8h.html#ad2abcec84743c92df60fa3b333b3d2b5", null ]
5 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_query_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_query_8h =
2 | [
3 | [ "QCefQuery", "class_q_cef_query.html", "class_q_cef_query" ],
4 | [ "Q_DECLARE_METATYPE", "_q_cef_query_8h.html#a83540a9479efcf57275cd6d2e99cb415", null ]
5 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_setting_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_setting_8h =
2 | [
3 | [ "QCefSetting", "class_q_cef_setting.html", "class_q_cef_setting" ],
4 | [ "Q_DECLARE_METATYPE", "_q_cef_setting_8h.html#a08f5f6912484f50f55dae4c9dedbd2a4", null ]
5 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_view_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_view_8h =
2 | [
3 | [ "QCefView", "class_q_cef_view.html", "class_q_cef_view" ],
4 | [ "QCefBrowserId", "_q_cef_view_8h.html#aa777d6fc375d0b946818bfb17c3292df", null ],
5 | [ "QCefFrameId", "_q_cef_view_8h.html#a9f68e892e3db80ea20e887e4ac50de5b", null ]
6 | ];
--------------------------------------------------------------------------------
/docs/_q_cef_view__global_8h.js:
--------------------------------------------------------------------------------
1 | var _q_cef_view__global_8h =
2 | [
3 | [ "QCEFVIEW_EXPORT", "_q_cef_view__global_8h.html#a4489f56825bd83a3b95b3d18fdca331f", null ],
4 | [ "DEPRECATED_SINCE_CEF_VERSION", "_q_cef_view__global_8h.html#a761b5c2677e327ac6c1c3e8a8b67f067", null ],
5 | [ "DEPRECATED_CEF_API_WARNING", "_q_cef_view__global_8h.html#a342783eb60e0e77913cc501712966dab", null ],
6 | [ "INTRODUCED_SINCE_CEF_VERSION", "_q_cef_view__global_8h.html#a3dcdd1222917bd78bc60c08d2c041d2b", null ],
7 | [ "INTRODUCED_CEF_API_WARNING", "_q_cef_view__global_8h.html#af3bf408a6987e48e4ebe84ca2669d6a4", null ]
8 | ];
--------------------------------------------------------------------------------
/docs/add-event-listener-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/add-event-listener-01.png
--------------------------------------------------------------------------------
/docs/add-event-listener-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/add-event-listener-02.png
--------------------------------------------------------------------------------
/docs/annotated_dup.js:
--------------------------------------------------------------------------------
1 | var annotated_dup =
2 | [
3 | [ "QCefConfig", "class_q_cef_config.html", "class_q_cef_config" ],
4 | [ "QCefContext", "class_q_cef_context.html", "class_q_cef_context" ],
5 | [ "QCefDownloadItem", "class_q_cef_download_item.html", "class_q_cef_download_item" ],
6 | [ "QCefEvent", "class_q_cef_event.html", "class_q_cef_event" ],
7 | [ "QCefQuery", "class_q_cef_query.html", "class_q_cef_query" ],
8 | [ "QCefSetting", "class_q_cef_setting.html", "class_q_cef_setting" ],
9 | [ "QCefView", "class_q_cef_view.html", "class_q_cef_view" ]
10 | ];
--------------------------------------------------------------------------------
/docs/bc_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/bc_s.png
--------------------------------------------------------------------------------
/docs/bc_sd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/bc_sd.png
--------------------------------------------------------------------------------
/docs/cefview-query-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/cefview-query-01.png
--------------------------------------------------------------------------------
/docs/cefview-query-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/cefview-query-02.png
--------------------------------------------------------------------------------
/docs/class_q_cef_context.js:
--------------------------------------------------------------------------------
1 | var class_q_cef_context =
2 | [
3 | [ "QCefContext", "class_q_cef_context.html#aa2b8af8d2d806ba8b5110e868d314c8c", null ],
4 | [ "~QCefContext", "class_q_cef_context.html#a91de7d9c36aafdaca390a355d6da5c6d", null ],
5 | [ "addLocalFolderResource", "class_q_cef_context.html#aecc6f7ee9d296bcf8d2ba470e0c0e454", null ],
6 | [ "addArchiveResource", "class_q_cef_context.html#aba9c70a84379190d151bdc4b634367e6", null ],
7 | [ "addCookie", "class_q_cef_context.html#a6d2e90de7fb5fcf2b7e7a6581d26e62c", null ],
8 | [ "deleteAllCookies", "class_q_cef_context.html#a794e41a74ddabc503bed5e8c47fe3dd0", null ],
9 | [ "addCrossOriginWhitelistEntry", "class_q_cef_context.html#aaba077228a77f5e7d7491eda3ce10267", null ],
10 | [ "removeCrossOriginWhitelistEntry", "class_q_cef_context.html#af04aefeea503031f5a8fbdabf05bc5e8", null ],
11 | [ "clearCrossOriginWhitelistEntry", "class_q_cef_context.html#a95d71c83fef34e8218a8ce559f173ab4", null ],
12 | [ "cefConfig", "class_q_cef_context.html#acfd6416ebc0a8df5cf8961dadeff960e", null ],
13 | [ "init", "class_q_cef_context.html#a78836c8d4d2bdf4970a256d8d29c80c6", null ],
14 | [ "uninit", "class_q_cef_context.html#aee74a7460786ddc17f8f9c0f68eaab6b", null ],
15 | [ "QCefView", "class_q_cef_context.html#a5a3b8eafc568f47fa0dc1f5232277a29", null ]
16 | ];
--------------------------------------------------------------------------------
/docs/class_q_cef_download_item.js:
--------------------------------------------------------------------------------
1 | var class_q_cef_download_item =
2 | [
3 | [ "~QCefDownloadItem", "class_q_cef_download_item.html#a913a2654dcd05ef8facefc515d831124", null ],
4 | [ "start", "class_q_cef_download_item.html#a315592aa53a2bf7bc8aea717195f5b43", null ],
5 | [ "pause", "class_q_cef_download_item.html#aaa31f59599e9311f0aee99a0a13e2568", null ],
6 | [ "resume", "class_q_cef_download_item.html#aa2afc687e69c7c78f6c49e9a41a34823", null ],
7 | [ "cancel", "class_q_cef_download_item.html#a723b2081749a447049efd04e768d9e57", null ],
8 | [ "isStarted", "class_q_cef_download_item.html#a6febee1fe8a5f7d15e888a4352d50526", null ],
9 | [ "isInProgress", "class_q_cef_download_item.html#a22455702c989d4dcc08fb1d13659739d", null ],
10 | [ "isComplete", "class_q_cef_download_item.html#a67c86edf9e9cb742050e2521b55c86df", null ],
11 | [ "isCanceled", "class_q_cef_download_item.html#ada41b0480a3e97d788086ea8c420a22c", null ],
12 | [ "currentSpeed", "class_q_cef_download_item.html#a5c9648906b02ce59aa6d82f03e468c1d", null ],
13 | [ "percentComplete", "class_q_cef_download_item.html#a18fafe4f375aa60e43ec7c5d855ab91e", null ],
14 | [ "totalBytes", "class_q_cef_download_item.html#ab1ff7414475451351e4d4ab50f723bee", null ],
15 | [ "receivedBytes", "class_q_cef_download_item.html#a5d76f04bb41c5e4edad6d680b01fe63f", null ],
16 | [ "startTime", "class_q_cef_download_item.html#afe0d048a282cb605da910de1c5d82242", null ],
17 | [ "endTime", "class_q_cef_download_item.html#a61b2bd3cdc2f35d2424ded4e8b3801fd", null ],
18 | [ "fullPath", "class_q_cef_download_item.html#a40227300f52cd34a67281eacf95bcc28", null ],
19 | [ "id", "class_q_cef_download_item.html#aff911ad0aa21867cdfe56457293f4914", null ],
20 | [ "url", "class_q_cef_download_item.html#a253cf33b582e3994b65d5611ef277bbe", null ],
21 | [ "originalUrl", "class_q_cef_download_item.html#a9f9bcb65952b50b4f24c4d55eff9b64e", null ],
22 | [ "suggestedFileName", "class_q_cef_download_item.html#ac0dd9f8bea7ca594f04935d81cfb72a4", null ],
23 | [ "contentDisposition", "class_q_cef_download_item.html#af97dad25e439c8b997d6689fe1c91bf8", null ],
24 | [ "mimeType", "class_q_cef_download_item.html#afb8ec36477b64a222b0610c8518f8e31", null ],
25 | [ "QCefView", "class_q_cef_download_item.html#a5a3b8eafc568f47fa0dc1f5232277a29", null ]
26 | ];
--------------------------------------------------------------------------------
/docs/class_q_cef_event.js:
--------------------------------------------------------------------------------
1 | var class_q_cef_event =
2 | [
3 | [ "QCefEvent", "class_q_cef_event.html#ab444dcc856db38dcc679db326ef22bf5", null ],
4 | [ "QCefEvent", "class_q_cef_event.html#a2b2b8bacbfebefe302cd1fab91cd5e8c", null ],
5 | [ "QCefEvent", "class_q_cef_event.html#a357d5cb242977682523e69d501c673d4", null ],
6 | [ "~QCefEvent", "class_q_cef_event.html#a5c0e38242fa1ba823f1664232966787c", null ],
7 | [ "operator=", "class_q_cef_event.html#a95e2f8c582270de0f9501945a6e063ee", null ],
8 | [ "setEventName", "class_q_cef_event.html#a5db1273fdda416900f5b7b26a119c85a", null ],
9 | [ "eventName", "class_q_cef_event.html#a5a970c76a348788b15a040c8c405a103", null ],
10 | [ "setArguments", "class_q_cef_event.html#ac84ba1292bcf56abdc5c6c4245aa6c04", null ],
11 | [ "arguments", "class_q_cef_event.html#a4cf70fa60235d723b9e578cded919327", null ],
12 | [ "QCefView", "class_q_cef_event.html#a5a3b8eafc568f47fa0dc1f5232277a29", null ]
13 | ];
--------------------------------------------------------------------------------
/docs/class_q_cef_query.js:
--------------------------------------------------------------------------------
1 | var class_q_cef_query =
2 | [
3 | [ "QCefQuery", "class_q_cef_query.html#a2d63bf6b4584e80edbfe4e00fdc8790e", null ],
4 | [ "QCefQuery", "class_q_cef_query.html#a22d9fddcadce7a6e0259c691634c4d7a", null ],
5 | [ "~QCefQuery", "class_q_cef_query.html#a402d117cbd2d37681394f86d31ed11a3", null ],
6 | [ "markAsReplied", "class_q_cef_query.html#af1e8c950b361ad9ca4d4e260626c5d14", null ],
7 | [ "request", "class_q_cef_query.html#a16d137bcc1bf2ef9bc8969ff1bd091e7", null ],
8 | [ "id", "class_q_cef_query.html#a5b701d7f9c92ff814cfe28b110142a4c", null ],
9 | [ "response", "class_q_cef_query.html#a663d5945146bebe69a0a3c5448bb9280", null ],
10 | [ "result", "class_q_cef_query.html#a8c2d78e19628d8066570338d659bc9b2", null ],
11 | [ "error", "class_q_cef_query.html#ab35201ac89d89f1445538f82a12f8fa8", null ],
12 | [ "setResponseResult", "class_q_cef_query.html#aa86db4e257e3dc4e29c7906d80e06f28", null ],
13 | [ "reply", "class_q_cef_query.html#a9b7df2f2ffaf42431392fcb0a89042be", null ],
14 | [ "QCefViewPrivate", "class_q_cef_query.html#a96f89510561545834ce356603ebee9be", null ]
15 | ];
--------------------------------------------------------------------------------
/docs/clipboard.js:
--------------------------------------------------------------------------------
1 | /**
2 |
3 | The code below is based on the Doxygen Awesome project, see
4 | https://github.com/jothepro/doxygen-awesome-css
5 |
6 | MIT License
7 |
8 | Copyright (c) 2021 - 2022 jothepro
9 |
10 | Permission is hereby granted, free of charge, to any person obtaining a copy
11 | of this software and associated documentation files (the "Software"), to deal
12 | in the Software without restriction, including without limitation the rights
13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14 | copies of the Software, and to permit persons to whom the Software is
15 | furnished to do so, subject to the following conditions:
16 |
17 | The above copyright notice and this permission notice shall be included in all
18 | copies or substantial portions of the Software.
19 |
20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26 | SOFTWARE.
27 |
28 | */
29 |
30 | let clipboard_title = "Copy to clipboard"
31 | let clipboard_icon = ``
32 | let clipboard_successIcon = ``
33 | let clipboard_successDuration = 1000
34 |
35 | $(function() {
36 | if(navigator.clipboard) {
37 | const fragments = document.getElementsByClassName("fragment")
38 | for(const fragment of fragments) {
39 | const clipboard_div = document.createElement("div")
40 | clipboard_div.classList.add("clipboard")
41 | clipboard_div.innerHTML = clipboard_icon
42 | clipboard_div.title = clipboard_title
43 | $(clipboard_div).click(function() {
44 | const content = this.parentNode.cloneNode(true)
45 | // filter out line number and folded fragments from file listings
46 | content.querySelectorAll(".lineno, .ttc, .foldclosed").forEach((node) => { node.remove() })
47 | let text = content.textContent
48 | // remove trailing newlines and trailing spaces from empty lines
49 | text = text.replace(/^\s*\n/gm,'\n').replace(/\n*$/,'')
50 | navigator.clipboard.writeText(text);
51 | this.classList.add("success")
52 | this.innerHTML = clipboard_successIcon
53 | window.setTimeout(() => { // switch back to normal icon after timeout
54 | this.classList.remove("success")
55 | this.innerHTML = clipboard_icon
56 | }, clipboard_successDuration);
57 | })
58 | fragment.insertBefore(clipboard_div, fragment.firstChild)
59 | }
60 | }
61 | })
62 |
--------------------------------------------------------------------------------
/docs/closed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/closed.png
--------------------------------------------------------------------------------
/docs/cookie.js:
--------------------------------------------------------------------------------
1 | /*!
2 | Cookie helper functions
3 | Copyright (c) 2023 Dimitri van Heesch
4 | Released under MIT license.
5 | */
6 | let Cookie = {
7 | cookie_namespace: 'doxygen_',
8 |
9 | readSetting(cookie,defVal) {
10 | if (window.chrome) {
11 | const val = localStorage.getItem(this.cookie_namespace+cookie) ||
12 | sessionStorage.getItem(this.cookie_namespace+cookie);
13 | if (val) return val;
14 | } else {
15 | let myCookie = this.cookie_namespace+cookie+"=";
16 | if (document.cookie) {
17 | const index = document.cookie.indexOf(myCookie);
18 | if (index != -1) {
19 | const valStart = index + myCookie.length;
20 | let valEnd = document.cookie.indexOf(";", valStart);
21 | if (valEnd == -1) {
22 | valEnd = document.cookie.length;
23 | }
24 | return document.cookie.substring(valStart, valEnd);
25 | }
26 | }
27 | }
28 | return defVal;
29 | },
30 |
31 | writeSetting(cookie,val,days=10*365) { // default days='forever', 0=session cookie, -1=delete
32 | if (window.chrome) {
33 | if (days==0) {
34 | sessionStorage.setItem(this.cookie_namespace+cookie,val);
35 | } else {
36 | localStorage.setItem(this.cookie_namespace+cookie,val);
37 | }
38 | } else {
39 | let date = new Date();
40 | date.setTime(date.getTime()+(days*24*60*60*1000));
41 | const expiration = days!=0 ? "expires="+date.toGMTString()+";" : "";
42 | document.cookie = this.cookie_namespace + cookie + "=" +
43 | val + "; SameSite=Lax;" + expiration + "path=/";
44 | }
45 | },
46 |
47 | eraseSetting(cookie) {
48 | if (window.chrome) {
49 | if (localStorage.getItem(this.cookie_namespace+cookie)) {
50 | localStorage.removeItem(this.cookie_namespace+cookie);
51 | } else if (sessionStorage.getItem(this.cookie_namespace+cookie)) {
52 | sessionStorage.removeItem(this.cookie_namespace+cookie);
53 | }
54 | } else {
55 | this.writeSetting(cookie,'',-1);
56 | }
57 | },
58 | }
59 |
--------------------------------------------------------------------------------
/docs/custom-alternative.css:
--------------------------------------------------------------------------------
1 | html.alternative {
2 | /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */
3 | --primary-color: #AF7FE4;
4 | --primary-dark-color: #9270E4;
5 | --primary-light-color: #7aabd6;
6 | --primary-lighter-color: #cae1f1;
7 | --primary-lightest-color: #e9f1f8;
8 |
9 | /* page base colors */
10 | --page-background-color: white;
11 | --page-foreground-color: #2c3e50;
12 | --page-secondary-foreground-color: #67727e;
13 |
14 |
15 | --border-radius-large: 22px;
16 | --border-radius-small: 9px;
17 | --border-radius-medium: 14px;
18 | --spacing-small: 8px;
19 | --spacing-medium: 14px;
20 | --spacing-large: 19px;
21 |
22 | --top-height: 125px;
23 |
24 | --side-nav-background: #324067;
25 | --side-nav-foreground: #F1FDFF;
26 | --header-foreground: var(--side-nav-foreground);
27 | --searchbar-background: var(--side-nav-foreground);
28 | --searchbar-border-radius: var(--border-radius-medium);
29 | --header-background: var(--side-nav-background);
30 | --header-foreground: var(--side-nav-foreground);
31 |
32 | --toc-background: rgb(243, 240, 252);
33 | --toc-foreground: var(--page-foreground-color);
34 | }
35 |
36 | html.alternative.dark-mode {
37 | color-scheme: dark;
38 |
39 | --primary-color: #AF7FE4;
40 | --primary-dark-color: #9270E4;
41 | --primary-light-color: #4779ac;
42 | --primary-lighter-color: #191e21;
43 | --primary-lightest-color: #191a1c;
44 |
45 | --page-background-color: #1C1D1F;
46 | --page-foreground-color: #d2dbde;
47 | --page-secondary-foreground-color: #859399;
48 | --separator-color: #3a3246;
49 | --side-nav-background: #171D32;
50 | --side-nav-foreground: #F1FDFF;
51 | --toc-background: #20142C;
52 | --searchbar-background: var(--page-background-color);
53 |
54 | }
--------------------------------------------------------------------------------
/docs/custom.css:
--------------------------------------------------------------------------------
1 | .github-corner svg {
2 | fill: var(--primary-light-color);
3 | color: var(--page-background-color);
4 | width: 72px;
5 | height: 72px;
6 | }
7 |
8 | @media screen and (max-width: 767px) {
9 | .github-corner svg {
10 | width: 50px;
11 | height: 50px;
12 | }
13 | #projectnumber {
14 | margin-right: 22px;
15 | }
16 | }
17 |
18 | .alter-theme-button {
19 | display: inline-block;
20 | cursor: pointer;
21 | background: var(--primary-color);
22 | color: var(--page-background-color) !important;
23 | border-radius: var(--border-radius-medium);
24 | padding: var(--spacing-small) var(--spacing-medium);
25 | text-decoration: none;
26 | }
27 |
28 | .alter-theme-button:hover {
29 | background: var(--primary-dark-color);
30 | }
31 |
32 | html.dark-mode .darkmode_inverted_image img, /* < doxygen 1.9.3 */
33 | html.dark-mode .darkmode_inverted_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ {
34 | filter: brightness(89%) hue-rotate(180deg) invert();
35 | }
36 |
37 | .bordered_image {
38 | border-radius: var(--border-radius-small);
39 | border: 1px solid var(--separator-color);
40 | display: inline-block;
41 | overflow: hidden;
42 | }
43 |
44 | html.dark-mode .bordered_image img, /* < doxygen 1.9.3 */
45 | html.dark-mode .bordered_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ {
46 | border-radius: var(--border-radius-small);
47 | }
48 |
49 | .title_screenshot {
50 | filter: drop-shadow(0px 3px 10px rgba(0,0,0,0.22));
51 | max-width: 500px;
52 | margin: var(--spacing-large) 0;
53 | }
54 |
55 | .title_screenshot .caption {
56 | display: none;
57 | }
58 |
--------------------------------------------------------------------------------
/docs/dir_d44c64559bbebec7f509842c48db8b23.js:
--------------------------------------------------------------------------------
1 | var dir_d44c64559bbebec7f509842c48db8b23 =
2 | [
3 | [ "CefVersion.h", "_cef_version_8h.html", "_cef_version_8h" ],
4 | [ "QCefConfig.h", "_q_cef_config_8h.html", "_q_cef_config_8h" ],
5 | [ "QCefContext.h", "_q_cef_context_8h.html", "_q_cef_context_8h" ],
6 | [ "QCefDownloadItem.h", "_q_cef_download_item_8h.html", "_q_cef_download_item_8h" ],
7 | [ "QCefEvent.h", "_q_cef_event_8h.html", "_q_cef_event_8h" ],
8 | [ "QCefQuery.h", "_q_cef_query_8h.html", "_q_cef_query_8h" ],
9 | [ "QCefSetting.h", "_q_cef_setting_8h.html", "_q_cef_setting_8h" ],
10 | [ "QCefView.h", "_q_cef_view_8h.html", "_q_cef_view_8h" ],
11 | [ "QCefView_global.h", "_q_cef_view__global_8h.html", "_q_cef_view__global_8h" ]
12 | ];
--------------------------------------------------------------------------------
/docs/doc.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
13 |
--------------------------------------------------------------------------------
/docs/docd.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
13 |
--------------------------------------------------------------------------------
/docs/doxygen-awesome-paragraph-link.js:
--------------------------------------------------------------------------------
1 | /**
2 |
3 | Doxygen Awesome
4 | https://github.com/jothepro/doxygen-awesome-css
5 |
6 | MIT License
7 |
8 | Copyright (c) 2022 - 2023 jothepro
9 |
10 | Permission is hereby granted, free of charge, to any person obtaining a copy
11 | of this software and associated documentation files (the "Software"), to deal
12 | in the Software without restriction, including without limitation the rights
13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14 | copies of the Software, and to permit persons to whom the Software is
15 | furnished to do so, subject to the following conditions:
16 |
17 | The above copyright notice and this permission notice shall be included in all
18 | copies or substantial portions of the Software.
19 |
20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26 | SOFTWARE.
27 |
28 | */
29 |
30 | class DoxygenAwesomeParagraphLink {
31 | // Icon from https://fonts.google.com/icons
32 | // Licensed under the Apache 2.0 license:
33 | // https://www.apache.org/licenses/LICENSE-2.0.html
34 | static icon = ``
35 | static title = "Permanent Link"
36 | static init() {
37 | $(function() {
38 | $(document).ready(function() {
39 | document.querySelectorAll(".contents a.anchor[id], .contents .groupheader > a[id]").forEach((node) => {
40 | let anchorlink = document.createElement("a")
41 | anchorlink.setAttribute("href", `#${node.getAttribute("id")}`)
42 | anchorlink.setAttribute("title", DoxygenAwesomeParagraphLink.title)
43 | anchorlink.classList.add("anchorlink")
44 | node.classList.add("anchor")
45 | anchorlink.innerHTML = DoxygenAwesomeParagraphLink.icon
46 | node.parentElement.appendChild(anchorlink)
47 | })
48 | })
49 | })
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/docs/doxygen-awesome-sidebar-only-darkmode-toggle.css:
--------------------------------------------------------------------------------
1 |
2 | /**
3 |
4 | Doxygen Awesome
5 | https://github.com/jothepro/doxygen-awesome-css
6 |
7 | MIT License
8 |
9 | Copyright (c) 2021 - 2023 jothepro
10 |
11 | Permission is hereby granted, free of charge, to any person obtaining a copy
12 | of this software and associated documentation files (the "Software"), to deal
13 | in the Software without restriction, including without limitation the rights
14 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15 | copies of the Software, and to permit persons to whom the Software is
16 | furnished to do so, subject to the following conditions:
17 |
18 | The above copyright notice and this permission notice shall be included in all
19 | copies or substantial portions of the Software.
20 |
21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27 | SOFTWARE.
28 |
29 | */
30 |
31 | @media screen and (min-width: 768px) {
32 |
33 | #MSearchBox {
34 | width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - var(--searchbar-height) - 1px);
35 | }
36 |
37 | #MSearchField {
38 | width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 66px - var(--searchbar-height));
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/docs/files_dup.js:
--------------------------------------------------------------------------------
1 | var files_dup =
2 | [
3 | [ "docs", "dir_f717602cc3ca9f25f43675f90fbe7db2.html", null ],
4 | [ "include", "dir_d44c64559bbebec7f509842c48db8b23.html", "dir_d44c64559bbebec7f509842c48db8b23" ]
5 | ];
--------------------------------------------------------------------------------
/docs/first-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/first-project.png
--------------------------------------------------------------------------------
/docs/folderclosed.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
12 |
--------------------------------------------------------------------------------
/docs/folderclosedd.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
12 |
--------------------------------------------------------------------------------
/docs/folderopend.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
13 |
--------------------------------------------------------------------------------
/docs/functions_dup.js:
--------------------------------------------------------------------------------
1 | var functions_dup =
2 | [
3 | [ "a", "functions.html", null ],
4 | [ "b", "functions_b.html", null ],
5 | [ "c", "functions_c.html", null ],
6 | [ "d", "functions_d.html", null ],
7 | [ "e", "functions_e.html", null ],
8 | [ "f", "functions_f.html", null ],
9 | [ "h", "functions_h.html", null ],
10 | [ "i", "functions_i.html", null ],
11 | [ "j", "functions_j.html", null ],
12 | [ "l", "functions_l.html", null ],
13 | [ "m", "functions_m.html", null ],
14 | [ "n", "functions_n.html", null ],
15 | [ "o", "functions_o.html", null ],
16 | [ "p", "functions_p.html", null ],
17 | [ "q", "functions_q.html", null ],
18 | [ "r", "functions_r.html", null ],
19 | [ "s", "functions_s.html", null ],
20 | [ "t", "functions_t.html", null ],
21 | [ "u", "functions_u.html", null ],
22 | [ "w", "functions_w.html", null ],
23 | [ "~", "functions_~.html", null ]
24 | ];
--------------------------------------------------------------------------------
/docs/functions_func.js:
--------------------------------------------------------------------------------
1 | var functions_func =
2 | [
3 | [ "a", "functions_func.html", null ],
4 | [ "b", "functions_func_b.html", null ],
5 | [ "c", "functions_func_c.html", null ],
6 | [ "d", "functions_func_d.html", null ],
7 | [ "e", "functions_func_e.html", null ],
8 | [ "f", "functions_func_f.html", null ],
9 | [ "h", "functions_func_h.html", null ],
10 | [ "i", "functions_func_i.html", null ],
11 | [ "j", "functions_func_j.html", null ],
12 | [ "l", "functions_func_l.html", null ],
13 | [ "m", "functions_func_m.html", null ],
14 | [ "n", "functions_func_n.html", null ],
15 | [ "o", "functions_func_o.html", null ],
16 | [ "p", "functions_func_p.html", null ],
17 | [ "q", "functions_func_q.html", null ],
18 | [ "r", "functions_func_r.html", null ],
19 | [ "s", "functions_func_s.html", null ],
20 | [ "t", "functions_func_t.html", null ],
21 | [ "u", "functions_func_u.html", null ],
22 | [ "w", "functions_func_w.html", null ],
23 | [ "~", "functions_func_~.html", null ]
24 | ];
--------------------------------------------------------------------------------
/docs/hierarchy.js:
--------------------------------------------------------------------------------
1 | var hierarchy =
2 | [
3 | [ "QCefConfig", "class_q_cef_config.html", null ],
4 | [ "QCefDownloadItem", "class_q_cef_download_item.html", null ],
5 | [ "QCefEvent", "class_q_cef_event.html", null ],
6 | [ "QCefQuery", "class_q_cef_query.html", null ],
7 | [ "QCefSetting", "class_q_cef_setting.html", null ],
8 | [ "QObject", null, [
9 | [ "QCefContext", "class_q_cef_context.html", null ]
10 | ] ],
11 | [ "QWidget", null, [
12 | [ "QCefView", "class_q_cef_view.html", null ]
13 | ] ]
14 | ];
--------------------------------------------------------------------------------
/docs/index.js:
--------------------------------------------------------------------------------
1 | var index =
2 | [
3 | [ "What is QCefView?", "index.html#autotoc_md1", null ],
4 | [ "Why Choose QCefView over Electron?", "index.html#autotoc_md2", null ],
5 | [ "Ideal Use Cases for QCefView", "index.html#autotoc_md3", null ],
6 | [ "Alternatives to Qt", "index.html#autotoc_md4", [
7 | [ "Unreal Game Development", "index.html#autotoc_md5", null ],
8 | [ "macOS App Development", "index.html#autotoc_md6", null ]
9 | ] ]
10 | ];
--------------------------------------------------------------------------------
/docs/invoke-method-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/invoke-method-01.png
--------------------------------------------------------------------------------
/docs/invoke-method-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/invoke-method-02.png
--------------------------------------------------------------------------------
/docs/linux-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/linux-demo.png
--------------------------------------------------------------------------------
/docs/macOS-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/macOS-demo.png
--------------------------------------------------------------------------------
/docs/minus.svg:
--------------------------------------------------------------------------------
1 |
2 |
9 |
--------------------------------------------------------------------------------
/docs/minusd.svg:
--------------------------------------------------------------------------------
1 |
2 |
9 |
--------------------------------------------------------------------------------
/docs/nav_f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/nav_f.png
--------------------------------------------------------------------------------
/docs/nav_fd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/nav_fd.png
--------------------------------------------------------------------------------
/docs/nav_g.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/nav_g.png
--------------------------------------------------------------------------------
/docs/nav_h.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/nav_h.png
--------------------------------------------------------------------------------
/docs/nav_hd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/nav_hd.png
--------------------------------------------------------------------------------
/docs/navtree.css:
--------------------------------------------------------------------------------
1 | #nav-tree .children_ul {
2 | margin:0;
3 | padding:4px;
4 | }
5 |
6 | #nav-tree ul {
7 | list-style:none outside none;
8 | margin:0px;
9 | padding:0px;
10 | }
11 |
12 | #nav-tree li {
13 | white-space:nowrap;
14 | margin:0px;
15 | padding:0px;
16 | }
17 |
18 | #nav-tree .plus {
19 | margin:0px;
20 | }
21 |
22 | #nav-tree .selected {
23 | background-image: url('tab_a.png');
24 | background-repeat:repeat-x;
25 | color: var(--nav-text-active-color);
26 | text-shadow: var(--nav-text-active-shadow);
27 | }
28 |
29 | #nav-tree .selected .arrow {
30 | color: var(--nav-arrow-selected-color);
31 | text-shadow: none;
32 | }
33 |
34 | #nav-tree img {
35 | margin:0px;
36 | padding:0px;
37 | border:0px;
38 | vertical-align: middle;
39 | }
40 |
41 | #nav-tree a {
42 | text-decoration:none;
43 | padding:0px;
44 | margin:0px;
45 | }
46 |
47 | #nav-tree .label {
48 | margin:0px;
49 | padding:0px;
50 | font: 12px var(--font-family-nav);
51 | }
52 |
53 | #nav-tree .label a {
54 | padding:2px;
55 | }
56 |
57 | #nav-tree .selected a {
58 | text-decoration:none;
59 | color:var(--nav-text-active-color);
60 | }
61 |
62 | #nav-tree .children_ul {
63 | margin:0px;
64 | padding:0px;
65 | }
66 |
67 | #nav-tree .item {
68 | margin:0px;
69 | padding:0px;
70 | }
71 |
72 | #nav-tree {
73 | padding: 0px 0px;
74 | font-size:14px;
75 | overflow:auto;
76 | }
77 |
78 | #doc-content {
79 | overflow:auto;
80 | display:block;
81 | padding:0px;
82 | margin:0px;
83 | -webkit-overflow-scrolling : touch; /* iOS 5+ */
84 | }
85 |
86 | #side-nav {
87 | padding:0 6px 0 0;
88 | margin: 0px;
89 | display:block;
90 | position: absolute;
91 | left: 0px;
92 | width: $width;
93 | overflow : hidden;
94 | }
95 |
96 | .ui-resizable .ui-resizable-handle {
97 | display:block;
98 | }
99 |
100 | .ui-resizable-e {
101 | background-image:var(--nav-splitbar-image);
102 | background-size:100%;
103 | background-repeat:repeat-y;
104 | background-attachment: scroll;
105 | cursor:ew-resize;
106 | height:100%;
107 | right:0;
108 | top:0;
109 | width:6px;
110 | }
111 |
112 | .ui-resizable-handle {
113 | display:none;
114 | font-size:0.1px;
115 | position:absolute;
116 | z-index:1;
117 | }
118 |
119 | #nav-tree-contents {
120 | margin: 6px 0px 0px 0px;
121 | }
122 |
123 | #nav-tree {
124 | background-repeat:repeat-x;
125 | background-color: var(--nav-background-color);
126 | -webkit-overflow-scrolling : touch; /* iOS 5+ */
127 | }
128 |
129 | #nav-sync {
130 | position:absolute;
131 | top:5px;
132 | right:24px;
133 | z-index:0;
134 | }
135 |
136 | #nav-sync img {
137 | opacity:0.3;
138 | }
139 |
140 | #nav-sync img:hover {
141 | opacity:0.9;
142 | }
143 |
144 | @media print
145 | {
146 | #nav-tree { display: none; }
147 | div.ui-resizable-handle { display: none; position: relative; }
148 | }
149 |
150 |
--------------------------------------------------------------------------------
/docs/open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/open.png
--------------------------------------------------------------------------------
/docs/plus.svg:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/docs/plusd.svg:
--------------------------------------------------------------------------------
1 |
2 |
10 |
--------------------------------------------------------------------------------
/docs/search/all_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['00_2dintroduction_2emd_0',['00-Introduction.md',['../00-_introduction_8md.html',1,'']]],
4 | ['01_2dbuildandconfig_2emd_1',['01-BuildAndConfig.md',['../01-_build_and_config_8md.html',1,'']]],
5 | ['02_2dfirstproject_2emd_2',['02-FirstProject.md',['../02-_first_project_8md.html',1,'']]],
6 | ['03_2dresourceloading_2emd_3',['03-ResourceLoading.md',['../03-_resource_loading_8md.html',1,'']]],
7 | ['04_2dinteroperability_2emd_4',['04-Interoperability.md',['../04-_interoperability_8md.html',1,'']]],
8 | ['05_2drendering_2emd_5',['05-Rendering.md',['../05-_rendering_8md.html',1,'']]],
9 | ['06_2dwebapis_2emd_6',['06-WebAPIs.md',['../06-_web_a_p_is_8md.html',1,'']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/all_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['1_20cmake_0',['1. CMake',['../md_docs_201-_build_and_config.html#autotoc_md10',1,'']]],
4 | ['1_20load_20online_20web_20resource_1',['1. Load Online Web Resource',['../md_docs_203-_resource_loading.html#autotoc_md30',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/all_10.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['macos_20app_20development_0',['macOS App Development',['../index.html#autotoc_md6',1,'']]],
4 | ['mainframeid_1',['MainFrameID',['../class_q_cef_view.html#aecdaec6088be4f77a505e0fae0765625',1,'QCefView']]],
5 | ['mapping_2',['Mapping',['../md_docs_203-_resource_loading.html#autotoc_md32',1,'3. Add Local Folder Mapping'],['../md_docs_203-_resource_loading.html#autotoc_md33',1,'4. Add Local Archive Mapping']]],
6 | ['markasreplied_3',['markAsReplied',['../class_q_cef_query.html#af1e8c950b361ad9ca4d4e260626c5d14',1,'QCefQuery']]],
7 | ['mimetype_4',['mimeType',['../class_q_cef_download_item.html#afb8ec36477b64a222b0610c8518f8e31',1,'QCefDownloadItem']]],
8 | ['minimumfontsize_5',['minimumFontSize',['../class_q_cef_setting.html#a3b263c84f28ef76fc1dc4cd4dfad8e5d',1,'QCefSetting']]],
9 | ['minimumlogicalfontsize_6',['minimumLogicalFontSize',['../class_q_cef_setting.html#a3f0801d8ecbc7fe86df805dc6db3aad9',1,'QCefSetting']]],
10 | ['mode_7',['mode',['../md_docs_205-_rendering.html#autotoc_md50',1,'NCW mode'],['../md_docs_205-_rendering.html#autotoc_md51',1,'OSR mode']]],
11 | ['mode_20in_20qcefview_8',['Setting OSR Mode in QCefView',['../md_docs_205-_rendering.html#autotoc_md52',1,'']]]
12 | ];
13 |
--------------------------------------------------------------------------------
/docs/search/all_11.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['name_20args_0',['invoke(name, ...args)',['../md_docs_206-_web_a_p_is.html#CefViewClient_invoke',1,'']]],
4 | ['name_20listener_1',['name listener',['../md_docs_206-_web_a_p_is.html#CefViewClient_addEventListener',1,'addEventListener(name, listener)'],['../md_docs_206-_web_a_p_is.html#CefViewClient_removeEventListener',1,'removeEventListener(name, listener)']]],
5 | ['nativebrowsercreated_2',['nativeBrowserCreated',['../class_q_cef_view.html#a543b0eca797c5161d6325665d5ddd576',1,'QCefView']]],
6 | ['navigatetostring_3',['navigateToString',['../class_q_cef_view.html#ac3b8ec3b088422a67f93fc580047a1a0',1,'QCefView']]],
7 | ['navigatetourl_4',['navigateToUrl',['../class_q_cef_view.html#a4bf036d5a7d128d4c1487afaa0393d5b',1,'QCefView']]],
8 | ['ncw_20mode_5',['NCW mode',['../md_docs_205-_rendering.html#autotoc_md50',1,'']]],
9 | ['notes_6',['Additional Notes',['../md_docs_201-_build_and_config.html#autotoc_md13',1,'']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/all_12.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['online_20web_20resource_0',['1. Load Online Web Resource',['../md_docs_203-_resource_loading.html#autotoc_md30',1,'']]],
4 | ['onnewbrowser_1',['onNewBrowser',['../class_q_cef_view.html#a49c99555c9c604dc2e310c3df02bf385',1,'QCefView']]],
5 | ['onnewdownloaditem_2',['onNewDownloadItem',['../class_q_cef_view.html#a666e93d6e9f9be7444f9b898f77c8292',1,'QCefView']]],
6 | ['onnewpopup_3',['onNewPopup',['../class_q_cef_view.html#aadb6d47674e2ad414eb20a066b7e0738',1,'QCefView']]],
7 | ['onrequestclosefromweb_4',['onRequestCloseFromWeb',['../class_q_cef_view.html#ad23057b6187876c84f883b1e7120456d',1,'QCefView']]],
8 | ['onupdatedownloaditem_5',['onUpdateDownloadItem',['../class_q_cef_view.html#a9833a1db8ef5864489f9462ef397cbb8',1,'QCefView']]],
9 | ['operator_3d_6',['operator=',['../class_q_cef_config.html#a2f78eccb1b7463db2c0b174aff5d0553',1,'QCefConfig::operator=()'],['../class_q_cef_event.html#a95e2f8c582270de0f9501945a6e063ee',1,'QCefEvent::operator=()'],['../class_q_cef_setting.html#a486f0c9edda93fb30c75608ac9b98ba2',1,'QCefSetting::operator=()']]],
10 | ['originalurl_7',['originalUrl',['../class_q_cef_download_item.html#a9f9bcb65952b50b4f24c4d55eff9b64e',1,'QCefDownloadItem']]],
11 | ['osr_20mode_8',['OSR mode',['../md_docs_205-_rendering.html#autotoc_md51',1,'']]],
12 | ['osr_20mode_20in_20qcefview_9',['Setting OSR Mode in QCefView',['../md_docs_205-_rendering.html#autotoc_md52',1,'']]],
13 | ['over_20electron_10',['Why Choose QCefView over Electron?',['../index.html#autotoc_md2',1,'']]]
14 | ];
15 |
--------------------------------------------------------------------------------
/docs/search/all_13.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['page_0',['Create a Simple Web Page',['../md_docs_202-_first_project.html#autotoc_md27',1,'']]],
4 | ['paintengine_1',['paintEngine',['../class_q_cef_view.html#ad88e5a99ad808b7a911b58ba9ed9b838',1,'QCefView']]],
5 | ['parameters_2',['Parameters',['../md_docs_206-_web_a_p_is.html#autotoc_md55',1,'Parameters'],['../md_docs_206-_web_a_p_is.html#autotoc_md56',1,'Parameters'],['../md_docs_206-_web_a_p_is.html#autotoc_md57',1,'Parameters'],['../md_docs_206-_web_a_p_is.html#autotoc_md58',1,'Parameters'],['../md_docs_206-_web_a_p_is.html#autotoc_md60',1,'Parameters']]],
6 | ['path_3',['2. Load Local File With File Path',['../md_docs_203-_resource_loading.html#autotoc_md31',1,'']]],
7 | ['pause_4',['pause',['../class_q_cef_download_item.html#aaa31f59599e9311f0aee99a0a13e2568',1,'QCefDownloadItem']]],
8 | ['percentcomplete_5',['percentComplete',['../class_q_cef_download_item.html#a18fafe4f375aa60e43ec7c5d855ab91e',1,'QCefDownloadItem']]],
9 | ['persistsessioncookies_6',['persistSessionCookies',['../class_q_cef_config.html#aa8b22bc6b4d9ef5c8aeccfc363ee1f9c',1,'QCefConfig']]],
10 | ['persistuserpreferences_7',['persistUserPreferences',['../class_q_cef_config.html#a4749b6aa16660a15d753f5248985e25f',1,'QCefConfig']]],
11 | ['plugins_8',['plugins',['../class_q_cef_setting.html#a99c3a6c649171d42402af815f6628f03',1,'QCefSetting']]],
12 | ['prerequisites_9',['Prerequisites',['../md_docs_201-_build_and_config.html#autotoc_md9',1,'']]],
13 | ['project_10',['First Project',['../md_docs_202-_first_project.html',1,'']]]
14 | ];
15 |
--------------------------------------------------------------------------------
/docs/search/all_15.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['receivedbytes_0',['receivedBytes',['../class_q_cef_download_item.html#a5d76f04bb41c5e4edad6d680b01fe63f',1,'QCefDownloadItem']]],
4 | ['remotedebuggingport_1',['remoteDebuggingPort',['../class_q_cef_config.html#aeaa7b37b83ee32a5ec50a1dec11d0c2e',1,'QCefConfig']]],
5 | ['remotefonts_2',['remoteFonts',['../class_q_cef_setting.html#a6b503e82defe4c57a88936fb2cec2509',1,'QCefSetting']]],
6 | ['removecrossoriginwhitelistentry_3',['removeCrossOriginWhitelistEntry',['../class_q_cef_context.html#af04aefeea503031f5a8fbdabf05bc5e8',1,'QCefContext']]],
7 | ['removeeventlistener_20name_20listener_4',['removeEventListener(name, listener)',['../md_docs_206-_web_a_p_is.html#CefViewClient_removeEventListener',1,'']]],
8 | ['rendering_5',['Rendering',['../md_docs_205-_rendering.html',1,'']]],
9 | ['reply_6',['reply',['../class_q_cef_query.html#a9b7df2f2ffaf42431392fcb0a89042be',1,'QCefQuery']]],
10 | ['reportjavascriptresult_7',['reportJavascriptResult',['../class_q_cef_view.html#a9b69938aa6f8352799bee6084bab03e4',1,'QCefView']]],
11 | ['request_8',['request',['../class_q_cef_query.html#a16d137bcc1bf2ef9bc8969ff1bd091e7',1,'QCefQuery']]],
12 | ['resource_9',['1. Load Online Web Resource',['../md_docs_203-_resource_loading.html#autotoc_md30',1,'']]],
13 | ['resource_20loading_10',['Resource Loading',['../md_docs_203-_resource_loading.html',1,'']]],
14 | ['response_11',['response',['../class_q_cef_query.html#a663d5945146bebe69a0a3c5448bb9280',1,'QCefQuery']]],
15 | ['responseqcefquery_12',['responseQCefQuery',['../class_q_cef_view.html#afc838dab54d2b083b05f0d98349b50cc',1,'QCefView']]],
16 | ['result_13',['result',['../class_q_cef_query.html#a8c2d78e19628d8066570338d659bc9b2',1,'QCefQuery']]],
17 | ['resume_14',['resume',['../class_q_cef_download_item.html#aa2afc687e69c7c78f6c49e9a41a34823',1,'QCefDownloadItem']]],
18 | ['returns_15',['Returns',['../md_docs_206-_web_a_p_is.html#autotoc_md59',1,'']]],
19 | ['rootcachepath_16',['rootCachePath',['../class_q_cef_config.html#a5bc459471e82e88326c17220a0e05310',1,'QCefConfig']]],
20 | ['run_20the_20application_17',['Run the Application',['../md_docs_202-_first_project.html#autotoc_md28',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md40',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md44',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md48',1,'Run the Application']]]
21 | ];
22 |
--------------------------------------------------------------------------------
/docs/search/all_17.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['tabtolinks_0',['tabToLinks',['../class_q_cef_setting.html#a9b81d1bcf47146dfc5eeeabeb583e627',1,'QCefSetting']]],
4 | ['textarearesize_1',['textAreaResize',['../class_q_cef_setting.html#a8d88588797f311f71c55073f95dafafe',1,'QCefSetting']]],
5 | ['the_20application_2',['the Application',['../md_docs_202-_first_project.html#autotoc_md28',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md40',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md44',1,'Run the Application'],['../md_docs_204-_interoperability.html#autotoc_md48',1,'Run the Application']]],
6 | ['the_20qcefcontext_20instance_3',['Initializing the QCefContext Instance',['../md_docs_202-_first_project.html#autotoc_md25',1,'']]],
7 | ['titlechanged_4',['titleChanged',['../class_q_cef_view.html#a48c82c208cab769a1baa7177bc58b030',1,'QCefView']]],
8 | ['to_20qt_5',['Alternatives to Qt',['../index.html#autotoc_md4',1,'']]],
9 | ['totalbytes_6',['totalBytes',['../class_q_cef_download_item.html#ab1ff7414475451351e4d4ab50f723bee',1,'QCefDownloadItem']]],
10 | ['triggerevent_7',['triggerEvent',['../class_q_cef_view.html#ac47c23ffcd94bdffe2b6a81eaae077a2',1,'QCefView::triggerEvent(const QCefEvent &event)'],['../class_q_cef_view.html#ab70a707afda924d6f035b20a1aecc695',1,'QCefView::triggerEvent(const QCefEvent &event, const QString &frameId)']]]
11 | ];
12 |
--------------------------------------------------------------------------------
/docs/search/all_18.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['uninit_0',['uninit',['../class_q_cef_context.html#aee74a7460786ddc17f8f9c0f68eaab6b',1,'QCefContext']]],
4 | ['unreal_20game_20development_1',['Unreal Game Development',['../index.html#autotoc_md5',1,'']]],
5 | ['url_2',['url',['../class_q_cef_download_item.html#a253cf33b582e3994b65d5611ef277bbe',1,'QCefDownloadItem']]],
6 | ['use_20cases_3',['Use Cases',['../md_docs_203-_resource_loading.html#autotoc_md34',1,'']]],
7 | ['use_20cases_20for_20qcefview_4',['Ideal Use Cases for QCefView',['../index.html#autotoc_md3',1,'']]],
8 | ['use_5fqt_5fevent_5floop_5',['USE_QT_EVENT_LOOP',['../md_docs_201-_build_and_config.html#autotoc_md23',1,'']]],
9 | ['use_5fsandbox_6',['USE_SANDBOX',['../md_docs_201-_build_and_config.html#autotoc_md21',1,'']]],
10 | ['use_5fwin_5fdcomposition_7',['USE_WIN_DCOMPOSITION',['../md_docs_201-_build_and_config.html#autotoc_md22',1,'']]],
11 | ['useragent_8',['userAgent',['../class_q_cef_config.html#ad95b55d57719d9fc1a3dc5abb5695016',1,'QCefConfig']]],
12 | ['userdatapath_9',['userDataPath',['../class_q_cef_config.html#a317ff9d74e89dac404e20005c33b08e9',1,'QCefConfig']]]
13 | ];
14 |
--------------------------------------------------------------------------------
/docs/search/all_19.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['web_20apis_0',['Web APIs',['../md_docs_206-_web_a_p_is.html',1,'']]],
4 | ['web_20page_1',['Create a Simple Web Page',['../md_docs_202-_first_project.html#autotoc_md27',1,'']]],
5 | ['web_20resource_2',['1. Load Online Web Resource',['../md_docs_203-_resource_loading.html#autotoc_md30',1,'']]],
6 | ['webgl_3',['webGL',['../class_q_cef_setting.html#aca84c981db4fcc2cf6aa3ece7c44973c',1,'QCefSetting']]],
7 | ['what_20is_20qcefview_4',['What is QCefView?',['../index.html#autotoc_md1',1,'']]],
8 | ['why_20choose_20qcefview_20over_20electron_5',['Why Choose QCefView over Electron?',['../index.html#autotoc_md2',1,'']]],
9 | ['window_20cefviewclient_6',['window.CefViewClient',['../md_docs_206-_web_a_p_is.html#CefViewClient',1,'']]],
10 | ['window_20cefviewquery_7',['window.cefViewQuery',['../md_docs_206-_web_a_p_is.html#cefViewQuery',1,'']]],
11 | ['window_20cefviewquerycancel_8',['window.cefViewQueryCancel',['../md_docs_206-_web_a_p_is.html#cefViewQueryCancel',1,'']]],
12 | ['windowinitialsize_9',['windowInitialSize',['../class_q_cef_setting.html#ad3aabefb7879e392952a94464c983978',1,'QCefSetting']]],
13 | ['windowlessframerate_10',['windowlessFrameRate',['../class_q_cef_setting.html#adfc424688213e0e695b6b84681581135',1,'QCefSetting']]],
14 | ['windowlessrenderingenabled_11',['windowlessRenderingEnabled',['../class_q_cef_config.html#a17b6765b357b7a2d69a1f02b27a4eb92',1,'QCefConfig']]],
15 | ['with_20file_20path_12',['2. Load Local File With File Path',['../md_docs_203-_resource_loading.html#autotoc_md31',1,'']]]
16 | ];
17 |
--------------------------------------------------------------------------------
/docs/search/all_1a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eqcefconfig_0',['~QCefConfig',['../class_q_cef_config.html#a67d06ef56affa82e943c7a5c73afee9a',1,'QCefConfig']]],
4 | ['_7eqcefcontext_1',['~QCefContext',['../class_q_cef_context.html#a91de7d9c36aafdaca390a355d6da5c6d',1,'QCefContext']]],
5 | ['_7eqcefdownloaditem_2',['~QCefDownloadItem',['../class_q_cef_download_item.html#a913a2654dcd05ef8facefc515d831124',1,'QCefDownloadItem']]],
6 | ['_7eqcefevent_3',['~QCefEvent',['../class_q_cef_event.html#a5c0e38242fa1ba823f1664232966787c',1,'QCefEvent']]],
7 | ['_7eqcefquery_4',['~QCefQuery',['../class_q_cef_query.html#a402d117cbd2d37681394f86d31ed11a3',1,'QCefQuery']]],
8 | ['_7eqcefsetting_5',['~QCefSetting',['../class_q_cef_setting.html#a589b16fe883213d0e330503c0ccab218',1,'QCefSetting']]],
9 | ['_7eqcefview_6',['~QCefView',['../class_q_cef_view.html#a70903dca8ccd3e2776d68742531177fd',1,'QCefView']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/all_1b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eqcefconfig_0',['~QCefConfig',['../class_q_cef_config.html#a67d06ef56affa82e943c7a5c73afee9a',1,'QCefConfig']]],
4 | ['_7eqcefcontext_1',['~QCefContext',['../class_q_cef_context.html#a91de7d9c36aafdaca390a355d6da5c6d',1,'QCefContext']]],
5 | ['_7eqcefdownloaditem_2',['~QCefDownloadItem',['../class_q_cef_download_item.html#a913a2654dcd05ef8facefc515d831124',1,'QCefDownloadItem']]],
6 | ['_7eqcefevent_3',['~QCefEvent',['../class_q_cef_event.html#a5c0e38242fa1ba823f1664232966787c',1,'QCefEvent']]],
7 | ['_7eqcefquery_4',['~QCefQuery',['../class_q_cef_query.html#a402d117cbd2d37681394f86d31ed11a3',1,'QCefQuery']]],
8 | ['_7eqcefsetting_5',['~QCefSetting',['../class_q_cef_setting.html#a589b16fe883213d0e330503c0ccab218',1,'QCefSetting']]],
9 | ['_7eqcefview_6',['~QCefView',['../class_q_cef_view.html#a70903dca8ccd3e2776d68742531177fd',1,'QCefView']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/all_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['2_20load_20local_20file_20with_20file_20path_0',['2. Load Local File With File Path',['../md_docs_203-_resource_loading.html#autotoc_md31',1,'']]],
4 | ['2_20qt_20framework_1',['2. Qt Framework',['../md_docs_201-_build_and_config.html#autotoc_md11',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/all_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['3_20add_20local_20folder_20mapping_0',['3. Add Local Folder Mapping',['../md_docs_203-_resource_loading.html#autotoc_md32',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/all_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['4_20add_20local_20archive_20mapping_0',['4. Add Local Archive Mapping',['../md_docs_203-_resource_loading.html#autotoc_md33',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/all_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['backgroundcolor_0',['backgroundColor',['../class_q_cef_config.html#aa04db9637f47424834bbcdf05a8b640b',1,'QCefConfig::backgroundColor()'],['../class_q_cef_setting.html#a9db276640c98e1d5d38290e06ae17d1a',1,'QCefSetting::backgroundColor()']]],
4 | ['bridgeobjectname_1',['bridgeObjectName',['../class_q_cef_config.html#aab1ee01c7697e38b94b8edf961da4b35',1,'QCefConfig']]],
5 | ['broadcastevent_2',['broadcastEvent',['../class_q_cef_view.html#ad5455e3a8cb0ffa1f9d7cb98307a6bb4',1,'QCefView']]],
6 | ['browsercangoback_3',['browserCanGoBack',['../class_q_cef_view.html#a01100f7ab97f9f643e4f23af5cea9900',1,'QCefView']]],
7 | ['browsercangoforward_4',['browserCanGoForward',['../class_q_cef_view.html#ae1d6a6d94e02a54654463e5b0c491624',1,'QCefView']]],
8 | ['browsergoback_5',['browserGoBack',['../class_q_cef_view.html#aa82e1ceaa7f543f8d99d7d9cbf714382',1,'QCefView']]],
9 | ['browsergoforward_6',['browserGoForward',['../class_q_cef_view.html#a9ce96fbf25701594b8d65381661141db',1,'QCefView']]],
10 | ['browserid_7',['browserId',['../class_q_cef_view.html#ae4aa1652bf9852ed744dd38487bbb748',1,'QCefView']]],
11 | ['browserisloading_8',['browserIsLoading',['../class_q_cef_view.html#a12ca0bc0f4fc55dfc838769990d6a6d7',1,'QCefView']]],
12 | ['browserreload_9',['browserReload',['../class_q_cef_view.html#a45bc8cd7340ce410cf873d7296ffacf6',1,'QCefView']]],
13 | ['browserstopload_10',['browserStopLoad',['../class_q_cef_view.html#afadd210f3c5cd95598b18aa158a9c16f',1,'QCefView']]],
14 | ['build_11',['Build',['../md_docs_201-_build_and_config.html#autotoc_md8',1,'']]],
15 | ['build_20and_20config_12',['Build and Config',['../md_docs_201-_build_and_config.html',1,'']]],
16 | ['build_20qcefview_13',['Build QCefView',['../md_docs_201-_build_and_config.html#autotoc_md12',1,'']]],
17 | ['build_5fdemo_14',['BUILD_DEMO',['../md_docs_201-_build_and_config.html#autotoc_md18',1,'']]],
18 | ['build_5fstatic_15',['BUILD_STATIC',['../md_docs_201-_build_and_config.html#autotoc_md19',1,'']]],
19 | ['builtinschemename_16',['builtinSchemeName',['../class_q_cef_config.html#a626d58894a334167dfc3fbe4fa055711',1,'QCefConfig']]]
20 | ];
21 |
--------------------------------------------------------------------------------
/docs/search/all_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['databases_0',['databases',['../class_q_cef_setting.html#a94b2a957c8754619df7a37258a41c31d',1,'QCefSetting']]],
4 | ['defaultencoding_1',['defaultEncoding',['../class_q_cef_setting.html#a2de89967072377f279b36e821bde18e1',1,'QCefSetting']]],
5 | ['defaultfixedfontsize_2',['defaultFixedFontSize',['../class_q_cef_setting.html#ab25a8bd4b9d5acb865c840b8c4320f5d',1,'QCefSetting']]],
6 | ['defaultfontsize_3',['defaultFontSize',['../class_q_cef_setting.html#a4a38db62a20b2e8e7a26029f0b928689',1,'QCefSetting']]],
7 | ['deleteallcookies_4',['deleteAllCookies',['../class_q_cef_context.html#a794e41a74ddabc503bed5e8c47fe3dd0',1,'QCefContext']]],
8 | ['deprecated_20list_5',['Deprecated List',['../deprecated.html',1,'']]],
9 | ['deprecated_5fcef_5fapi_5fwarning_6',['DEPRECATED_CEF_API_WARNING',['../_q_cef_view__global_8h.html#a342783eb60e0e77913cc501712966dab',1,'QCefView_global.h']]],
10 | ['deprecated_5fsince_5fcef_5fversion_7',['DEPRECATED_SINCE_CEF_VERSION',['../_q_cef_view__global_8h.html#a761b5c2677e327ac6c1c3e8a8b67f067',1,'QCefView_global.h']]],
11 | ['development_8',['Development',['../index.html#autotoc_md6',1,'macOS App Development'],['../index.html#autotoc_md5',1,'Unreal Game Development']]],
12 | ['draggableregionchanged_9',['draggableRegionChanged',['../class_q_cef_view.html#ae11274817f627abf9d407e12dcd5c050',1,'QCefView']]]
13 | ];
14 |
--------------------------------------------------------------------------------
/docs/search/all_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['electron_0',['Why Choose QCefView over Electron?',['../index.html#autotoc_md2',1,'']]],
4 | ['endtime_1',['endTime',['../class_q_cef_download_item.html#a61b2bd3cdc2f35d2424ded4e8b3801fd',1,'QCefDownloadItem']]],
5 | ['error_2',['error',['../class_q_cef_query.html#ab35201ac89d89f1445538f82a12f8fa8',1,'QCefQuery']]],
6 | ['event_3',['event',['../class_q_cef_view.html#a2c33acd395e7f4adecbef1bf67b7680c',1,'QCefView']]],
7 | ['eventname_4',['eventName',['../class_q_cef_event.html#a5a970c76a348788b15a040c8c405a103',1,'QCefEvent']]],
8 | ['executejavascript_5',['executeJavascript',['../class_q_cef_view.html#aef5bf034432e297e89cfd45aca68f5ff',1,'QCefView']]],
9 | ['executejavascriptwithresult_6',['executeJavascriptWithResult',['../class_q_cef_view.html#ac13fdea19da380026a742a60c51a2356',1,'QCefView']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/all_a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['fantasyfontfamily_0',['fantasyFontFamily',['../class_q_cef_setting.html#a0acd7303ff77ae1eff9fa579fc96e97a',1,'QCefSetting']]],
4 | ['faviconurlchanged_1',['faviconURLChanged',['../class_q_cef_view.html#a7b9e104469c1a4a203c2e1d7e9cfd2a7',1,'QCefView']]],
5 | ['file_20path_2',['2. Load Local File With File Path',['../md_docs_203-_resource_loading.html#autotoc_md31',1,'']]],
6 | ['file_20with_20file_20path_3',['2. Load Local File With File Path',['../md_docs_203-_resource_loading.html#autotoc_md31',1,'']]],
7 | ['first_20project_4',['First Project',['../md_docs_202-_first_project.html',1,'']]],
8 | ['fixedfontfamily_5',['fixedFontFamily',['../class_q_cef_setting.html#a239e1982f4ab4198a62f9c00ae17bcbb',1,'QCefSetting']]],
9 | ['folder_20mapping_6',['3. Add Local Folder Mapping',['../md_docs_203-_resource_loading.html#autotoc_md32',1,'']]],
10 | ['for_20qcefview_7',['Ideal Use Cases for QCefView',['../index.html#autotoc_md3',1,'']]],
11 | ['framework_8',['2. Qt Framework',['../md_docs_201-_build_and_config.html#autotoc_md11',1,'']]],
12 | ['from_20c_9',['Call Javascript from C++',['../md_docs_204-_interoperability.html#autotoc_md41',1,'']]],
13 | ['from_20javascript_10',['Call C++ from Javascript',['../md_docs_204-_interoperability.html#autotoc_md37',1,'']]],
14 | ['fullpath_11',['fullPath',['../class_q_cef_download_item.html#a40227300f52cd34a67281eacf95bcc28',1,'QCefDownloadItem']]],
15 | ['fullscreenmodechanged_12',['fullscreenModeChanged',['../class_q_cef_view.html#afa0fbb5b4c2c6c3592085e9b94dffc4a',1,'QCefView']]]
16 | ];
17 |
--------------------------------------------------------------------------------
/docs/search/all_b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['game_20development_0',['Unreal Game Development',['../index.html#autotoc_md5',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/all_c.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['hardware_20acceleration_0',['Hardware Acceleration',['../md_docs_205-_rendering.html#autotoc_md53',1,'']]],
4 | ['hardwareaccelerationenabled_1',['hardwareAccelerationEnabled',['../class_q_cef_setting.html#a4bdbfb2a4dc08f09b21b75bf0a5fd264',1,'QCefSetting']]],
5 | ['hasdevtools_2',['hasDevTools',['../class_q_cef_view.html#a85fd904cbd3b91a72ce090cffb0119c8',1,'QCefView']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/docs/search/all_d.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['id_0',['id',['../class_q_cef_download_item.html#aff911ad0aa21867cdfe56457293f4914',1,'QCefDownloadItem::id()'],['../class_q_cef_query.html#a5b701d7f9c92ff814cfe28b110142a4c',1,'QCefQuery::id()']]],
4 | ['ideal_20use_20cases_20for_20qcefview_1',['Ideal Use Cases for QCefView',['../index.html#autotoc_md3',1,'']]],
5 | ['imageloading_2',['imageLoading',['../class_q_cef_setting.html#aa06779c82a28a01bd862ac605356be40',1,'QCefSetting']]],
6 | ['imageshrinkstandalonetofit_3',['imageShrinkStandaloneToFit',['../class_q_cef_setting.html#a7374edce9be761b5d40edef80f42f7b9',1,'QCefSetting']]],
7 | ['in_20qcefview_4',['Setting OSR Mode in QCefView',['../md_docs_205-_rendering.html#autotoc_md52',1,'']]],
8 | ['init_5',['init',['../class_q_cef_context.html#a78836c8d4d2bdf4970a256d8d29c80c6',1,'QCefContext']]],
9 | ['initializing_20the_20qcefcontext_20instance_6',['Initializing the QCefContext Instance',['../md_docs_202-_first_project.html#autotoc_md25',1,'']]],
10 | ['inputmethodquery_7',['inputMethodQuery',['../class_q_cef_view.html#af25a011c126a9bb5dc3df99756a75368',1,'QCefView']]],
11 | ['instance_8',['Instance',['../md_docs_202-_first_project.html#autotoc_md26',1,'Create QCefView Instance'],['../md_docs_202-_first_project.html#autotoc_md25',1,'Initializing the QCefContext Instance']]],
12 | ['instance_9',['instance',['../class_q_cef_context.html#a3e6491f837fdd72c7b4fefed5569853b',1,'QCefContext']]],
13 | ['interoperability_10',['Interoperability',['../md_docs_204-_interoperability.html',1,'']]],
14 | ['introduced_5fcef_5fapi_5fwarning_11',['INTRODUCED_CEF_API_WARNING',['../_q_cef_view__global_8h.html#af3bf408a6987e48e4ebe84ca2669d6a4',1,'QCefView_global.h']]],
15 | ['introduced_5fsince_5fcef_5fversion_12',['INTRODUCED_SINCE_CEF_VERSION',['../_q_cef_view__global_8h.html#a3dcdd1222917bd78bc60c08d2c041d2b',1,'QCefView_global.h']]],
16 | ['introduction_13',['Introduction',['../index.html',1,'']]],
17 | ['invoke_20name_20args_14',['invoke(name, ...args)',['../md_docs_206-_web_a_p_is.html#CefViewClient_invoke',1,'']]],
18 | ['invokemethod_15',['invokeMethod',['../class_q_cef_view.html#a00435b9ab61d04517427dbe4805e970d',1,'QCefView']]],
19 | ['is_20qcefview_16',['What is QCefView?',['../index.html#autotoc_md1',1,'']]],
20 | ['iscanceled_17',['isCanceled',['../class_q_cef_download_item.html#ada41b0480a3e97d788086ea8c420a22c',1,'QCefDownloadItem']]],
21 | ['iscomplete_18',['isComplete',['../class_q_cef_download_item.html#a67c86edf9e9cb742050e2521b55c86df',1,'QCefDownloadItem']]],
22 | ['isinprogress_19',['isInProgress',['../class_q_cef_download_item.html#a22455702c989d4dcc08fb1d13659739d',1,'QCefDownloadItem']]],
23 | ['isstarted_20',['isStarted',['../class_q_cef_download_item.html#a6febee1fe8a5f7d15e888a4352d50526',1,'QCefDownloadItem']]]
24 | ];
25 |
--------------------------------------------------------------------------------
/docs/search/all_e.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['javascript_0',['Call C++ from Javascript',['../md_docs_204-_interoperability.html#autotoc_md37',1,'']]],
4 | ['javascript_1',['javascript',['../class_q_cef_setting.html#abfa7cceca149b6311e7a28e6ae4e2853',1,'QCefSetting']]],
5 | ['javascript_20code_2',['Javascript Code',['../md_docs_204-_interoperability.html#autotoc_md38',1,'Add Javascript Code'],['../md_docs_204-_interoperability.html#autotoc_md42',1,'Add Javascript Code'],['../md_docs_204-_interoperability.html#autotoc_md46',1,'Add Javascript Code']]],
6 | ['javascript_20from_20c_3',['Call Javascript from C++',['../md_docs_204-_interoperability.html#autotoc_md41',1,'']]],
7 | ['javascriptaccessclipboard_4',['javascriptAccessClipboard',['../class_q_cef_setting.html#aff511401ea2d0453583db4b642526dbd',1,'QCefSetting']]],
8 | ['javascriptclosewindows_5',['javascriptCloseWindows',['../class_q_cef_setting.html#a8cab27275ce36cb0b1477a85b6694f3b',1,'QCefSetting']]],
9 | ['javascriptdompaste_6',['javascriptDomPaste',['../class_q_cef_setting.html#a6696cc8fa0b4ea1ef14d71259cd4350d',1,'QCefSetting']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/classes_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['qcefconfig_0',['QCefConfig',['../class_q_cef_config.html',1,'']]],
4 | ['qcefcontext_1',['QCefContext',['../class_q_cef_context.html',1,'']]],
5 | ['qcefdownloaditem_2',['QCefDownloadItem',['../class_q_cef_download_item.html',1,'']]],
6 | ['qcefevent_3',['QCefEvent',['../class_q_cef_event.html',1,'']]],
7 | ['qcefquery_4',['QCefQuery',['../class_q_cef_query.html',1,'']]],
8 | ['qcefsetting_5',['QCefSetting',['../class_q_cef_setting.html',1,'']]],
9 | ['qcefview_6',['QCefView',['../class_q_cef_view.html',1,'']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/close.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
19 |
--------------------------------------------------------------------------------
/docs/search/defines_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['cef_5fcommit_5fhash_0',['CEF_COMMIT_HASH',['../_cef_version_8h.html#a3eed202b5601adca42fcb536e7fc8301',1,'CefVersion.h']]],
4 | ['cef_5fcommit_5fnumber_1',['CEF_COMMIT_NUMBER',['../_cef_version_8h.html#a95fd47d721b7760374eeee9089bedd54',1,'CefVersion.h']]],
5 | ['cef_5fversion_2',['CEF_VERSION',['../_cef_version_8h.html#af685e354a4145c66d8020a366872fa31',1,'CefVersion.h']]],
6 | ['cef_5fversion_5fmajor_3',['CEF_VERSION_MAJOR',['../_cef_version_8h.html#a7a9be029daf6e2078b974348dcea2985',1,'CefVersion.h']]],
7 | ['cef_5fversion_5fminor_4',['CEF_VERSION_MINOR',['../_cef_version_8h.html#a67ccdb367f59d0948c8c607b3fa8c1fd',1,'CefVersion.h']]],
8 | ['cef_5fversion_5fpatch_5',['CEF_VERSION_PATCH',['../_cef_version_8h.html#a43e12afa87b9af993b0aa6aba4d4cc80',1,'CefVersion.h']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/docs/search/defines_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['deprecated_5fcef_5fapi_5fwarning_0',['DEPRECATED_CEF_API_WARNING',['../_q_cef_view__global_8h.html#a342783eb60e0e77913cc501712966dab',1,'QCefView_global.h']]],
4 | ['deprecated_5fsince_5fcef_5fversion_1',['DEPRECATED_SINCE_CEF_VERSION',['../_q_cef_view__global_8h.html#a761b5c2677e327ac6c1c3e8a8b67f067',1,'QCefView_global.h']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/defines_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['introduced_5fcef_5fapi_5fwarning_0',['INTRODUCED_CEF_API_WARNING',['../_q_cef_view__global_8h.html#af3bf408a6987e48e4ebe84ca2669d6a4',1,'QCefView_global.h']]],
4 | ['introduced_5fsince_5fcef_5fversion_1',['INTRODUCED_SINCE_CEF_VERSION',['../_q_cef_view__global_8h.html#a3dcdd1222917bd78bc60c08d2c041d2b',1,'QCefView_global.h']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/defines_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['qcefbrowserid_0',['QCefBrowserId',['../_q_cef_view_8h.html#aa777d6fc375d0b946818bfb17c3292df',1,'QCefView.h']]],
4 | ['qcefframeid_1',['QCefFrameId',['../_q_cef_view_8h.html#a9f68e892e3db80ea20e887e4ac50de5b',1,'QCefView.h']]],
5 | ['qcefview_5fexport_2',['QCEFVIEW_EXPORT',['../_q_cef_view__global_8h.html#a4489f56825bd83a3b95b3d18fdca331f',1,'QCefView_global.h']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/docs/search/enums_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['cefwindowopendisposition_0',['CefWindowOpenDisposition',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787',1,'QCefView']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/enums_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['loglevel_0',['LogLevel',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7c',1,'QCefConfig']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/enumvalues_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['cefwindowopendispositioncurrenttab_0',['CefWindowOpenDispositionCurrentTab',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a48d5eb6b5d1564c6668f15f1f2a45b24',1,'QCefView']]],
4 | ['cefwindowopendispositionignoreaction_1',['CefWindowOpenDispositionIgnoreAction',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a66fc224542ebf19b10e51aa721b1ef09',1,'QCefView']]],
5 | ['cefwindowopendispositionnewbackgroundtab_2',['CefWindowOpenDispositionNewBackgroundTab',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787ab43a4c561c1e83ac6419cc711220e62c',1,'QCefView']]],
6 | ['cefwindowopendispositionnewforegroundtab_3',['CefWindowOpenDispositionNewForeGroundTab',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a8bd674f0da6b33d87117c7b8bf5153c2',1,'QCefView']]],
7 | ['cefwindowopendispositionnewpopup_4',['CefWindowOpenDispositionNewPopup',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a844b09433f6bcfe05e43fcd8c848a41d',1,'QCefView']]],
8 | ['cefwindowopendispositionnewwindow_5',['CefWindowOpenDispositionNewWindow',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a7b2dddad8191aff9c281badd83b710b1',1,'QCefView']]],
9 | ['cefwindowopendispositionofftherecord_6',['CefWindowOpenDispositionOffTheRecord',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a5e8deb29da2ecf34eaaf23f1ed7201f7',1,'QCefView']]],
10 | ['cefwindowopendispositionsavetodisk_7',['CefWindowOpenDispositionSaveToDisk',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a664b036a79acb7f6c84c2cfdedbd4093',1,'QCefView']]],
11 | ['cefwindowopendispositionsingletontab_8',['CefWindowOpenDispositionSingletonTab',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787a3d46df185e4a92deef33f80cfdae4c5c',1,'QCefView']]],
12 | ['cefwindowopendispositionunknown_9',['CefWindowOpenDispositionUnknown',['../class_q_cef_view.html#a9963d810f8aa71b45b1b10f0abbe8787af5284fd406b0fe65ef1071961543d3a9',1,'QCefView']]]
13 | ];
14 |
--------------------------------------------------------------------------------
/docs/search/enumvalues_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['logseverity_5fdebug_0',['LOGSEVERITY_DEBUG',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7cafb3f2009094b0d1ff363969eb01ee94b',1,'QCefConfig']]],
4 | ['logseverity_5fdefault_1',['LOGSEVERITY_DEFAULT',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7ca01b281485ae3ba1c2c608e92b81f8d60',1,'QCefConfig']]],
5 | ['logseverity_5fdisable_2',['LOGSEVERITY_DISABLE',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7ca7b5b19b0c251025706099ca43e4492a7',1,'QCefConfig']]],
6 | ['logseverity_5ferror_3',['LOGSEVERITY_ERROR',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7ca7480fe3cac801638c8bb04aefb6abb3d',1,'QCefConfig']]],
7 | ['logseverity_5ffatal_4',['LOGSEVERITY_FATAL',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7ca4ac597d5afa3a624c8df22a538e0b11b',1,'QCefConfig']]],
8 | ['logseverity_5finfo_5',['LOGSEVERITY_INFO',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7cae85556e5aa93d733b265d282d43ccdc2',1,'QCefConfig']]],
9 | ['logseverity_5fverbose_6',['LOGSEVERITY_VERBOSE',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7cadbf6a1df0d32aa49fb6b9158983435d3',1,'QCefConfig']]],
10 | ['logseverity_5fwarning_7',['LOGSEVERITY_WARNING',['../class_q_cef_config.html#ae437cd58b60d3902bba07e75a48d9a7ca9074dc5764211db3e4de761451aa8422',1,'QCefConfig']]]
11 | ];
12 |
--------------------------------------------------------------------------------
/docs/search/files_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['00_2dintroduction_2emd_0',['00-Introduction.md',['../00-_introduction_8md.html',1,'']]],
4 | ['01_2dbuildandconfig_2emd_1',['01-BuildAndConfig.md',['../01-_build_and_config_8md.html',1,'']]],
5 | ['02_2dfirstproject_2emd_2',['02-FirstProject.md',['../02-_first_project_8md.html',1,'']]],
6 | ['03_2dresourceloading_2emd_3',['03-ResourceLoading.md',['../03-_resource_loading_8md.html',1,'']]],
7 | ['04_2dinteroperability_2emd_4',['04-Interoperability.md',['../04-_interoperability_8md.html',1,'']]],
8 | ['05_2drendering_2emd_5',['05-Rendering.md',['../05-_rendering_8md.html',1,'']]],
9 | ['06_2dwebapis_2emd_6',['06-WebAPIs.md',['../06-_web_a_p_is_8md.html',1,'']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/files_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['cefversion_2eh_0',['CefVersion.h',['../_cef_version_8h.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/files_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['qcefconfig_2eh_0',['QCefConfig.h',['../_q_cef_config_8h.html',1,'']]],
4 | ['qcefcontext_2eh_1',['QCefContext.h',['../_q_cef_context_8h.html',1,'']]],
5 | ['qcefdownloaditem_2eh_2',['QCefDownloadItem.h',['../_q_cef_download_item_8h.html',1,'']]],
6 | ['qcefevent_2eh_3',['QCefEvent.h',['../_q_cef_event_8h.html',1,'']]],
7 | ['qcefquery_2eh_4',['QCefQuery.h',['../_q_cef_query_8h.html',1,'']]],
8 | ['qcefsetting_2eh_5',['QCefSetting.h',['../_q_cef_setting_8h.html',1,'']]],
9 | ['qcefview_2eh_6',['QCefView.h',['../_q_cef_view_8h.html',1,'']]],
10 | ['qcefview_5fglobal_2eh_7',['QCefView_global.h',['../_q_cef_view__global_8h.html',1,'']]]
11 | ];
12 |
--------------------------------------------------------------------------------
/docs/search/functions_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['acceptlanguagelist_0',['acceptLanguageList',['../class_q_cef_config.html#a2828af9a2815ddeb1026e2f6a760d5e8',1,'QCefConfig::acceptLanguageList()'],['../class_q_cef_setting.html#aee323c86faebc36358a92c931c500478',1,'QCefSetting::acceptLanguageList()']]],
4 | ['addarchiveresource_1',['addArchiveResource',['../class_q_cef_context.html#aba9c70a84379190d151bdc4b634367e6',1,'QCefContext::addArchiveResource()'],['../class_q_cef_view.html#a503148f8ff5ca5b28d3f0e123bf5bf76',1,'QCefView::addArchiveResource()']]],
5 | ['addcommandlineswitch_2',['addCommandLineSwitch',['../class_q_cef_config.html#a2873f9e8e8997db4060348418df16632',1,'QCefConfig']]],
6 | ['addcommandlineswitchwithvalue_3',['addCommandLineSwitchWithValue',['../class_q_cef_config.html#a141daa8b02526d190e462cbcb38dbab5',1,'QCefConfig']]],
7 | ['addcookie_4',['addCookie',['../class_q_cef_context.html#a6d2e90de7fb5fcf2b7e7a6581d26e62c',1,'QCefContext']]],
8 | ['addcrossoriginwhitelistentry_5',['addCrossOriginWhitelistEntry',['../class_q_cef_context.html#aaba077228a77f5e7d7491eda3ce10267',1,'QCefContext']]],
9 | ['addlocalfolderresource_6',['addLocalFolderResource',['../class_q_cef_context.html#aecc6f7ee9d296bcf8d2ba470e0c0e454',1,'QCefContext::addLocalFolderResource()'],['../class_q_cef_view.html#a8c6286b279094a691832fc89b93c75f1',1,'QCefView::addLocalFolderResource(const QString &path, const QString &url, int priority=0)']]],
10 | ['addresschanged_7',['addressChanged',['../class_q_cef_view.html#a93bf80d520a6d1da560bb1729d4b5152',1,'QCefView']]],
11 | ['allowdrag_8',['allowDrag',['../class_q_cef_view.html#adf944b4ec19dc62e6703b35f62c8cdd5',1,'QCefView']]],
12 | ['arguments_9',['arguments',['../class_q_cef_event.html#a4cf70fa60235d723b9e578cded919327',1,'QCefEvent']]]
13 | ];
14 |
--------------------------------------------------------------------------------
/docs/search/functions_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['backgroundcolor_0',['backgroundColor',['../class_q_cef_config.html#aa04db9637f47424834bbcdf05a8b640b',1,'QCefConfig::backgroundColor()'],['../class_q_cef_setting.html#a9db276640c98e1d5d38290e06ae17d1a',1,'QCefSetting::backgroundColor()']]],
4 | ['bridgeobjectname_1',['bridgeObjectName',['../class_q_cef_config.html#aab1ee01c7697e38b94b8edf961da4b35',1,'QCefConfig']]],
5 | ['broadcastevent_2',['broadcastEvent',['../class_q_cef_view.html#ad5455e3a8cb0ffa1f9d7cb98307a6bb4',1,'QCefView']]],
6 | ['browsercangoback_3',['browserCanGoBack',['../class_q_cef_view.html#a01100f7ab97f9f643e4f23af5cea9900',1,'QCefView']]],
7 | ['browsercangoforward_4',['browserCanGoForward',['../class_q_cef_view.html#ae1d6a6d94e02a54654463e5b0c491624',1,'QCefView']]],
8 | ['browsergoback_5',['browserGoBack',['../class_q_cef_view.html#aa82e1ceaa7f543f8d99d7d9cbf714382',1,'QCefView']]],
9 | ['browsergoforward_6',['browserGoForward',['../class_q_cef_view.html#a9ce96fbf25701594b8d65381661141db',1,'QCefView']]],
10 | ['browserid_7',['browserId',['../class_q_cef_view.html#ae4aa1652bf9852ed744dd38487bbb748',1,'QCefView']]],
11 | ['browserisloading_8',['browserIsLoading',['../class_q_cef_view.html#a12ca0bc0f4fc55dfc838769990d6a6d7',1,'QCefView']]],
12 | ['browserreload_9',['browserReload',['../class_q_cef_view.html#a45bc8cd7340ce410cf873d7296ffacf6',1,'QCefView']]],
13 | ['browserstopload_10',['browserStopLoad',['../class_q_cef_view.html#afadd210f3c5cd95598b18aa158a9c16f',1,'QCefView']]],
14 | ['builtinschemename_11',['builtinSchemeName',['../class_q_cef_config.html#a626d58894a334167dfc3fbe4fa055711',1,'QCefConfig']]]
15 | ];
16 |
--------------------------------------------------------------------------------
/docs/search/functions_11.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['tabtolinks_0',['tabToLinks',['../class_q_cef_setting.html#a9b81d1bcf47146dfc5eeeabeb583e627',1,'QCefSetting']]],
4 | ['textarearesize_1',['textAreaResize',['../class_q_cef_setting.html#a8d88588797f311f71c55073f95dafafe',1,'QCefSetting']]],
5 | ['titlechanged_2',['titleChanged',['../class_q_cef_view.html#a48c82c208cab769a1baa7177bc58b030',1,'QCefView']]],
6 | ['totalbytes_3',['totalBytes',['../class_q_cef_download_item.html#ab1ff7414475451351e4d4ab50f723bee',1,'QCefDownloadItem']]],
7 | ['triggerevent_4',['triggerEvent',['../class_q_cef_view.html#ac47c23ffcd94bdffe2b6a81eaae077a2',1,'QCefView::triggerEvent(const QCefEvent &event)'],['../class_q_cef_view.html#ab70a707afda924d6f035b20a1aecc695',1,'QCefView::triggerEvent(const QCefEvent &event, const QString &frameId)']]]
8 | ];
9 |
--------------------------------------------------------------------------------
/docs/search/functions_12.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['uninit_0',['uninit',['../class_q_cef_context.html#aee74a7460786ddc17f8f9c0f68eaab6b',1,'QCefContext']]],
4 | ['url_1',['url',['../class_q_cef_download_item.html#a253cf33b582e3994b65d5611ef277bbe',1,'QCefDownloadItem']]],
5 | ['useragent_2',['userAgent',['../class_q_cef_config.html#ad95b55d57719d9fc1a3dc5abb5695016',1,'QCefConfig']]],
6 | ['userdatapath_3',['userDataPath',['../class_q_cef_config.html#a317ff9d74e89dac404e20005c33b08e9',1,'QCefConfig']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/docs/search/functions_13.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['webgl_0',['webGL',['../class_q_cef_setting.html#aca84c981db4fcc2cf6aa3ece7c44973c',1,'QCefSetting']]],
4 | ['windowinitialsize_1',['windowInitialSize',['../class_q_cef_setting.html#ad3aabefb7879e392952a94464c983978',1,'QCefSetting']]],
5 | ['windowlessframerate_2',['windowlessFrameRate',['../class_q_cef_setting.html#adfc424688213e0e695b6b84681581135',1,'QCefSetting']]],
6 | ['windowlessrenderingenabled_3',['windowlessRenderingEnabled',['../class_q_cef_config.html#a17b6765b357b7a2d69a1f02b27a4eb92',1,'QCefConfig']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/docs/search/functions_14.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eqcefconfig_0',['~QCefConfig',['../class_q_cef_config.html#a67d06ef56affa82e943c7a5c73afee9a',1,'QCefConfig']]],
4 | ['_7eqcefcontext_1',['~QCefContext',['../class_q_cef_context.html#a91de7d9c36aafdaca390a355d6da5c6d',1,'QCefContext']]],
5 | ['_7eqcefdownloaditem_2',['~QCefDownloadItem',['../class_q_cef_download_item.html#a913a2654dcd05ef8facefc515d831124',1,'QCefDownloadItem']]],
6 | ['_7eqcefevent_3',['~QCefEvent',['../class_q_cef_event.html#a5c0e38242fa1ba823f1664232966787c',1,'QCefEvent']]],
7 | ['_7eqcefquery_4',['~QCefQuery',['../class_q_cef_query.html#a402d117cbd2d37681394f86d31ed11a3',1,'QCefQuery']]],
8 | ['_7eqcefsetting_5',['~QCefSetting',['../class_q_cef_setting.html#a589b16fe883213d0e330503c0ccab218',1,'QCefSetting']]],
9 | ['_7eqcefview_6',['~QCefView',['../class_q_cef_view.html#a70903dca8ccd3e2776d68742531177fd',1,'QCefView']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/functions_15.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['_7eqcefconfig_0',['~QCefConfig',['../class_q_cef_config.html#a67d06ef56affa82e943c7a5c73afee9a',1,'QCefConfig']]],
4 | ['_7eqcefcontext_1',['~QCefContext',['../class_q_cef_context.html#a91de7d9c36aafdaca390a355d6da5c6d',1,'QCefContext']]],
5 | ['_7eqcefdownloaditem_2',['~QCefDownloadItem',['../class_q_cef_download_item.html#a913a2654dcd05ef8facefc515d831124',1,'QCefDownloadItem']]],
6 | ['_7eqcefevent_3',['~QCefEvent',['../class_q_cef_event.html#a5c0e38242fa1ba823f1664232966787c',1,'QCefEvent']]],
7 | ['_7eqcefquery_4',['~QCefQuery',['../class_q_cef_query.html#a402d117cbd2d37681394f86d31ed11a3',1,'QCefQuery']]],
8 | ['_7eqcefsetting_5',['~QCefSetting',['../class_q_cef_setting.html#a589b16fe883213d0e330503c0ccab218',1,'QCefSetting']]],
9 | ['_7eqcefview_6',['~QCefView',['../class_q_cef_view.html#a70903dca8ccd3e2776d68742531177fd',1,'QCefView']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/functions_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['cachepath_0',['cachePath',['../class_q_cef_config.html#ab3a95ce139ce862abb4abb300c1cc1e3',1,'QCefConfig']]],
4 | ['cancel_1',['cancel',['../class_q_cef_download_item.html#a723b2081749a447049efd04e768d9e57',1,'QCefDownloadItem']]],
5 | ['cefconfig_2',['cefConfig',['../class_q_cef_context.html#acfd6416ebc0a8df5cf8961dadeff960e',1,'QCefContext']]],
6 | ['cefqueryrequest_3',['cefQueryRequest',['../class_q_cef_view.html#aef058b415485dba45c8dfffdcf956a5f',1,'QCefView']]],
7 | ['cefurlrequest_4',['cefUrlRequest',['../class_q_cef_view.html#add5abd934b15c1b8b3e91703701a8cf4',1,'QCefView']]],
8 | ['clearcrossoriginwhitelistentry_5',['clearCrossOriginWhitelistEntry',['../class_q_cef_context.html#a95d71c83fef34e8218a8ce559f173ab4',1,'QCefContext']]],
9 | ['closedevtools_6',['closeDevTools',['../class_q_cef_view.html#abdf0a68139fe9163ecd9b5a0cdeed6d7',1,'QCefView']]],
10 | ['commandlinepassthroughdisabled_7',['commandLinePassthroughDisabled',['../class_q_cef_config.html#a892715bebd8dc71e5acb0be17bfff43d',1,'QCefConfig']]],
11 | ['consolemessage_8',['consoleMessage',['../class_q_cef_view.html#a2dae6946082712815273c2967d37762a',1,'QCefView']]],
12 | ['contentdisposition_9',['contentDisposition',['../class_q_cef_download_item.html#af97dad25e439c8b997d6689fe1c91bf8',1,'QCefDownloadItem']]],
13 | ['currentspeed_10',['currentSpeed',['../class_q_cef_download_item.html#a5c9648906b02ce59aa6d82f03e468c1d',1,'QCefDownloadItem']]],
14 | ['cursivefontfamily_11',['cursiveFontFamily',['../class_q_cef_setting.html#a86526505941342ffbc96b6e5226ffcbe',1,'QCefSetting']]]
15 | ];
16 |
--------------------------------------------------------------------------------
/docs/search/functions_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['databases_0',['databases',['../class_q_cef_setting.html#a94b2a957c8754619df7a37258a41c31d',1,'QCefSetting']]],
4 | ['defaultencoding_1',['defaultEncoding',['../class_q_cef_setting.html#a2de89967072377f279b36e821bde18e1',1,'QCefSetting']]],
5 | ['defaultfixedfontsize_2',['defaultFixedFontSize',['../class_q_cef_setting.html#ab25a8bd4b9d5acb865c840b8c4320f5d',1,'QCefSetting']]],
6 | ['defaultfontsize_3',['defaultFontSize',['../class_q_cef_setting.html#a4a38db62a20b2e8e7a26029f0b928689',1,'QCefSetting']]],
7 | ['deleteallcookies_4',['deleteAllCookies',['../class_q_cef_context.html#a794e41a74ddabc503bed5e8c47fe3dd0',1,'QCefContext']]],
8 | ['draggableregionchanged_5',['draggableRegionChanged',['../class_q_cef_view.html#ae11274817f627abf9d407e12dcd5c050',1,'QCefView']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/docs/search/functions_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['endtime_0',['endTime',['../class_q_cef_download_item.html#a61b2bd3cdc2f35d2424ded4e8b3801fd',1,'QCefDownloadItem']]],
4 | ['error_1',['error',['../class_q_cef_query.html#ab35201ac89d89f1445538f82a12f8fa8',1,'QCefQuery']]],
5 | ['event_2',['event',['../class_q_cef_view.html#a2c33acd395e7f4adecbef1bf67b7680c',1,'QCefView']]],
6 | ['eventname_3',['eventName',['../class_q_cef_event.html#a5a970c76a348788b15a040c8c405a103',1,'QCefEvent']]],
7 | ['executejavascript_4',['executeJavascript',['../class_q_cef_view.html#aef5bf034432e297e89cfd45aca68f5ff',1,'QCefView']]],
8 | ['executejavascriptwithresult_5',['executeJavascriptWithResult',['../class_q_cef_view.html#ac13fdea19da380026a742a60c51a2356',1,'QCefView']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/docs/search/functions_5.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['fantasyfontfamily_0',['fantasyFontFamily',['../class_q_cef_setting.html#a0acd7303ff77ae1eff9fa579fc96e97a',1,'QCefSetting']]],
4 | ['faviconurlchanged_1',['faviconURLChanged',['../class_q_cef_view.html#a7b9e104469c1a4a203c2e1d7e9cfd2a7',1,'QCefView']]],
5 | ['fixedfontfamily_2',['fixedFontFamily',['../class_q_cef_setting.html#a239e1982f4ab4198a62f9c00ae17bcbb',1,'QCefSetting']]],
6 | ['fullpath_3',['fullPath',['../class_q_cef_download_item.html#a40227300f52cd34a67281eacf95bcc28',1,'QCefDownloadItem']]],
7 | ['fullscreenmodechanged_4',['fullscreenModeChanged',['../class_q_cef_view.html#afa0fbb5b4c2c6c3592085e9b94dffc4a',1,'QCefView']]]
8 | ];
9 |
--------------------------------------------------------------------------------
/docs/search/functions_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['hardwareaccelerationenabled_0',['hardwareAccelerationEnabled',['../class_q_cef_setting.html#a4bdbfb2a4dc08f09b21b75bf0a5fd264',1,'QCefSetting']]],
4 | ['hasdevtools_1',['hasDevTools',['../class_q_cef_view.html#a85fd904cbd3b91a72ce090cffb0119c8',1,'QCefView']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/functions_7.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['id_0',['id',['../class_q_cef_download_item.html#aff911ad0aa21867cdfe56457293f4914',1,'QCefDownloadItem::id()'],['../class_q_cef_query.html#a5b701d7f9c92ff814cfe28b110142a4c',1,'QCefQuery::id()']]],
4 | ['imageloading_1',['imageLoading',['../class_q_cef_setting.html#aa06779c82a28a01bd862ac605356be40',1,'QCefSetting']]],
5 | ['imageshrinkstandalonetofit_2',['imageShrinkStandaloneToFit',['../class_q_cef_setting.html#a7374edce9be761b5d40edef80f42f7b9',1,'QCefSetting']]],
6 | ['init_3',['init',['../class_q_cef_context.html#a78836c8d4d2bdf4970a256d8d29c80c6',1,'QCefContext']]],
7 | ['inputmethodquery_4',['inputMethodQuery',['../class_q_cef_view.html#af25a011c126a9bb5dc3df99756a75368',1,'QCefView']]],
8 | ['instance_5',['instance',['../class_q_cef_context.html#a3e6491f837fdd72c7b4fefed5569853b',1,'QCefContext']]],
9 | ['invokemethod_6',['invokeMethod',['../class_q_cef_view.html#a00435b9ab61d04517427dbe4805e970d',1,'QCefView']]],
10 | ['iscanceled_7',['isCanceled',['../class_q_cef_download_item.html#ada41b0480a3e97d788086ea8c420a22c',1,'QCefDownloadItem']]],
11 | ['iscomplete_8',['isComplete',['../class_q_cef_download_item.html#a67c86edf9e9cb742050e2521b55c86df',1,'QCefDownloadItem']]],
12 | ['isinprogress_9',['isInProgress',['../class_q_cef_download_item.html#a22455702c989d4dcc08fb1d13659739d',1,'QCefDownloadItem']]],
13 | ['isstarted_10',['isStarted',['../class_q_cef_download_item.html#a6febee1fe8a5f7d15e888a4352d50526',1,'QCefDownloadItem']]]
14 | ];
15 |
--------------------------------------------------------------------------------
/docs/search/functions_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['javascript_0',['javascript',['../class_q_cef_setting.html#abfa7cceca149b6311e7a28e6ae4e2853',1,'QCefSetting']]],
4 | ['javascriptaccessclipboard_1',['javascriptAccessClipboard',['../class_q_cef_setting.html#aff511401ea2d0453583db4b642526dbd',1,'QCefSetting']]],
5 | ['javascriptclosewindows_2',['javascriptCloseWindows',['../class_q_cef_setting.html#a8cab27275ce36cb0b1477a85b6694f3b',1,'QCefSetting']]],
6 | ['javascriptdompaste_3',['javascriptDomPaste',['../class_q_cef_setting.html#a6696cc8fa0b4ea1ef14d71259cd4350d',1,'QCefSetting']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/docs/search/functions_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['loadend_0',['loadEnd',['../class_q_cef_view.html#a567e20fd09518ca9c0d2e82f936ff5d6',1,'QCefView']]],
4 | ['loaderror_1',['loadError',['../class_q_cef_view.html#a460c00b974b6368ad8d1a5975d3aaf7d',1,'QCefView']]],
5 | ['loadingprogresschanged_2',['loadingProgressChanged',['../class_q_cef_view.html#ac7377eeed6811bafca1e6887b64d62a5',1,'QCefView']]],
6 | ['loadingstatechanged_3',['loadingStateChanged',['../class_q_cef_view.html#a076678fb5d8deec1600f369d4f1fc95a',1,'QCefView']]],
7 | ['loadstart_4',['loadStart',['../class_q_cef_view.html#a6b04776ad4d7b62c102e9c38ac022b40',1,'QCefView']]],
8 | ['locale_5',['locale',['../class_q_cef_config.html#ac1d5ca26f596c9f3e7697da04e549414',1,'QCefConfig']]],
9 | ['localstorage_6',['localStorage',['../class_q_cef_setting.html#a4fffdf46c7617f7b116e2e836dbb48d0',1,'QCefSetting']]],
10 | ['loglevel_7',['logLevel',['../class_q_cef_config.html#a8728d026571a97449e13e8502c34e5e5',1,'QCefConfig']]]
11 | ];
12 |
--------------------------------------------------------------------------------
/docs/search/functions_a.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['markasreplied_0',['markAsReplied',['../class_q_cef_query.html#af1e8c950b361ad9ca4d4e260626c5d14',1,'QCefQuery']]],
4 | ['mimetype_1',['mimeType',['../class_q_cef_download_item.html#afb8ec36477b64a222b0610c8518f8e31',1,'QCefDownloadItem']]],
5 | ['minimumfontsize_2',['minimumFontSize',['../class_q_cef_setting.html#a3b263c84f28ef76fc1dc4cd4dfad8e5d',1,'QCefSetting']]],
6 | ['minimumlogicalfontsize_3',['minimumLogicalFontSize',['../class_q_cef_setting.html#a3f0801d8ecbc7fe86df805dc6db3aad9',1,'QCefSetting']]]
7 | ];
8 |
--------------------------------------------------------------------------------
/docs/search/functions_b.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['nativebrowsercreated_0',['nativeBrowserCreated',['../class_q_cef_view.html#a543b0eca797c5161d6325665d5ddd576',1,'QCefView']]],
4 | ['navigatetostring_1',['navigateToString',['../class_q_cef_view.html#ac3b8ec3b088422a67f93fc580047a1a0',1,'QCefView']]],
5 | ['navigatetourl_2',['navigateToUrl',['../class_q_cef_view.html#a4bf036d5a7d128d4c1487afaa0393d5b',1,'QCefView']]]
6 | ];
7 |
--------------------------------------------------------------------------------
/docs/search/functions_c.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['onnewbrowser_0',['onNewBrowser',['../class_q_cef_view.html#a49c99555c9c604dc2e310c3df02bf385',1,'QCefView']]],
4 | ['onnewdownloaditem_1',['onNewDownloadItem',['../class_q_cef_view.html#a666e93d6e9f9be7444f9b898f77c8292',1,'QCefView']]],
5 | ['onnewpopup_2',['onNewPopup',['../class_q_cef_view.html#aadb6d47674e2ad414eb20a066b7e0738',1,'QCefView']]],
6 | ['onrequestclosefromweb_3',['onRequestCloseFromWeb',['../class_q_cef_view.html#ad23057b6187876c84f883b1e7120456d',1,'QCefView']]],
7 | ['onupdatedownloaditem_4',['onUpdateDownloadItem',['../class_q_cef_view.html#a9833a1db8ef5864489f9462ef397cbb8',1,'QCefView']]],
8 | ['operator_3d_5',['operator=',['../class_q_cef_config.html#a2f78eccb1b7463db2c0b174aff5d0553',1,'QCefConfig::operator=()'],['../class_q_cef_event.html#a95e2f8c582270de0f9501945a6e063ee',1,'QCefEvent::operator=()'],['../class_q_cef_setting.html#a486f0c9edda93fb30c75608ac9b98ba2',1,'QCefSetting::operator=()']]],
9 | ['originalurl_6',['originalUrl',['../class_q_cef_download_item.html#a9f9bcb65952b50b4f24c4d55eff9b64e',1,'QCefDownloadItem']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/functions_d.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['paintengine_0',['paintEngine',['../class_q_cef_view.html#ad88e5a99ad808b7a911b58ba9ed9b838',1,'QCefView']]],
4 | ['pause_1',['pause',['../class_q_cef_download_item.html#aaa31f59599e9311f0aee99a0a13e2568',1,'QCefDownloadItem']]],
5 | ['percentcomplete_2',['percentComplete',['../class_q_cef_download_item.html#a18fafe4f375aa60e43ec7c5d855ab91e',1,'QCefDownloadItem']]],
6 | ['persistsessioncookies_3',['persistSessionCookies',['../class_q_cef_config.html#aa8b22bc6b4d9ef5c8aeccfc363ee1f9c',1,'QCefConfig']]],
7 | ['persistuserpreferences_4',['persistUserPreferences',['../class_q_cef_config.html#a4749b6aa16660a15d753f5248985e25f',1,'QCefConfig']]],
8 | ['plugins_5',['plugins',['../class_q_cef_setting.html#a99c3a6c649171d42402af815f6628f03',1,'QCefSetting']]]
9 | ];
10 |
--------------------------------------------------------------------------------
/docs/search/functions_e.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['q_5fdeclare_5fmetatype_0',['Q_DECLARE_METATYPE',['../_q_cef_config_8h.html#a9c4f9b520ed6a74eb2f7c521c08471c6',1,'Q_DECLARE_METATYPE(QCefConfig): QCefConfig.h'],['../_q_cef_event_8h.html#ad2abcec84743c92df60fa3b333b3d2b5',1,'Q_DECLARE_METATYPE(QCefEvent): QCefEvent.h'],['../_q_cef_query_8h.html#a83540a9479efcf57275cd6d2e99cb415',1,'Q_DECLARE_METATYPE(QCefQuery): QCefQuery.h'],['../_q_cef_setting_8h.html#a08f5f6912484f50f55dae4c9dedbd2a4',1,'Q_DECLARE_METATYPE(QCefSetting): QCefSetting.h']]],
4 | ['qcefconfig_1',['QCefConfig',['../class_q_cef_config.html#a2a937276cdbf76f77d2bf70a766c6412',1,'QCefConfig::QCefConfig()'],['../class_q_cef_config.html#af90f0b9e087d39a6bd059701ee450516',1,'QCefConfig::QCefConfig(const QCefConfig &other)']]],
5 | ['qcefcontext_2',['QCefContext',['../class_q_cef_context.html#aa2b8af8d2d806ba8b5110e868d314c8c',1,'QCefContext']]],
6 | ['qcefevent_3',['QCefEvent',['../class_q_cef_event.html#ab444dcc856db38dcc679db326ef22bf5',1,'QCefEvent::QCefEvent()'],['../class_q_cef_event.html#a2b2b8bacbfebefe302cd1fab91cd5e8c',1,'QCefEvent::QCefEvent(const QString &name)'],['../class_q_cef_event.html#a357d5cb242977682523e69d501c673d4',1,'QCefEvent::QCefEvent(const QCefEvent &other)']]],
7 | ['qcefquery_4',['QCefQuery',['../class_q_cef_query.html#a2d63bf6b4584e80edbfe4e00fdc8790e',1,'QCefQuery::QCefQuery(QCefViewPrivate *source, const QString &req, const int64_t query)'],['../class_q_cef_query.html#a22d9fddcadce7a6e0259c691634c4d7a',1,'QCefQuery::QCefQuery()']]],
8 | ['qcefsetting_5',['QCefSetting',['../class_q_cef_setting.html#afb8450a162ed9ce3f59a37491147db8d',1,'QCefSetting::QCefSetting()'],['../class_q_cef_setting.html#af650fcab674f8c33a996a2d8cd34eaef',1,'QCefSetting::QCefSetting(const QCefSetting &other)']]],
9 | ['qcefview_6',['QCefView',['../class_q_cef_view.html#a203cdf24f64a5582f7c79e2401e9d8ca',1,'QCefView::QCefView(const QString &url, const QCefSetting *setting, QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())'],['../class_q_cef_view.html#a84f33f3697e39588e9b76d2cd4847892',1,'QCefView::QCefView(QWidget *parent=nullptr, Qt::WindowFlags f=Qt::WindowFlags())']]]
10 | ];
11 |
--------------------------------------------------------------------------------
/docs/search/functions_f.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['receivedbytes_0',['receivedBytes',['../class_q_cef_download_item.html#a5d76f04bb41c5e4edad6d680b01fe63f',1,'QCefDownloadItem']]],
4 | ['remotedebuggingport_1',['remoteDebuggingPort',['../class_q_cef_config.html#aeaa7b37b83ee32a5ec50a1dec11d0c2e',1,'QCefConfig']]],
5 | ['remotefonts_2',['remoteFonts',['../class_q_cef_setting.html#a6b503e82defe4c57a88936fb2cec2509',1,'QCefSetting']]],
6 | ['removecrossoriginwhitelistentry_3',['removeCrossOriginWhitelistEntry',['../class_q_cef_context.html#af04aefeea503031f5a8fbdabf05bc5e8',1,'QCefContext']]],
7 | ['reply_4',['reply',['../class_q_cef_query.html#a9b7df2f2ffaf42431392fcb0a89042be',1,'QCefQuery']]],
8 | ['reportjavascriptresult_5',['reportJavascriptResult',['../class_q_cef_view.html#a9b69938aa6f8352799bee6084bab03e4',1,'QCefView']]],
9 | ['request_6',['request',['../class_q_cef_query.html#a16d137bcc1bf2ef9bc8969ff1bd091e7',1,'QCefQuery']]],
10 | ['response_7',['response',['../class_q_cef_query.html#a663d5945146bebe69a0a3c5448bb9280',1,'QCefQuery']]],
11 | ['responseqcefquery_8',['responseQCefQuery',['../class_q_cef_view.html#afc838dab54d2b083b05f0d98349b50cc',1,'QCefView']]],
12 | ['result_9',['result',['../class_q_cef_query.html#a8c2d78e19628d8066570338d659bc9b2',1,'QCefQuery']]],
13 | ['resume_10',['resume',['../class_q_cef_download_item.html#aa2afc687e69c7c78f6c49e9a41a34823',1,'QCefDownloadItem']]],
14 | ['rootcachepath_11',['rootCachePath',['../class_q_cef_config.html#a5bc459471e82e88326c17220a0e05310',1,'QCefConfig']]]
15 | ];
16 |
--------------------------------------------------------------------------------
/docs/search/mag.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
25 |
--------------------------------------------------------------------------------
/docs/search/mag_d.svg:
--------------------------------------------------------------------------------
1 |
2 |
4 |
25 |
--------------------------------------------------------------------------------
/docs/search/mag_sel.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
32 |
--------------------------------------------------------------------------------
/docs/search/mag_seld.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
5 |
32 |
--------------------------------------------------------------------------------
/docs/search/pages_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['and_20config_0',['Build and Config',['../md_docs_201-_build_and_config.html',1,'']]],
4 | ['apis_1',['Web APIs',['../md_docs_206-_web_a_p_is.html',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/pages_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['build_20and_20config_0',['Build and Config',['../md_docs_201-_build_and_config.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/pages_2.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['config_0',['Build and Config',['../md_docs_201-_build_and_config.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/pages_3.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['deprecated_20list_0',['Deprecated List',['../deprecated.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/pages_4.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['first_20project_0',['First Project',['../md_docs_202-_first_project.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/pages_5.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['interoperability_0',['Interoperability',['../md_docs_204-_interoperability.html',1,'']]],
4 | ['introduction_1',['Introduction',['../index.html',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/pages_6.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['list_0',['Deprecated List',['../deprecated.html',1,'']]],
4 | ['loading_1',['Resource Loading',['../md_docs_203-_resource_loading.html',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/pages_7.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['project_0',['First Project',['../md_docs_202-_first_project.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/pages_8.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['rendering_0',['Rendering',['../md_docs_205-_rendering.html',1,'']]],
4 | ['resource_20loading_1',['Resource Loading',['../md_docs_203-_resource_loading.html',1,'']]]
5 | ];
6 |
--------------------------------------------------------------------------------
/docs/search/pages_9.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['web_20apis_0',['Web APIs',['../md_docs_206-_web_a_p_is.html',1,'']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/searchdata.js:
--------------------------------------------------------------------------------
1 | var indexSectionsWithContent =
2 | {
3 | 0: "01234abcdefghijlmnopqrstuw~",
4 | 1: "q",
5 | 2: "0cq",
6 | 3: "abcdefhijlmnopqrstuw~",
7 | 4: "am",
8 | 5: "cl",
9 | 6: "cl",
10 | 7: "cdiq",
11 | 8: "abcdfilprw"
12 | };
13 |
14 | var indexSectionNames =
15 | {
16 | 0: "all",
17 | 1: "classes",
18 | 2: "files",
19 | 3: "functions",
20 | 4: "variables",
21 | 5: "enums",
22 | 6: "enumvalues",
23 | 7: "defines",
24 | 8: "pages"
25 | };
26 |
27 | var indexSectionLabels =
28 | {
29 | 0: "All",
30 | 1: "Classes",
31 | 2: "Files",
32 | 3: "Functions",
33 | 4: "Variables",
34 | 5: "Enumerations",
35 | 6: "Enumerator",
36 | 7: "Macros",
37 | 8: "Pages"
38 | };
39 |
40 |
--------------------------------------------------------------------------------
/docs/search/variables_0.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['allframeid_0',['AllFrameID',['../class_q_cef_view.html#aa0b341726ea511a8a4c0bf6b603da5f7',1,'QCefView']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/search/variables_1.js:
--------------------------------------------------------------------------------
1 | var searchData=
2 | [
3 | ['mainframeid_0',['MainFrameID',['../class_q_cef_view.html#aecdaec6088be4f77a505e0fae0765625',1,'QCefView']]]
4 | ];
5 |
--------------------------------------------------------------------------------
/docs/splitbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/splitbar.png
--------------------------------------------------------------------------------
/docs/splitbard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/splitbard.png
--------------------------------------------------------------------------------
/docs/sync_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/sync_off.png
--------------------------------------------------------------------------------
/docs/sync_on.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/sync_on.png
--------------------------------------------------------------------------------
/docs/tab_a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_a.png
--------------------------------------------------------------------------------
/docs/tab_ad.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_ad.png
--------------------------------------------------------------------------------
/docs/tab_b.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_b.png
--------------------------------------------------------------------------------
/docs/tab_bd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_bd.png
--------------------------------------------------------------------------------
/docs/tab_h.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_h.png
--------------------------------------------------------------------------------
/docs/tab_hd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_hd.png
--------------------------------------------------------------------------------
/docs/tab_s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_s.png
--------------------------------------------------------------------------------
/docs/tab_sd.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/tab_sd.png
--------------------------------------------------------------------------------
/docs/toggle-alternative-theme.js:
--------------------------------------------------------------------------------
1 |
2 | let original_theme_active = true;
3 |
4 | function toggle_alternative_theme() {
5 | if(original_theme_active) {
6 | document.documentElement.classList.add("alternative")
7 | original_theme_active = false;
8 | } else {
9 | document.documentElement.classList.remove("alternative")
10 | original_theme_active = true;
11 | }
12 | }
--------------------------------------------------------------------------------
/docs/windows-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/docs/windows-demo.png
--------------------------------------------------------------------------------
/example/QCefViewTest/CefViewWidget.h:
--------------------------------------------------------------------------------
1 | #ifndef CUSTOMCEFVIEW_H
2 | #define CUSTOMCEFVIEW_H
3 |
4 | #include
5 |
6 | #include
7 |
8 | ///
9 | /// Represents the customized QCefView
10 | ///
11 | class CefViewWidget : public QCefView
12 | {
13 | Q_OBJECT
14 |
15 | public:
16 | CefViewWidget(const QString url, const QCefSetting* setting, QWidget* parent = 0);
17 |
18 | ~CefViewWidget();
19 |
20 | protected slots:
21 | void onScreenChanged(QScreen* screen);
22 |
23 | void onNativeBrowserWindowCreated(QWindow* window);
24 |
25 | void onDraggableRegionChanged(const QRegion& draggableRegion, const QRegion& nonDraggableRegion);
26 |
27 | protected:
28 | bool onNewPopup(const QCefFrameId& sourceFrameId,
29 | const QString& targetUrl,
30 | QString& targetFrameName,
31 | QCefView::CefWindowOpenDisposition targetDisposition,
32 | QRect& rect,
33 | QCefSetting& settings,
34 | bool& disableJavascriptAccess) override;
35 |
36 | void onNewDownloadItem(const QSharedPointer& item, const QString& suggestedName) override;
37 |
38 | void onUpdateDownloadItem(const QSharedPointer& item) override;
39 |
40 | protected:
41 | void resizeEvent(QResizeEvent* event) override;
42 |
43 | void mousePressEvent(QMouseEvent* event) override;
44 |
45 | private:
46 | void updateMask();
47 |
48 | private:
49 | QWindow* m_pCefWindow = nullptr;
50 |
51 | int m_iCornerRadius = 50;
52 |
53 | QRegion m_draggableRegion;
54 |
55 | QRegion m_nonDraggableRegion;
56 | };
57 |
58 | #endif // CUSTOMCEFVIEW_H
59 |
--------------------------------------------------------------------------------
/example/QCefViewTest/DownloadManager.cpp:
--------------------------------------------------------------------------------
1 | #include "DownloadManager.h"
2 |
3 | #include
4 |
5 | DownloadManager&
6 | DownloadManager::getInstance()
7 | {
8 | static DownloadManager s_instance;
9 | return s_instance;
10 | }
11 |
12 | void
13 | DownloadManager::AddNewDownloadItem(const QSharedPointer& item)
14 | {
15 | qDebug() << "DownloadManager::AddNewDownloadItem:"
16 | << " id: " << item->id() << "\n"
17 | << " name: " << item->suggestedFileName() << "\n"
18 | << " path: " << item->fullPath() << "\n"
19 | << " percent: " << item->percentComplete() << "%, " << item->totalBytes() << "/" << item->receivedBytes()
20 | << "\n"
21 | << " canceled: " << item->isCanceled() << "\n"
22 | << " complete: " << item->isComplete();
23 |
24 | m_mapDownloadingItem[item->id()] = item;
25 | item->start("", true);
26 | }
27 |
28 | void
29 | DownloadManager::UpdateDownloadItem(const QSharedPointer& item)
30 | {
31 | qDebug() << "DownloadManager::UpdateDownloadItem:"
32 | << " id: " << item->id() << "\n"
33 | << " name: " << item->suggestedFileName() << "\n"
34 | << " path: " << item->fullPath() << "\n"
35 | << " percent: " << item->percentComplete() << "%, " << item->totalBytes() << "/" << item->receivedBytes()
36 | << "\n"
37 | << " canceled: " << item->isCanceled() << "\n"
38 | << " complete: " << item->isComplete();
39 |
40 | if (item->isCanceled() || item->isComplete())
41 | m_mapDownloadingItem.remove(item->id());
42 | }
43 |
44 | DownloadManager::DownloadManager() {}
45 |
46 | DownloadManager::~DownloadManager()
47 | {
48 | for (auto& item : m_mapDownloadingItem) {
49 | item->cancel();
50 | }
51 | m_mapDownloadingItem.clear();
52 | }
53 |
--------------------------------------------------------------------------------
/example/QCefViewTest/DownloadManager.h:
--------------------------------------------------------------------------------
1 | #ifndef DOWNLOADMANAGER_H
2 | #define DOWNLOADMANAGER_H
3 | #pragma once
4 |
5 | #include
6 | #include
7 |
8 | #include
9 |
10 | class DownloadManager
11 | {
12 | public:
13 | static DownloadManager& getInstance();
14 |
15 | void AddNewDownloadItem(const QSharedPointer& item);
16 |
17 | void UpdateDownloadItem(const QSharedPointer& item);
18 |
19 | private:
20 | DownloadManager();
21 | ~DownloadManager();
22 |
23 | QMap> m_mapDownloadingItem;
24 | };
25 |
26 | #endif
27 |
--------------------------------------------------------------------------------
/example/QCefViewTest/MainWindow.h:
--------------------------------------------------------------------------------
1 | #ifndef QCEFVIEWTEST_H
2 | #define QCEFVIEWTEST_H
3 |
4 | #include
5 | #include
6 |
7 | #include "ui_MainWindow.h"
8 |
9 | #include "CefViewWidget.h"
10 |
11 | class MainWindow : public QMainWindow
12 | {
13 | Q_OBJECT
14 |
15 | public:
16 | MainWindow(QWidget* parent = 0);
17 | ~MainWindow();
18 |
19 | protected:
20 | void createLeftCefView();
21 | void createRightCefView();
22 | void setupWindow();
23 |
24 | // QCefView slots
25 | protected slots:
26 |
27 | void onInvokeMethod(const QCefBrowserId& browserId,
28 | const QCefFrameId& frameId,
29 | const QString& method,
30 | const QVariantList& arguments);
31 |
32 | void onQCefUrlRequest(const QCefBrowserId& browserId, const QCefFrameId& frameId, const QString& url);
33 |
34 | void onQCefQueryRequest(const QCefBrowserId& browserId, const QCefFrameId& frameId, const QCefQuery& query);
35 |
36 | void onJavascriptResult(const QCefBrowserId& browserId,
37 | const QCefFrameId& frameId,
38 | const QString& context,
39 | const QVariant& result);
40 |
41 | void onLoadingStateChanged(const QCefBrowserId& browserId, bool isLoading, bool canGoBack, bool canGoForward);
42 |
43 | void onLoadStart(const QCefBrowserId& browserId, const QCefFrameId& frameId, bool isMainFrame, int transitionType);
44 |
45 | void onLoadEnd(const QCefBrowserId& browserId, const QCefFrameId& frameId, bool isMainFrame, int httpStatusCode);
46 |
47 | void onLoadError(const QCefBrowserId& browserId,
48 | const QCefFrameId& frameId,
49 | bool isMainFrame,
50 | int errorCode,
51 | const QString& errorMsg,
52 | const QString& failedUrl);
53 |
54 | // ui slots
55 | protected slots:
56 | void onBtnShowDevToolsClicked();
57 |
58 | void onBtnReloadRightViewClicked();
59 |
60 | void onBtnRecreateRightViewClicked();
61 |
62 | void onBtnChangeColorClicked();
63 |
64 | void onBtnSetFocusClicked();
65 |
66 | void onBtnCallJSCodeClicked();
67 |
68 | void onBtnNewBrowserClicked();
69 |
70 | private:
71 | Ui::MainWindow m_ui;
72 |
73 | QCefView* m_pLeftCefViewWidget = nullptr;
74 | QCefView* m_pRightCefViewWidget = nullptr;
75 | };
76 |
77 | #endif // QCEFVIEWTEST_H
78 |
--------------------------------------------------------------------------------
/example/QCefViewTest/QCefViewTest.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 | QCefViewTest Applicatoin
4 |
5 |
6 |
7 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/example/QCefViewTest/mac/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | 6.0
15 | CFBundleName
16 | $(PRODUCT_NAME)
17 | CFBundlePackageType
18 | $(PRODUCT_BUNDLE_PACKAGE_TYPE)
19 | CFBundleShortVersionString
20 | 1.0
21 | CFBundleVersion
22 | 1
23 | LSMinimumSystemVersion
24 | $(MACOSX_DEPLOYMENT_TARGET)
25 | NSHumanReadableCopyright
26 | Copyright © 2022 QCefView. All rights reserved.
27 | NSMainNibFile
28 | MainMenu
29 | NSPrincipalClass
30 | DemoApplication
31 | NSSupportsAutomaticTermination
32 |
33 | NSSupportsSuddenTermination
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/example/QCefViewTest/mac/MainWindow_mac.mm:
--------------------------------------------------------------------------------
1 | #include "MainWindow.h"
2 | #include
3 |
4 | void
5 | MainWindow::setupWindow() {
6 | // [NSApp setAppearance:[NSAppearance appearanceNamed:NSAppearanceNameAqua]];
7 |
8 | // id hwnd = (id)this->winId();
9 | // NSWindow* window = [hwnd window];
10 | // window.titlebarAppearsTransparent = true;
11 | // [window setTitle: @""];
12 | // window.movableByWindowBackground = true;
13 | // window.styleMask |= NSWindowStyleMaskFullSizeContentView;
14 | }
15 |
--------------------------------------------------------------------------------
/example/QCefViewTest/qcefviewtest.qrc:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/example/QCefViewTest/websrc/right.in.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Web Area
5 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/generate-linux-x86.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BUILD_PROJECT=0
4 |
5 | BUILD_DIR="$(pwd)/.build/linux.x86"
6 |
7 | while getopts bi flag
8 | do
9 | case "${flag}" in
10 | b) BUILD_PROJECT=1;;
11 | esac
12 | done
13 |
14 | echo ============== Config project ==============
15 | cmake -G "Unix Makefiles" -S . -B "${BUILD_DIR}" -DCMAKE_BUILD_TYPE=Release -DPROJECT_ARCH=x86 -DBUILD_DEMO=ON -DUSE_SANDBOX=ON -DCMAKE_INSTALL_PREFIX:PATH="$(pwd)/out/linux.x86" $*
16 |
17 | if [ ${BUILD_PROJECT} -eq 1 ]
18 | then
19 | echo ============== Build project ==============
20 | cmake --build "${BUILD_DIR}"
21 | fi
--------------------------------------------------------------------------------
/generate-linux-x86_64.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BUILD_PROJECT=0
4 |
5 | BUILD_DIR="$(pwd)/.build/linux.x86_64"
6 |
7 | while getopts bi flag
8 | do
9 | case "${flag}" in
10 | b) BUILD_PROJECT=1;;
11 | esac
12 | done
13 |
14 | echo ============== Config project ==============
15 | cmake -G "Unix Makefiles" -S . -B "${BUILD_DIR}" -DCMAKE_BUILD_TYPE=Release -DPROJECT_ARCH=x86_64 -DBUILD_DEMO=ON -DUSE_SANDBOX=ON -DCMAKE_INSTALL_PREFIX:PATH="$(pwd)/out/linux.x86_64" $*
16 |
17 | if [ ${BUILD_PROJECT} -eq 1 ]
18 | then
19 | echo ============== Build project ==============
20 | cmake --build "${BUILD_DIR}"
21 | fi
--------------------------------------------------------------------------------
/generate-mac-arm64.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BUILD_PROJECT=0
4 |
5 | BUILD_DIR="$(pwd)/.build/macos.arm64"
6 |
7 | while getopts bi flag
8 | do
9 | case "${flag}" in
10 | b) BUILD_PROJECT=1;;
11 | esac
12 | done
13 |
14 | echo ============== Config project ==============
15 | cmake -G "Xcode" -S . -B "${BUILD_DIR}" -DPROJECT_ARCH=arm64 -DBUILD_DEMO=ON -DUSE_SANDBOX=ON -DCMAKE_INSTALL_PREFIX:PATH="$(pwd)/out/macos.arm64" $*
16 |
17 | if [ ${BUILD_PROJECT} -eq 1 ]
18 | then
19 | echo ============== Build project ==============
20 | cmake --build "${BUILD_DIR}"
21 | fi
--------------------------------------------------------------------------------
/generate-mac-x86_64.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | BUILD_PROJECT=0
4 |
5 | BUILD_DIR="$(pwd)/.build/macos.x86_64"
6 |
7 | while getopts bi flag
8 | do
9 | case "${flag}" in
10 | b) BUILD_PROJECT=1;;
11 | esac
12 | done
13 |
14 | echo ============== Config project ==============
15 | cmake -G "Xcode" -S . -B "${BUILD_DIR}" -DPROJECT_ARCH=x86_64 -DBUILD_DEMO=ON -DUSE_SANDBOX=ON -DCMAKE_INSTALL_PREFIX:PATH="$(pwd)/out/macos.x86_64" $*
16 |
17 | if [ ${BUILD_PROJECT} -eq 1 ]
18 | then
19 | echo ============== Build project ==============
20 | cmake --build "${BUILD_DIR}"
21 | fi
--------------------------------------------------------------------------------
/generate-win-arm64.bat:
--------------------------------------------------------------------------------
1 | cmake -S . ^
2 | -B .build/windows.arm64 ^
3 | -A ARM64 ^
4 | -DPROJECT_ARCH=arm64 ^
5 | -DBUILD_DEMO=ON ^
6 | -DCMAKE_INSTALL_PREFIX:PATH="%cd%/out/windows.arm64" ^
7 | %*
--------------------------------------------------------------------------------
/generate-win-x86.bat:
--------------------------------------------------------------------------------
1 | cmake -S . ^
2 | -B .build/windows.x86 ^
3 | -A Win32 ^
4 | -DPROJECT_ARCH=x86 ^
5 | -DBUILD_DEMO=ON ^
6 | -DCMAKE_INSTALL_PREFIX:PATH="%cd%/out/windows.x86" ^
7 | %*
--------------------------------------------------------------------------------
/generate-win-x86_64.bat:
--------------------------------------------------------------------------------
1 | cmake -S . ^
2 | -B .build/windows.x86_64 ^
3 | -A x64 ^
4 | -DPROJECT_ARCH=x86_64 ^
5 | -DBUILD_DEMO=ON ^
6 | -DCMAKE_INSTALL_PREFIX:PATH="%cd%/out/windows.x86_64" ^
7 | %*
--------------------------------------------------------------------------------
/include/CefVersion.h:
--------------------------------------------------------------------------------
1 | //
2 | // CefVersion.h
3 | // CefViewCore
4 | //
5 | // Created by Sheen Tian on 2025/1/19.
6 | // This file was generated during CMake configuring.
7 | // Do not edit this file directly by manual.
8 | // Edit the CefVersion.h.in and then re-config project with CMake.
9 | //
10 |
11 | #ifndef CefVersion_h
12 | #define CefVersion_h
13 | #pragma once
14 |
15 | // clang-format off
16 | #define CEF_VERSION "126.2.18+g3647d39+chromium-126.0.6478.183"
17 | #define CEF_VERSION_MAJOR 126
18 | #define CEF_VERSION_MINOR 2
19 | #define CEF_VERSION_PATCH 18
20 | #define CEF_COMMIT_NUMBER 3019
21 | #define CEF_COMMIT_HASH "3647d39e700c215bd78172c5964eb1c550950f0f"
22 | // clang-format on
23 |
24 | #endif // CefVersion
25 |
--------------------------------------------------------------------------------
/include/QCefEvent.h:
--------------------------------------------------------------------------------
1 | /*
2 | * File: QCefEvent.h
3 | * Project: QCefView
4 | * Created: 29th March 2016
5 | * Author: Sheen
6 | * Source: https://github.com/cefview/qcefview
7 | * Docs: https://cefview.github.io/QCefView/
8 | */
9 | #ifndef QCEFEVENT_H
10 | #define QCEFEVENT_H
11 | #pragma once
12 | #include
13 |
14 | #pragma region qt_headers
15 | #include
16 | #include
17 | #include
18 | #pragma endregion
19 |
20 | class QCefEventPrivate;
21 |
22 | ///
23 | /// Represents the event sent from native context(C/C++ code) to the web context(javascript)
24 | ///
25 | class QCEFVIEW_EXPORT QCefEvent
26 | {
27 | Q_DECLARE_PRIVATE(QCefEvent)
28 | QScopedPointer d_ptr;
29 |
30 | friend class QCefView;
31 |
32 | public:
33 | ///
34 | /// Constructs an event instance
35 | ///
36 | QCefEvent();
37 |
38 | ///
39 | /// Constructs an event instance with name
40 | ///
41 | /// The event name
42 | QCefEvent(const QString& name);
43 |
44 | ///
45 | /// Constructs an event instance from existing one
46 | ///
47 | /// The other event instance
48 | QCefEvent(const QCefEvent& other);
49 |
50 | ///
51 | /// Assigns an existing event instance to current
52 | ///
53 | /// The other event instance
54 | QCefEvent& operator=(const QCefEvent& other);
55 |
56 | ///
57 | /// Destructs the event instance
58 | ///
59 | ~QCefEvent();
60 |
61 | ///
62 | /// Sets the event name
63 | ///
64 | /// The name to be set
65 | void setEventName(const QString& name);
66 |
67 | ///
68 | /// Gets the event name
69 | ///
70 | /// The event name
71 | const QString eventName() const;
72 |
73 | ///
74 | /// Sets the argument list
75 | ///
76 | /// The argument list
77 | void setArguments(const QVariantList& args);
78 |
79 | ///
80 | /// Gets the argument list
81 | ///
82 | /// The argument list
83 | QVariantList& arguments();
84 | };
85 |
86 | Q_DECLARE_METATYPE(QCefEvent);
87 |
88 | #endif // QCEFEVENT_H
89 |
--------------------------------------------------------------------------------
/include/QCefView_global.h:
--------------------------------------------------------------------------------
1 | /*
2 | * File: QCefView_global.h
3 | * Project: QCefView
4 | * Created: 29th March 2016
5 | * Author: Sheen
6 | * Source: https://github.com/cefview/qcefview
7 | * Docs: https://cefview.github.io/QCefView/
8 | */
9 | #ifndef QCEFEVIEW_GLOBAL_H
10 | #define QCEFEVIEW_GLOBAL_H
11 | #pragma once
12 |
13 | // clang-format off
14 | #pragma region qt_headers
15 | #include
16 | #include
17 | #pragma endregion
18 |
19 | #ifdef QCEFVIEW_STATIC
20 | // Static library, no need export
21 | #define QCEFVIEW_EXPORT
22 | #else
23 | // Dynamic library
24 | #ifdef QCEFVIEW_LIB
25 | // Build QCefView project, export API
26 | #define QCEFVIEW_EXPORT Q_DECL_EXPORT
27 | #else
28 | // Referenced by other project, import API
29 | #define QCEFVIEW_EXPORT Q_DECL_IMPORT
30 | #if _WIN32
31 | #pragma comment(lib, "QCefView.lib")
32 | #endif
33 | #endif
34 | #endif
35 |
36 | // CEF version numbers
37 | #include
38 |
39 | #define DEPRECATED_SINCE_CEF_VERSION(major, minor, patch) /* @deprecated Since CEF major . minor . patch */
40 |
41 | #define DEPRECATED_CEF_API_WARNING(major, minor, patch) \
42 | qWarning() << __FUNCTION__ << " was deprecated since CEF version:" \
43 | << major << "." << minor << "." << patch << ". " \
44 | << "Current CEF version: " \
45 | << CEF_VERSION_MAJOR << "." << CEF_VERSION_MINOR << "." << CEF_VERSION_PATCH << ".";
46 |
47 |
48 | #define INTRODUCED_SINCE_CEF_VERSION(major, minor, patch)
49 |
50 | #define INTRODUCED_CEF_API_WARNING(major, minor, patch) \
51 | qWarning() << __FUNCTION__ << " was introduced since CEF version:" \
52 | << major << "." << minor << "." << patch << ". " \
53 | << "Current CEF version: " \
54 | << CEF_VERSION_MAJOR << "." << CEF_VERSION_MINOR << "." << CEF_VERSION_PATCH << ".";
55 |
56 | // clang-format on
57 |
58 | #endif // QCEFEVIEW_GLOBAL_H
59 |
--------------------------------------------------------------------------------
/scripts/doxygen/docs/06-WebAPIs.md:
--------------------------------------------------------------------------------
1 | # Web APIs
2 | [TOC]
3 |
4 | QCefView inserts JavaScript bridge object and methods to `window` object for all browsers frames, with these bridge object you can perform communication between native and web context at anytime
5 |
6 | ## window.CefViewClient {#CefViewClient}
7 | This is main bridge object injected to all browser and frames by QCefView. And the object name can be specified by `QCefConfig::setBridgeObjectName`.
8 |
9 | ### addEventListener(name, listener) {#CefViewClient_addEventListener}
10 | Adds a listener for the event with specified name
11 |
12 | #### Parameters
13 | * `name` The event name
14 | * `listener` The listener callback function
15 |
16 | ### removeEventListener(name, listener) {#CefViewClient_removeEventListener}
17 | Removes the listener for the event with specified name
18 |
19 | #### Parameters
20 | * `name` The event name
21 | * `listener` The listener callback function
22 |
23 | ### invoke(name, ...args) {#CefViewClient_invoke}
24 | Invokes a native method with the specified name and arguments
25 | > [!caution]
26 | > The legacy `invokeMethod(name, ...args)` was deprecated by new method: `invoke(name, ...args)`.(renamed)
27 |
28 | #### Parameters
29 | * `name` The method name
30 | * `..args` The arguments for the method
31 |
32 |
33 | ## window.cefViewQuery {#cefViewQuery}
34 | Sends a cef query request to the native context
35 | > [!caution]
36 | > The legacy `window.CefViewQuery` was deprecated by new method: `window.cefViewQuery`. (uncapitalized)
37 |
38 | ### Parameters
39 | * `query` The query object
40 |
41 |
42 | #### Returns
43 | * The query id
44 |
45 | ## window.cefViewQueryCancel {#cefViewQueryCancel}
46 | Cancels the query request with the specified id
47 | > [!caution]
48 | > The legacy `window.CefViewQueryCancel` was deprecated by new method: `window.cefViewQueryCancel`. (uncapitalized)
49 |
50 | #### Parameters
51 | * `id` The query id
52 |
53 |
54 |
55 |
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/QCefViewTest-Windows-Hardware-Rendering-FPS1000-Limit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/QCefViewTest-Windows-Hardware-Rendering-FPS1000-Limit.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/QCefViewTest-Windows-Software-Rendering-FPS1000-Limit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/QCefViewTest-Windows-Software-Rendering-FPS1000-Limit.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/QCefViewTest-macOS-Hardware-Rendering-FPS1000-Limit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/QCefViewTest-macOS-Hardware-Rendering-FPS1000-Limit.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/QCefViewTest-macOS-Software-Rendering-FPS1000-Limit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/QCefViewTest-macOS-Software-Rendering-FPS1000-Limit.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/add-event-listener-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/add-event-listener-01.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/add-event-listener-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/add-event-listener-02.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/cefview-query-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/cefview-query-01.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/cefview-query-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/cefview-query-02.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/first-project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/first-project.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/invoke-method-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/invoke-method-01.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/guide/invoke-method-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/guide/invoke-method-02.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/linux-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/linux-demo.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/macOS-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/macOS-demo.png
--------------------------------------------------------------------------------
/scripts/doxygen/docs/img/windows-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CefView/QCefView/3c0bfe0a693c2d14b4a442958f497a2f2a2b4af3/scripts/doxygen/docs/img/windows-demo.png
--------------------------------------------------------------------------------
/scripts/doxygen/gen-doc.bat:
--------------------------------------------------------------------------------
1 | @REM genarete xml documentaion
2 | doxygen
3 |
--------------------------------------------------------------------------------
/scripts/doxygen/theme/css/custom-alternative.css:
--------------------------------------------------------------------------------
1 | html.alternative {
2 | /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */
3 | --primary-color: #AF7FE4;
4 | --primary-dark-color: #9270E4;
5 | --primary-light-color: #7aabd6;
6 | --primary-lighter-color: #cae1f1;
7 | --primary-lightest-color: #e9f1f8;
8 |
9 | /* page base colors */
10 | --page-background-color: white;
11 | --page-foreground-color: #2c3e50;
12 | --page-secondary-foreground-color: #67727e;
13 |
14 |
15 | --border-radius-large: 22px;
16 | --border-radius-small: 9px;
17 | --border-radius-medium: 14px;
18 | --spacing-small: 8px;
19 | --spacing-medium: 14px;
20 | --spacing-large: 19px;
21 |
22 | --top-height: 125px;
23 |
24 | --side-nav-background: #324067;
25 | --side-nav-foreground: #F1FDFF;
26 | --header-foreground: var(--side-nav-foreground);
27 | --searchbar-background: var(--side-nav-foreground);
28 | --searchbar-border-radius: var(--border-radius-medium);
29 | --header-background: var(--side-nav-background);
30 | --header-foreground: var(--side-nav-foreground);
31 |
32 | --toc-background: rgb(243, 240, 252);
33 | --toc-foreground: var(--page-foreground-color);
34 | }
35 |
36 | html.alternative.dark-mode {
37 | color-scheme: dark;
38 |
39 | --primary-color: #AF7FE4;
40 | --primary-dark-color: #9270E4;
41 | --primary-light-color: #4779ac;
42 | --primary-lighter-color: #191e21;
43 | --primary-lightest-color: #191a1c;
44 |
45 | --page-background-color: #1C1D1F;
46 | --page-foreground-color: #d2dbde;
47 | --page-secondary-foreground-color: #859399;
48 | --separator-color: #3a3246;
49 | --side-nav-background: #171D32;
50 | --side-nav-foreground: #F1FDFF;
51 | --toc-background: #20142C;
52 | --searchbar-background: var(--page-background-color);
53 |
54 | }
--------------------------------------------------------------------------------
/scripts/doxygen/theme/css/custom.css:
--------------------------------------------------------------------------------
1 | .github-corner svg {
2 | fill: var(--primary-light-color);
3 | color: var(--page-background-color);
4 | width: 72px;
5 | height: 72px;
6 | }
7 |
8 | @media screen and (max-width: 767px) {
9 | .github-corner svg {
10 | width: 50px;
11 | height: 50px;
12 | }
13 | #projectnumber {
14 | margin-right: 22px;
15 | }
16 | }
17 |
18 | .alter-theme-button {
19 | display: inline-block;
20 | cursor: pointer;
21 | background: var(--primary-color);
22 | color: var(--page-background-color) !important;
23 | border-radius: var(--border-radius-medium);
24 | padding: var(--spacing-small) var(--spacing-medium);
25 | text-decoration: none;
26 | }
27 |
28 | .alter-theme-button:hover {
29 | background: var(--primary-dark-color);
30 | }
31 |
32 | html.dark-mode .darkmode_inverted_image img, /* < doxygen 1.9.3 */
33 | html.dark-mode .darkmode_inverted_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ {
34 | filter: brightness(89%) hue-rotate(180deg) invert();
35 | }
36 |
37 | .bordered_image {
38 | border-radius: var(--border-radius-small);
39 | border: 1px solid var(--separator-color);
40 | display: inline-block;
41 | overflow: hidden;
42 | }
43 |
44 | html.dark-mode .bordered_image img, /* < doxygen 1.9.3 */
45 | html.dark-mode .bordered_image object[type="image/svg+xml"] /* doxygen 1.9.3 */ {
46 | border-radius: var(--border-radius-small);
47 | }
48 |
49 | .title_screenshot {
50 | filter: drop-shadow(0px 3px 10px rgba(0,0,0,0.22));
51 | max-width: 500px;
52 | margin: var(--spacing-large) 0;
53 | }
54 |
55 | .title_screenshot .caption {
56 | display: none;
57 | }
58 |
--------------------------------------------------------------------------------
/scripts/doxygen/theme/css/doxygen-awesome-sidebar-only-darkmode-toggle.css:
--------------------------------------------------------------------------------
1 |
2 | /**
3 |
4 | Doxygen Awesome
5 | https://github.com/jothepro/doxygen-awesome-css
6 |
7 | MIT License
8 |
9 | Copyright (c) 2021 - 2023 jothepro
10 |
11 | Permission is hereby granted, free of charge, to any person obtaining a copy
12 | of this software and associated documentation files (the "Software"), to deal
13 | in the Software without restriction, including without limitation the rights
14 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15 | copies of the Software, and to permit persons to whom the Software is
16 | furnished to do so, subject to the following conditions:
17 |
18 | The above copyright notice and this permission notice shall be included in all
19 | copies or substantial portions of the Software.
20 |
21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
27 | SOFTWARE.
28 |
29 | */
30 |
31 | @media screen and (min-width: 768px) {
32 |
33 | #MSearchBox {
34 | width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - var(--searchbar-height) - 1px);
35 | }
36 |
37 | #MSearchField {
38 | width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 66px - var(--searchbar-height));
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/scripts/doxygen/theme/js/doxygen-awesome-paragraph-link.js:
--------------------------------------------------------------------------------
1 | /**
2 |
3 | Doxygen Awesome
4 | https://github.com/jothepro/doxygen-awesome-css
5 |
6 | MIT License
7 |
8 | Copyright (c) 2022 - 2023 jothepro
9 |
10 | Permission is hereby granted, free of charge, to any person obtaining a copy
11 | of this software and associated documentation files (the "Software"), to deal
12 | in the Software without restriction, including without limitation the rights
13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14 | copies of the Software, and to permit persons to whom the Software is
15 | furnished to do so, subject to the following conditions:
16 |
17 | The above copyright notice and this permission notice shall be included in all
18 | copies or substantial portions of the Software.
19 |
20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26 | SOFTWARE.
27 |
28 | */
29 |
30 | class DoxygenAwesomeParagraphLink {
31 | // Icon from https://fonts.google.com/icons
32 | // Licensed under the Apache 2.0 license:
33 | // https://www.apache.org/licenses/LICENSE-2.0.html
34 | static icon = ``
35 | static title = "Permanent Link"
36 | static init() {
37 | $(function() {
38 | $(document).ready(function() {
39 | document.querySelectorAll(".contents a.anchor[id], .contents .groupheader > a[id]").forEach((node) => {
40 | let anchorlink = document.createElement("a")
41 | anchorlink.setAttribute("href", `#${node.getAttribute("id")}`)
42 | anchorlink.setAttribute("title", DoxygenAwesomeParagraphLink.title)
43 | anchorlink.classList.add("anchorlink")
44 | node.classList.add("anchor")
45 | anchorlink.innerHTML = DoxygenAwesomeParagraphLink.icon
46 | node.parentElement.appendChild(anchorlink)
47 | })
48 | })
49 | })
50 | }
51 | }
52 |
--------------------------------------------------------------------------------
/scripts/doxygen/theme/js/toggle-alternative-theme.js:
--------------------------------------------------------------------------------
1 |
2 | let original_theme_active = true;
3 |
4 | function toggle_alternative_theme() {
5 | if(original_theme_active) {
6 | document.documentElement.classList.add("alternative")
7 | original_theme_active = false;
8 | } else {
9 | document.documentElement.classList.remove("alternative")
10 | original_theme_active = true;
11 | }
12 | }
--------------------------------------------------------------------------------
/src/QCefEvent.cpp:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #pragma region cef_headers
4 | #include
5 | #pragma endregion
6 |
7 | #include "details/QCefEventPrivate.h"
8 | #include "details/utils/CommonUtils.h"
9 |
10 | REGISTER_METATYPE(QCefEvent);
11 |
12 | QCefEvent::QCefEvent()
13 | : d_ptr(new QCefEventPrivate)
14 | {
15 | }
16 |
17 | QCefEvent::QCefEvent(const QString& name)
18 | : QCefEvent()
19 | {
20 | setEventName(name);
21 | }
22 |
23 | QCefEvent::QCefEvent(const QCefEvent& other)
24 | : QCefEvent()
25 | {
26 | *d_ptr = *(other.d_ptr);
27 | }
28 |
29 | QCefEvent&
30 | QCefEvent::operator=(const QCefEvent& other)
31 | {
32 | *d_ptr = *(other.d_ptr);
33 | return *this;
34 | }
35 |
36 | QCefEvent::~QCefEvent() {}
37 |
38 | void
39 | QCefEvent::setEventName(const QString& name)
40 | {
41 | Q_D(QCefEvent);
42 | d->name = name;
43 | }
44 |
45 | const QString
46 | QCefEvent::eventName() const
47 | {
48 | Q_D(const QCefEvent);
49 | return d->name;
50 | }
51 |
52 | void
53 | QCefEvent::setArguments(const QVariantList& args)
54 | {
55 | Q_D(QCefEvent);
56 | d->args = args;
57 | }
58 |
59 | QVariantList&
60 | QCefEvent::arguments()
61 | {
62 | Q_D(QCefEvent);
63 | return d->args;
64 | }
65 |
--------------------------------------------------------------------------------
/src/QCefQuery.cpp:
--------------------------------------------------------------------------------
1 | #include
2 |
3 | #pragma region cef_headers
4 | #include
5 | #pragma endregion
6 |
7 | #include
8 |
9 | #include "details/QCefQueryPrivate.h"
10 | #include "details/utils/CommonUtils.h"
11 |
12 | REGISTER_METATYPE(QCefQuery);
13 |
14 | QCefQuery::QCefQuery(QCefViewPrivate* source, const QString& req, const int64_t query)
15 | : d_ptr(new QCefQueryPrivate)
16 | {
17 | d_ptr->source_ = source;
18 | d_ptr->id_ = query;
19 | d_ptr->request_ = req;
20 | }
21 |
22 | void
23 | QCefQuery::markAsReplied() const
24 | {
25 | d_ptr->replyed_ = true;
26 | }
27 |
28 | QCefQuery::QCefQuery()
29 | : d_ptr(new QCefQueryPrivate)
30 | {
31 | }
32 |
33 | QCefQuery::~QCefQuery()
34 | {
35 | d_ptr.reset();
36 | }
37 |
38 | const QString
39 | QCefQuery::request() const
40 | {
41 | Q_D(const QCefQuery);
42 | return d->request_;
43 | }
44 |
45 | const qint64
46 | QCefQuery::id() const
47 | {
48 | Q_D(const QCefQuery);
49 | return d->id_;
50 | }
51 |
52 | const QString
53 | QCefQuery::response() const
54 | {
55 | Q_D(const QCefQuery);
56 | return d->response_;
57 | }
58 |
59 | const bool
60 | QCefQuery::result() const
61 | {
62 | Q_D(const QCefQuery);
63 | return d->restult_;
64 | }
65 |
66 | const int
67 | QCefQuery::error() const
68 | {
69 | Q_D(const QCefQuery);
70 | return d->error_;
71 | }
72 |
73 | void
74 | QCefQuery::setResponseResult(bool success, const QString& response, int error /*= 0*/) const
75 | {
76 | d_ptr->restult_ = success;
77 | d_ptr->response_ = response;
78 | d_ptr->error_ = error;
79 | }
80 |
81 | void
82 | QCefQuery::reply(bool success, const QString& response, int error /*= 0*/) const
83 | {
84 | if (d_ptr->source_) {
85 | d_ptr->restult_ = success;
86 | d_ptr->response_ = response;
87 | d_ptr->error_ = error;
88 | d_ptr->source_->responseQCefQuery(*this);
89 | }
90 | }
91 |
--------------------------------------------------------------------------------
/src/QCefView_global.h.in:
--------------------------------------------------------------------------------
1 | /*
2 | * File: QCefView_global.h
3 | * Project: QCefView
4 | * Created: 29th March 2016
5 | * Author: Sheen
6 | * Source: https://github.com/cefview/qcefview
7 | * Docs: https://cefview.github.io/QCefView/
8 | */
9 | #ifndef QCEFEVIEW_GLOBAL_H
10 | #define QCEFEVIEW_GLOBAL_H
11 | #pragma once
12 |
13 | // clang-format off
14 | #pragma region qt_headers
15 | #include
16 | #include
17 | #pragma endregion
18 |
19 | #ifdef QCEFVIEW_STATIC
20 | // Static library, no need export
21 | #define QCEFVIEW_EXPORT
22 | #else
23 | // Dynamic library
24 | #ifdef QCEFVIEW_LIB
25 | // Build QCefView project, export API
26 | #define QCEFVIEW_EXPORT Q_DECL_EXPORT
27 | #else
28 | // Referenced by other project, import API
29 | #define QCEFVIEW_EXPORT Q_DECL_IMPORT
30 | #if _WIN32
31 | #pragma comment(lib, "QCefView.lib")
32 | #endif
33 | #endif
34 | #endif
35 |
36 | // CEF version numbers
37 | #define CEF_VERSION_MAJOR @CEF_VERSION_MAJOR@
38 | #define CEF_VERSION_MINOR @CEF_VERSION_MINOR@
39 | #define CEF_VERSION_PATCH @CEF_VERSION_PATCH@
40 |
41 | // clang-format on
42 |
43 | #endif // QCEFEVIEW_GLOBAL_H
44 |
--------------------------------------------------------------------------------
/src/details/CCefAppDelegate.cpp:
--------------------------------------------------------------------------------
1 | #include "CCefAppDelegate.h"
2 |
3 | #include
4 |
5 | #include "QCefContextPrivate.h"
6 |
7 | CCefAppDelegate::CCefAppDelegate(QCefContextPrivate* context, CommandLineArgs args)
8 | : pContext_(context)
9 | , commandLineArgs_(args)
10 | {
11 | }
12 |
13 | CCefAppDelegate::~CCefAppDelegate()
14 | {
15 | qDebug() << "CCefAppDelegate is being destructed";
16 | }
17 |
18 | void
19 | CCefAppDelegate::onBeforeCommandLineProcessing(const CefString& process_type, CefRefPtr command_line)
20 | {
21 | for (auto& kv : commandLineArgs_) {
22 | if (!kv.first.empty()) {
23 | if (!kv.second.empty())
24 | command_line->AppendSwitchWithValue(kv.first, kv.second);
25 | else
26 | command_line->AppendSwitch(kv.first);
27 | }
28 | }
29 | }
30 |
31 | void
32 | CCefAppDelegate::onBeforeChildProcessLaunch(CefRefPtr command_line)
33 | {
34 | for (auto& kv : commandLineArgs_) {
35 | if (!kv.first.empty()) {
36 | if (!kv.second.empty())
37 | command_line->AppendSwitchWithValue(kv.first, kv.second);
38 | else
39 | command_line->AppendSwitch(kv.first);
40 | }
41 | }
42 | }
43 |
44 | void
45 | CCefAppDelegate::onScheduleMessageLoopWork(int64_t delay_ms)
46 | {
47 | if (pContext_) {
48 | pContext_->scheduleCefLoopWork(delay_ms);
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/src/details/CCefAppDelegate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #include
3 | #include
4 |
5 | #include
6 |
7 | class QCefContextPrivate;
8 |
9 | class CCefAppDelegate : public CefViewBrowserAppDelegateInterface
10 | {
11 | typedef std::unordered_map CommandLineArgs;
12 |
13 | public:
14 | CCefAppDelegate(QCefContextPrivate* context, CommandLineArgs args);
15 |
16 | ~CCefAppDelegate();
17 |
18 | virtual void onBeforeCommandLineProcessing(const CefString& process_type,
19 | CefRefPtr command_line) override;
20 |
21 | virtual void onBeforeChildProcessLaunch(CefRefPtr command_line) override;
22 |
23 | void onScheduleMessageLoopWork(int64_t delay_ms) override;
24 |
25 | private:
26 | QCefContextPrivate* pContext_;
27 |
28 | CommandLineArgs commandLineArgs_;
29 | };
30 |
--------------------------------------------------------------------------------
/src/details/QCefConfigPrivate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region stl_headers
4 | #include
5 | #include
6 | #include
7 | #pragma endregion
8 |
9 | #pragma region cef_headers
10 | #include
11 | #pragma endregion
12 |
13 | #pragma region qt_headers
14 | #include
15 | #pragma endregion
16 |
17 | #include
18 |
19 | class QCefConfigPrivate
20 | {
21 | typedef std::unordered_map ArgsMap;
22 |
23 | public:
24 | explicit QCefConfigPrivate();
25 |
26 | static void CopyToCefSettings(const QCefConfig* config, CefSettings* settings);
27 |
28 | static ArgsMap& GetCommandLineArgs(const QCefConfig* config);
29 |
30 | public:
31 | std::string locale_;
32 | std::string userAgent_;
33 | std::string cachePath_;
34 |
35 | #if CEF_VERSION_MAJOR < 115
36 | std::string userDataPath_;
37 | #else
38 | std::string rootCachePath_;
39 | #endif
40 |
41 | std::string bridgeObjectName_;
42 | std::string builtinSchemeName_;
43 | std::string acceptLanguageList_;
44 |
45 | #if defined(Q_OS_WINDOWS) || defined(Q_OS_LINUX)
46 | std::string localesDirectoryPath_;
47 | std::string browserSubProcessPath_;
48 | std::string resourceDirectoryPath_;
49 | #endif
50 |
51 | int logLevel_ = LOGSEVERITY_DEFAULT;
52 |
53 | ///
54 | /// /* bool */
55 | /// Enable OSR mode by default
56 | ///
57 | QVariant windowlessRenderingEnabled_ = true;
58 |
59 | ///
60 | /// /* bool */
61 | /// Enable standalone message loop (bool)
62 | ///
63 | #if defined(Q_OS_MACOS)
64 | QVariant standaloneMessgeLoopEnabled_ = false;
65 | #else
66 | QVariant standaloneMessgeLoopEnabled_ = true;
67 | #endif
68 |
69 | ///
70 | /// /* bool */
71 | /// Disable sandbox (enabled by default) (bool)
72 | ///
73 | #if defined(CEF_USE_SANDBOX)
74 | QVariant sandboxDisabled_ = false;
75 | #else
76 | QVariant sandboxDisabled_ = true;
77 | #endif
78 |
79 | ///
80 | /// /* bool */
81 | /// Disable command line pass through (enabled by default) (bool)
82 | ///
83 | QVariant commandLinePassthroughDisabled_ = false;
84 |
85 | ///
86 | /// /* bool */
87 | ///
88 | ///
89 | QVariant persistSessionCookies_;
90 |
91 | #if CEF_VERSION_MAJOR < 128
92 | ///
93 | /// /* bool */
94 | ///
95 | ///
96 | QVariant persistUserPreferences_;
97 | #endif
98 |
99 | ///
100 | /// /* int */
101 | ///
102 | ///
103 | QVariant remoteDebuggingport_;
104 |
105 | ///
106 | /// /* QColor */
107 | ///
108 | ///
109 | QVariant backgroundColor_;
110 |
111 | ///
112 | ///
113 | ///
114 | ArgsMap commandLineArgs_;
115 | };
116 |
--------------------------------------------------------------------------------
/src/details/QCefDownloadItemPrivate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include
4 | #include
5 | #include
6 | #include
7 |
8 | #include
9 |
10 | #include "CCefClientDelegate.h"
11 |
12 | class QCefDownloadItem;
13 |
14 | class QCefDownloadItemPrivate
15 | {
16 | public:
17 | CCefClientDelegate::WeakPtr handler;
18 | bool isStarted = false;
19 |
20 | quint32 id = 0;
21 |
22 | bool isInProgress = false;
23 | bool isComplete = false;
24 | bool isCanceled = false;
25 |
26 | int percentComplete = 0;
27 | qint64 currentSpeed = 0;
28 | qint64 totalBytes = 0;
29 | qint64 receivedBytes = 0;
30 |
31 | QDateTime startTime;
32 | QDateTime endTime;
33 |
34 | QString fullPath;
35 | QString url;
36 | QString originalUrl;
37 | QString suggestedFileName;
38 | QString contentDisposition;
39 | QString mimeType;
40 |
41 | CefRefPtr beforeDownloadCallback;
42 | CefRefPtr downloadItemCallback;
43 |
44 | public:
45 | static QSharedPointer create(CCefClientDelegate::RefPtr handler);
46 |
47 | static void setSuggestedName(QCefDownloadItem* item, const QString& suggestedFileName);
48 |
49 | static void update(QCefDownloadItem* item, CefDownloadItem& cefItem);
50 |
51 | static void setBeforeDownloadCallback(QCefDownloadItem* item,
52 | CefRefPtr beforeDownloadCallback);
53 |
54 | static void setDownloadItemCallback(QCefDownloadItem* item, CefRefPtr downloadItemCallback);
55 |
56 | static void destroy(QCefDownloadItem* item);
57 | };
58 |
--------------------------------------------------------------------------------
/src/details/QCefEventPrivate.cpp:
--------------------------------------------------------------------------------
1 | #include "QCefEventPrivate.h"
2 |
3 | QCefEventPrivate::QCefEventPrivate() {}
4 |
5 | QCefEventPrivate::~QCefEventPrivate() {}
6 |
--------------------------------------------------------------------------------
/src/details/QCefEventPrivate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #include
6 | #pragma endregion
7 |
8 | class QCefEventPrivate
9 | {
10 | public:
11 | QCefEventPrivate();
12 |
13 | ~QCefEventPrivate();
14 |
15 | QString name;
16 | QVariantList args;
17 | };
18 |
--------------------------------------------------------------------------------
/src/details/QCefQueryPrivate.cpp:
--------------------------------------------------------------------------------
1 | #include "QCefQueryPrivate.h"
2 |
3 | QCefQueryPrivate::QCefQueryPrivate() {}
4 |
5 | QCefQueryPrivate::~QCefQueryPrivate()
6 | {
7 | if (!replyed_ && source_) {
8 | replyed_ = true;
9 | source_->responseQCefQuery(id_, restult_, response_, error_);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/details/QCefQueryPrivate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #pragma endregion
6 |
7 | #include
8 |
9 | #include "QCefViewPrivate.h"
10 |
11 | class QCefQueryPrivate
12 | {
13 | public:
14 | QCefQueryPrivate();
15 |
16 | ~QCefQueryPrivate();
17 |
18 | int64_t id_ = -1;
19 | QString request_;
20 | QString response_;
21 | bool restult_ = true;
22 | int error_ = 0;
23 |
24 | bool replyed_ = false;
25 | QPointer source_;
26 | };
27 |
--------------------------------------------------------------------------------
/src/details/QCefSettingPrivate.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region stl_headers
4 | #include
5 | #include
6 | #pragma endregion
7 |
8 | #pragma region cef_headers
9 | #include
10 | #pragma endregion
11 |
12 | #pragma region qt_headers
13 | #include
14 | #pragma endregion
15 |
16 | #include
17 |
18 | class QCefSettingPrivate
19 | {
20 | Q_DECLARE_PUBLIC(QCefSetting)
21 | QCefSetting* q_ptr{};
22 |
23 | friend class CCefClientDelegate;
24 |
25 | public:
26 | static void CopyFromCefBrowserSettings(QCefSetting* qs, const CefBrowserSettings* cs);
27 |
28 | static void CopyFromCefBrowserSettings(QCefSettingPrivate* qsp, const CefBrowserSettings* cs);
29 |
30 | static void CopyToCefBrowserSettings(const QCefSetting* qs, CefBrowserSettings* cs);
31 |
32 | static void CopyToCefBrowserSettings(const QCefSettingPrivate* qs, CefBrowserSettings* cs);
33 |
34 | public:
35 | explicit QCefSettingPrivate();
36 |
37 | //////////////////////////////////////////////////////////////////////////
38 | // Non CEF browser setting values
39 | QSize windowInitialSize_;
40 | bool hardwareAcceleration_ = true;
41 |
42 | //////////////////////////////////////////////////////////////////////////
43 | // CEF browser setting values
44 | std::string standardFontFamily_;
45 | std::string fixedFontFamily_;
46 | std::string serifFontFamily_;
47 | std::string sansSerifFontFamily_;
48 | std::string cursiveFontFamily_;
49 | std::string fantasyFontFamily_;
50 | std::string defaultEncoding_;
51 | #if CEF_VERSION_MAJOR < 118
52 | std::string acceptLanguageList_;
53 | #endif
54 |
55 | /* int */ QVariant windowlessFrameRate_;
56 | /* int */ QVariant defaultFontSize_;
57 | /* int */ QVariant defaultFixedFontSize_;
58 | /* int */ QVariant minimumFontSize_;
59 | /* int */ QVariant minimumLogicalFontSize_;
60 |
61 | /* bool */ QVariant remoteFonts_;
62 | /* bool */ QVariant javascript_;
63 | /* bool */ QVariant javascriptCloseWindows_;
64 | /* bool */ QVariant javascriptAccessClipboard_;
65 | /* bool */ QVariant javascriptDomPaste_;
66 | #if CEF_VERSION_MAJOR < 100
67 | /* bool */ QVariant plugins_;
68 | #endif
69 | /* bool */ QVariant imageLoading_;
70 | /* bool */ QVariant imageShrinkStandaloneToFit_;
71 | /* bool */ QVariant textAreaResize_;
72 | /* bool */ QVariant tabToLinks_;
73 | /* bool */ QVariant localStorage_;
74 | /* bool */ QVariant databases_;
75 | /* bool */ QVariant webgl_;
76 |
77 | /* QColor */ QVariant backgroundColor_;
78 |
79 | private:
80 | ///
81 | ///
82 | ///
83 | ///
84 | void copyFromCefBrowserSettings(const CefBrowserSettings* cs);
85 |
86 | ///
87 | ///
88 | ///
89 | ///
90 | void copyToCefBrowserSettings(CefBrowserSettings* cs) const;
91 | };
92 |
--------------------------------------------------------------------------------
/src/details/QCefWindow.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 | #pragma region qt_headers
3 | #include
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 | #pragma endregion
10 |
11 | class QCefWindow : public QWindow
12 | {
13 | public:
14 | using QWindow::QWindow;
15 |
16 | QCefWindow();
17 |
18 | ~QCefWindow();
19 |
20 | QWidget* attachCefWindow(QWindow* win, QWidget* parent);
21 |
22 | void detachCefWindow();
23 |
24 | void applyMask(const QRegion& region);
25 |
26 | QWindow* cefWindow();
27 |
28 | protected:
29 | void syncCefWindowPosOnResize();
30 | void syncCefWindowPosOnExpose();
31 |
32 | protected:
33 | virtual void exposeEvent(QExposeEvent* e) override;
34 |
35 | virtual void resizeEvent(QResizeEvent* e) override;
36 |
37 | private:
38 | QWidget* cefWidget_ = nullptr;
39 | QWindow* cefWindow_ = nullptr;
40 | };
41 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_ContextMenuHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include
4 | #include
5 |
6 | #include "details/utils/CommonUtils.h"
7 | #include "details/utils/MenuBuilder.h"
8 |
9 | #include "details/QCefViewPrivate.h"
10 |
11 | void
12 | CCefClientDelegate::onBeforeContextMenu(CefRefPtr& browser,
13 | CefRefPtr& frame,
14 | CefRefPtr& params,
15 | CefRefPtr& model)
16 | {
17 | FLog();
18 |
19 | if (!pCefViewPrivate_)
20 | return;
21 |
22 | // popup browser doesn't involve off-screen rendering
23 | if (browser->IsPopup()) {
24 | return;
25 | }
26 |
27 | // main browser
28 | auto policy = pCefViewPrivate_->q_ptr->contextMenuPolicy();
29 | if (Qt::DefaultContextMenu != policy) {
30 | // for all non-default value, we clear the menu info to prevent the showing
31 | model->Clear();
32 | return;
33 | }
34 |
35 | if (pCefViewPrivate_->isOSRModeEnabled_) {
36 | // OSR mode
37 | auto menuData = MenuBuilder::CreateMenuDataFromCefMenu(model.get());
38 | QMetaObject::invokeMethod(pCefViewPrivate_, [=]() { pCefViewPrivate_->onBeforeCefContextMenu(menuData); });
39 | }
40 | }
41 |
42 | bool
43 | CCefClientDelegate::onRunContextMenu(CefRefPtr& browser,
44 | CefRefPtr& frame,
45 | CefRefPtr& params,
46 | CefRefPtr& model,
47 | CefRefPtr& callback)
48 | {
49 | FLog();
50 |
51 | // popup browser doesn't involve off-screen rendering
52 | if (browser->IsPopup()) {
53 | return false;
54 | }
55 |
56 | if (pCefViewPrivate_->isOSRModeEnabled_) {
57 | // OSR mode, create context menu with CEF built-in menu mode and show as customized context menu
58 | QPoint pos(params->GetXCoord(), params->GetYCoord());
59 | QMetaObject::invokeMethod(pCefViewPrivate_, [=]() { pCefViewPrivate_->onRunCefContextMenu(pos, callback); });
60 | return true;
61 | } else {
62 | // NCW mode, to allow CEF native context menu
63 | return false;
64 | }
65 | }
66 |
67 | bool
68 | CCefClientDelegate::onContextMenuCommand(CefRefPtr& browser,
69 | CefRefPtr& frame,
70 | CefRefPtr& params,
71 | int command_id,
72 | CefContextMenuHandler::EventFlags event_flags)
73 | {
74 | FLog();
75 |
76 | return false;
77 | }
78 |
79 | void
80 | CCefClientDelegate::onContextMenuDismissed(CefRefPtr& browser, CefRefPtr& frame)
81 | {
82 | FLog();
83 |
84 | if (pCefViewPrivate_->isOSRModeEnabled_) {
85 | // OSR mode
86 | QMetaObject::invokeMethod(pCefViewPrivate_, [=]() { pCefViewPrivate_->onCefContextMenuDismissed(); });
87 | }
88 | }
89 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_DialogHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include
4 | #include
5 | #include
6 |
7 | #include "details/QCefViewPrivate.h"
8 | #include "details/utils/CommonUtils.h"
9 | #include "details/utils/ValueConvertor.h"
10 |
11 | bool
12 | CCefClientDelegate::onFileDialog(CefRefPtr& browser,
13 | CefBrowserHost::FileDialogMode mode,
14 | const CefString& title,
15 | const CefString& default_file_path,
16 | const std::vector& accept_filters,
17 | #if CEF_VERSION_MAJOR < 102
18 | int selected_accept_filter,
19 | #endif
20 | CefRefPtr& callback)
21 | {
22 | QMetaObject::invokeMethod(pCefViewPrivate_, [=]() {
23 | QStringList filters;
24 | if (!accept_filters.empty()) {
25 | for (const auto& filter : accept_filters) {
26 | filters << "*" + QString::fromStdString(filter.ToString());
27 | }
28 | }
29 | pCefViewPrivate_->onFileDialog(mode,
30 | title.ToString().c_str(),
31 | default_file_path.ToString().c_str(),
32 | filters,
33 | #if CEF_VERSION_MAJOR < 102
34 | selected_accept_filter,
35 | #endif
36 | callback);
37 | });
38 | return true;
39 | }
40 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_DragHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include
4 | #include
5 | #include
6 |
7 | #include "details/QCefViewPrivate.h"
8 |
9 | bool
10 | CCefClientDelegate::onDragEnter(CefRefPtr& browser,
11 | CefRefPtr& dragData,
12 | CefDragHandler::DragOperationsMask mask)
13 | {
14 | if (!IsValidBrowser(browser))
15 | return true;
16 |
17 | // return true to cancel, false to allow
18 | return !pCefViewPrivate_->shouldAllowDrop(dragData, mask);
19 | }
20 |
21 | void
22 | CCefClientDelegate::draggableRegionChanged(CefRefPtr& browser,
23 | CefRefPtr& frame,
24 | const std::vector& regions)
25 | {
26 | if (!IsValidBrowser(browser))
27 | return;
28 |
29 | // Determine new draggable region.
30 | QRegion draggableRegion;
31 | QRegion nonDraggableRegion;
32 | std::vector::const_iterator it = regions.begin();
33 | for (; it != regions.end(); ++it) {
34 | if (it->draggable) {
35 | draggableRegion += QRegion(it->bounds.x, it->bounds.y, it->bounds.width, it->bounds.height);
36 | } else {
37 | nonDraggableRegion += QRegion(it->bounds.x, it->bounds.y, it->bounds.width, it->bounds.height);
38 | }
39 | }
40 |
41 | emit pCefViewPrivate_->q_ptr->draggableRegionChanged(draggableRegion, nonDraggableRegion);
42 | }
43 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_FocusHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include "details/QCefViewPrivate.h"
4 |
5 | void
6 | CCefClientDelegate::takeFocus(CefRefPtr& browser, bool next)
7 | {
8 | if (!IsValidBrowser(browser))
9 | return;
10 |
11 | QMetaObject::invokeMethod(pCefViewPrivate_, "onCefWindowLostTabFocus", Q_ARG(bool, next));
12 | }
13 |
14 | bool
15 | CCefClientDelegate::setFocus(CefRefPtr& browser)
16 | {
17 | // allow the focus setting action
18 | return false;
19 | }
20 |
21 | void
22 | CCefClientDelegate::gotFocus(CefRefPtr& browser)
23 | {
24 | if (!IsValidBrowser(browser))
25 | return;
26 |
27 | QMetaObject::invokeMethod(pCefViewPrivate_, "onCefWindowGotFocus");
28 | }
29 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_KeyboardHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include
4 |
5 | #include "details/QCefViewPrivate.h"
6 |
7 | bool
8 | CCefClientDelegate::onPreKeyEvent(CefRefPtr& browser,
9 | const CefKeyEvent& event,
10 | CefEventHandle os_event,
11 | bool* is_keyboard_shortcut)
12 | {
13 | // qDebug("===== CefKeyEvent:type=%d, modifiers=0x%08x, windows_key_code=%d, native_key_code=%d, char=0x%04x, "
14 | // "unmod_char=0x%04x",
15 | // event.type,
16 | // event.modifiers,
17 | // event.windows_key_code,
18 | // event.native_key_code,
19 | // event.character,
20 | // event.unmodified_character);
21 |
22 | #if defined(Q_OS_MACOS)
23 | // it seems Qt breaks the macOS shortcut key, so we need to fix it
24 | if (event.modifiers & EVENTFLAG_COMMAND_DOWN && event.type == KEYEVENT_RAWKEYDOWN) {
25 | switch (event.native_key_code) {
26 | case 0: // A SelectAll
27 | case 6: // Z Undo
28 | case 7: // X Cut
29 | case 8: // C Copy
30 | case 9: // V Paste
31 | case 16: // Y Redo
32 | *is_keyboard_shortcut = true;
33 | break;
34 | }
35 | }
36 | #endif
37 |
38 | return false;
39 | }
40 |
41 | bool
42 | CCefClientDelegate::onKeyEvent(CefRefPtr& browser, const CefKeyEvent& event, CefEventHandle os_event)
43 | {
44 | #if defined(Q_OS_MACOS)
45 | // it seems Qt breaks the macOS shortcut key, so we need to fix it
46 | if (event.modifiers & EVENTFLAG_COMMAND_DOWN && event.type == KEYEVENT_RAWKEYDOWN) {
47 | switch (event.native_key_code) {
48 | case 0: // A
49 | browser->GetFocusedFrame()->SelectAll();
50 | break;
51 | case 6: // Z
52 | browser->GetFocusedFrame()->Undo();
53 | break;
54 | case 7: // X
55 | browser->GetFocusedFrame()->Cut();
56 | break;
57 | case 8: // C
58 | browser->GetFocusedFrame()->Copy();
59 | break;
60 | case 9: // V
61 | browser->GetFocusedFrame()->Paste();
62 | break;
63 | case 16: // Y
64 | browser->GetFocusedFrame()->Redo();
65 | break;
66 | }
67 | }
68 | #endif
69 |
70 | return false;
71 | }
72 |
--------------------------------------------------------------------------------
/src/details/handler/CCefClientDelegate_LoadHandler.cpp:
--------------------------------------------------------------------------------
1 | #include "details/CCefClientDelegate.h"
2 |
3 | #include "details/QCefViewPrivate.h"
4 |
5 | void
6 | CCefClientDelegate::loadingStateChanged(CefRefPtr& browser,
7 | bool isLoading,
8 | bool canGoBack,
9 | bool canGoForward)
10 | {
11 | if (!IsValidBrowser(browser))
12 | return;
13 |
14 | emit pCefViewPrivate_->q_ptr->loadingStateChanged(browser->GetIdentifier(), isLoading, canGoBack, canGoForward);
15 | }
16 |
17 | void
18 | CCefClientDelegate::loadStart(CefRefPtr& browser, CefRefPtr& frame, int transitionType)
19 | {
20 | if (!IsValidBrowser(browser))
21 | return;
22 |
23 | emit pCefViewPrivate_->q_ptr->loadStart(
24 | browser->GetIdentifier(), ValueConvertor::FrameIdC2Q(frame->GetIdentifier()), frame->IsMain(), transitionType);
25 | }
26 |
27 | void
28 | CCefClientDelegate::loadEnd(CefRefPtr& browser, CefRefPtr& frame, int httpStatusCode)
29 | {
30 | if (!IsValidBrowser(browser))
31 | return;
32 |
33 | // workaround for:
34 | // https://github.com/chromiumembedded/cef/issues/3870
35 | // after navigation CEF resets the browser focus status
36 | // without any callback notification (AKA, released the
37 | // focus silently), so we need to update the CEF browser
38 | // focus status according to the one we have kept
39 | if (true //
40 | && pCefViewPrivate_->isOSRModeEnabled_ //
41 | && pCefViewPrivate_->osr.hasCefGotFocus_ //
42 | && browser->GetHost() //
43 | ) {
44 | browser->GetHost()->SetFocus(true);
45 | }
46 |
47 | emit pCefViewPrivate_->q_ptr->loadEnd(
48 | browser->GetIdentifier(), ValueConvertor::FrameIdC2Q(frame->GetIdentifier()), frame->IsMain(), httpStatusCode);
49 | }
50 |
51 | void
52 | CCefClientDelegate::loadError(CefRefPtr& browser,
53 | CefRefPtr& frame,
54 | int errorCode,
55 | const CefString& errorMsg,
56 | const CefString& failedUrl,
57 | bool& handled)
58 | {
59 | if (!IsValidBrowser(browser))
60 | return;
61 |
62 | handled = pCefViewPrivate_->handleLoadError(browser, frame, errorCode, errorMsg, failedUrl);
63 | }
64 |
--------------------------------------------------------------------------------
/src/details/render/CefViewRendererFactory.cpp:
--------------------------------------------------------------------------------
1 | #include "CefViewRendererFactory.h"
2 |
3 | #include "hardware/CefViewHardwareRenderer.h"
4 | #include "software/QtSoftwareRenderer.h"
5 |
6 | namespace CefViewRendererFactory {
7 | CefViewRendererPtr
8 | createRenderer(bool hardware)
9 | {
10 | if (hardware) {
11 | return createHardwareRenderer();
12 | } else {
13 | return CefViewRendererPtr(new QtSoftwareRenderer);
14 | }
15 | }
16 | } // namespace CefViewRendererFactory
17 |
--------------------------------------------------------------------------------
/src/details/render/CefViewRendererFactory.h:
--------------------------------------------------------------------------------
1 | #ifndef CEFVIEWRENDERERFACTORY_H
2 | #define CEFVIEWRENDERERFACTORY_H
3 |
4 | #pragma once
5 | #include "ICefViewRenderer.h"
6 |
7 | namespace CefViewRendererFactory {
8 |
9 | CefViewRendererPtr
10 | createRenderer(bool hardware);
11 | }
12 | #endif
13 |
--------------------------------------------------------------------------------
/src/details/render/hardware/CefViewHardwareRenderer.cpp:
--------------------------------------------------------------------------------
1 | #include "CefViewHardwareRenderer.h"
2 |
3 | #if defined(OS_WINDOWS)
4 | #include "win/details/render/hardware/DX11RenderBackend.h"
5 | #elif defined(OS_MACOS)
6 | #include "mac/details/render/hardware/MetalRenderBackend.h"
7 | #elif defined(OS_LINUX)
8 | #include "linux/details/render/hardware/OpenGLRenderBackend.h"
9 | #else
10 | #error "Unsupported platform"
11 | #endif
12 |
13 | CefViewRendererPtr
14 | createHardwareRenderer()
15 | {
16 | #if defined(OS_WINDOWS)
17 | return CefViewRendererPtr(new DX11RenderBackend);
18 | #elif defined(OS_MACOS)
19 | return CefViewRendererPtr(new MetalRenderBackend);
20 | #elif defined(OS_LINUX)
21 | return CefViewRendererPtr(new OpenGLRenderBackend);
22 | #else
23 | #error "Unsupported platform"
24 | #endif
25 | }
26 |
--------------------------------------------------------------------------------
/src/details/render/hardware/CefViewHardwareRenderer.h:
--------------------------------------------------------------------------------
1 | #ifndef CEFVIEWHARDWARERENDERER_H
2 | #define CEFVIEWHARDWARERENDERER_H
3 |
4 | #pragma once
5 | #include "../ICefViewRenderer.h"
6 |
7 | CefViewRendererPtr
8 | createHardwareRenderer();
9 |
10 | #endif
11 |
--------------------------------------------------------------------------------
/src/details/render/software/QtSoftwareRenderer.h:
--------------------------------------------------------------------------------
1 | #ifndef QTSOFTWARERENDERER_H
2 | #define QTSOFTWARERENDERER_H
3 |
4 | #pragma once
5 |
6 | #include
7 | #include
8 |
9 | #include "details/render/ICefViewRenderer.h"
10 |
11 | class QtSoftwareRenderer : public ICefViewRenderer
12 | {
13 | Q_OBJECT
14 |
15 | private:
16 | QScopedPointer m_backingStore;
17 |
18 | // popup status
19 | bool m_showPopup = false;
20 | CefRect m_popupRect;
21 |
22 | // images for internal processing
23 | QImage m_cefViewImage;
24 | QImage m_cefPopupImage;
25 |
26 | public:
27 | QtSoftwareRenderer();
28 |
29 | ~QtSoftwareRenderer();
30 |
31 | bool isHardware() override { return false; }
32 |
33 | bool initialize(QWidget* widget, int width, int height, float scale, const QColor& clear) override;
34 |
35 | void uninitialize() override;
36 |
37 | void resize(int width, int height, float scale) override;
38 |
39 | void updatePopupVisibility(bool visible) override;
40 |
41 | void updatePopupRect(const CefRect& rect) override;
42 |
43 | void updateFrameData(const CefRenderHandler::PaintElementType& type,
44 | const CefRenderHandler::RectList& dirtyRects,
45 | const FrameDataType& dataType,
46 | const FrameData& data) override;
47 |
48 | void render() override;
49 | };
50 |
51 | #endif
52 |
--------------------------------------------------------------------------------
/src/details/utils/CommonUtils.cpp:
--------------------------------------------------------------------------------
1 | #include "CommonUtils.h"
2 |
--------------------------------------------------------------------------------
/src/details/utils/CommonUtils.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #include
6 | #include
7 | #include
8 | #pragma endregion
9 |
10 | #pragma region cef_headers
11 | #include
12 | #pragma endregion
13 |
14 | ///
15 | /// Registers a Qt metatype for the specified type.
16 | /// This macro defines a static struct whose constructor registers the given type
17 | /// with Qt's meta-object system using qRegisterMetaType().
18 | ///
19 | ///
20 | /// Usage:
21 | /// REGISTER_METATYPE(MyCustomType)
22 | ///
23 | #define REGISTER_METATYPE(TYPE) \
24 | static struct TYPE##_MetaTypeRegister \
25 | { \
26 | TYPE##_MetaTypeRegister() \
27 | { \
28 | qRegisterMetaType(); \
29 | } \
30 | } TYPE##_MetaTypeRegister;
31 |
32 | ///
33 | /// Utility class for logging function entry and exit.
34 | /// Prints debug messages upon construction and destruction,
35 | /// indicating when a function is entered and exited.
36 | ///
37 | class FunctionLogger
38 | {
39 | public:
40 | ///
41 | /// Constructs a FunctionLogger for the given function name.
42 | ///
43 | /// The name of the function to log.
44 | FunctionLogger(const QString& fn)
45 | : functionName_(fn)
46 | {
47 | qDebug() << "+++" << functionName_;
48 | }
49 |
50 | ///
51 | /// Destructor logs function exit.
52 | ///
53 | ~FunctionLogger() { qDebug() << "---" << functionName_; }
54 |
55 | ///
56 | /// The name of the function being logged.
57 | ///
58 | QString functionName_;
59 | };
60 |
61 | #if defined(QT_DEBUG)
62 | ///
63 | /// Instantiates a FunctionLogger for the current function.
64 | /// In debug builds, this macro creates a FunctionLogger named __fl__ using
65 | /// the current function's name. In release builds, it does nothing.
66 | ///
67 | #define FLog() FunctionLogger __fl__(__FUNCTION__);
68 | #else
69 | #define FLog()
70 | #endif
71 |
--------------------------------------------------------------------------------
/src/details/utils/CursorUtils.cpp:
--------------------------------------------------------------------------------
1 | #include "CursorUtils.h"
2 |
3 | Qt::CursorShape
4 | MapCursorShape(cef_cursor_type_t& type)
5 | {
6 | static Qt::CursorShape sCursorTable[] = {
7 | Qt::ArrowCursor, // CT_POINTER = 0,
8 | Qt::CrossCursor, // CT_CROSS,
9 | Qt::PointingHandCursor, // CT_HAND,
10 | Qt::IBeamCursor, // CT_IBEAM,
11 | Qt::WaitCursor, // CT_WAIT,
12 | Qt::WhatsThisCursor, // CT_HELP,
13 | Qt::SizeHorCursor, // CT_EASTRESIZE,
14 | Qt::SizeVerCursor, // CT_NORTHRESIZE,
15 | Qt::SizeBDiagCursor, // CT_NORTHEASTRESIZE,
16 | Qt::SizeFDiagCursor, // CT_NORTHWESTRESIZE,
17 | Qt::SizeVerCursor, // CT_SOUTHRESIZE,
18 | Qt::SizeFDiagCursor, // CT_SOUTHEASTRESIZE,
19 | Qt::SizeBDiagCursor, // CT_SOUTHWESTRESIZE,
20 | Qt::SizeHorCursor, // CT_WESTRESIZE,
21 | Qt::SizeVerCursor, // CT_NORTHSOUTHRESIZE,
22 | Qt::SizeHorCursor, // CT_EASTWESTRESIZE,
23 | Qt::SizeAllCursor, // CT_NORTHEASTSOUTHWESTRESIZE,
24 | Qt::SizeAllCursor, // CT_NORTHWESTSOUTHEASTRESIZE,
25 | Qt::SplitHCursor, // CT_COLUMNRESIZE,
26 | Qt::SplitVCursor, // CT_ROWRESIZE,
27 | Qt::ArrowCursor, // CT_MIDDLEPANNING,
28 | Qt::ArrowCursor, // CT_EASTPANNING,
29 | Qt::ArrowCursor, // CT_NORTHPANNING,
30 | Qt::ArrowCursor, // CT_NORTHEASTPANNING,
31 | Qt::ArrowCursor, // CT_NORTHWESTPANNING,
32 | Qt::ArrowCursor, // CT_SOUTHPANNING,
33 | Qt::ArrowCursor, // CT_SOUTHEASTPANNING,
34 | Qt::ArrowCursor, // CT_SOUTHWESTPANNING,
35 | Qt::ArrowCursor, // CT_WESTPANNING,
36 | Qt::ArrowCursor, // CT_MOVE,
37 | Qt::ArrowCursor, // CT_VERTICALTEXT,
38 | Qt::ArrowCursor, // CT_CELL,
39 | Qt::ArrowCursor, // CT_CONTEXTMENU,
40 | Qt::ArrowCursor, // CT_ALIAS,
41 | Qt::ArrowCursor, // CT_PROGRESS,
42 | Qt::ArrowCursor, // CT_NODROP,
43 | Qt::ArrowCursor, // CT_COPY,
44 | Qt::ArrowCursor, // CT_NONE,
45 | Qt::ForbiddenCursor, // CT_NOTALLOWED,
46 | Qt::ArrowCursor, // CT_ZOOMIN,
47 | Qt::ArrowCursor, // CT_ZOOMOUT,
48 | Qt::OpenHandCursor, // CT_GRAB,
49 | Qt::ClosedHandCursor, // CT_GRABBING,
50 | Qt::ArrowCursor, // CT_MIDDLE_PANNING_VERTICAL,
51 | Qt::ArrowCursor, // CT_MIDDLE_PANNING_HORIZONTAL,
52 | Qt::ArrowCursor, // CT_CUSTOM,
53 | Qt::ArrowCursor, // CT_DND_NONE,
54 | Qt::DragMoveCursor, // CT_DND_MOVE,
55 | Qt::DragCopyCursor, // CT_DND_COPY,
56 | Qt::DragLinkCursor, // CT_DND_LINK,
57 | };
58 | return sCursorTable[type];
59 | }
60 |
--------------------------------------------------------------------------------
/src/details/utils/CursorUtils.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #pragma endregion
6 |
7 | #pragma region cef_headers
8 | #include
9 | #pragma endregion
10 |
11 | ///
12 | /// Maps a CEF cursor type to a Qt cursor shape.
13 | ///
14 | /// The CEF cursor type to map.
15 | /// The corresponding Qt::CursorShape.
16 | Qt::CursorShape
17 | MapCursorShape(cef_cursor_type_t& type);
18 |
--------------------------------------------------------------------------------
/src/details/utils/DragAndDropUtils.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #pragma endregion
6 |
7 | #pragma region cef_headers
8 | #include
9 | #include
10 | #pragma endregion
11 |
12 | ///
13 | /// Maps a CEF drag operation mask to the corresponding Qt drop actions.
14 | ///
15 | /// The CEF drag operations mask to be mapped.
16 | ///
17 | /// The Qt drop actions corresponding to the specified CEF drag operation mask.
18 | ///
19 | Qt::DropActions
20 | MapCefDragOperationToQDropAction(CefRenderHandler::DragOperationsMask operation);
21 |
22 | ///
23 | /// Creates a QMimeData object from the given CefDragData instance.
24 | ///
25 | /// A reference to a CefDragData object containing the drag-and-drop data to convert.
26 | /// A pointer to a new QMimeData object representing the data from the provided CefDragData.
27 | QMimeData*
28 | CreateQMimeDataFromCefDragData(CefDragData& dragData);
29 |
30 | ///
31 | /// Maps Qt drop actions to the corresponding CEF drag operations mask.
32 | ///
33 | ///
34 | /// The Qt drop actions to be mapped, specified as a combination of Qt::DropActions flags.
35 | ///
36 | ///
37 | /// A CefRenderHandler::DragOperationsMask value representing the equivalent CEF drag operations for the given
38 | /// Qt drop actions.
39 | ///
40 | CefRenderHandler::DragOperationsMask
41 | MapQDropActionToCefDragOperation(Qt::DropActions actions);
42 |
43 | ///
44 | /// Creates a CefDragData object from a QMimeData instance.
45 | ///
46 | /// A reference to the QMimeData object containing the data to be converted.
47 | /// A CefRefPtr to a CefDragData object representing the data from the provided QMimeData.
48 | CefRefPtr
49 | CreateCefDragDataFromQMimeData(const QMimeData& mime);
50 |
--------------------------------------------------------------------------------
/src/details/utils/KeyboardUtils.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #include
6 | #pragma endregion
7 |
8 | #pragma region cef_headers
9 | #include
10 | #pragma endregion
11 |
12 | ///
13 | /// Maps a Qt QKeyEvent to a CEF CefKeyEvent structure.
14 | /// This function translates the Qt key event properties to their CEF equivalents,
15 | /// enabling proper keyboard event handling in CEF-based components.
16 | ///
17 | /// Pointer to the QKeyEvent to map from.
18 | /// Reference to the CefKeyEvent to populate.
19 | void
20 | MapQKeyEventToCefKeyEvent(QKeyEvent* qe, CefKeyEvent& ce);
21 |
22 | ///
23 | /// Determines whether a QKeyEvent should result in sending a CEF key character event.
24 | /// Typically used to filter out non-character or system key events.
25 | ///
26 | /// Pointer to the QKeyEvent to evaluate.
27 | /// True if a key character event should be sent; otherwise, false.
28 | bool
29 | ShouldSendKeyCharEvent(QKeyEvent* qe);
30 |
31 | ///
32 | /// Adjusts a CEF CefKeyEvent to ensure it correctly represents a key character event
33 | /// based on the provided QKeyEvent. This may modify event type, character code, or modifiers.
34 | ///
35 | /// Pointer to the QKeyEvent providing the source data.
36 | /// Reference to the CefKeyEvent to adjust.
37 | void
38 | AdjustCefKeyCharEvent(QKeyEvent* qe, CefKeyEvent& ce);
39 |
--------------------------------------------------------------------------------
/src/details/utils/MenuBuilder.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #pragma region qt_headers
4 | #include
5 | #include
6 | #include
7 | #pragma endregion
8 |
9 | #pragma region cef_headers
10 | #include
11 | #pragma endregion
12 |
13 | namespace MenuBuilder {
14 |
15 | ///
16 | /// Represents the type of a menu item.
17 | ///
18 | typedef enum MenuItemType
19 | {
20 | /// No menu item type specified.
21 | kMeueItemTypeNone,
22 | /// A standard command item (clickable action).
23 | kMeueItemTypeCommand,
24 | /// A checkable menu item (can be checked/unchecked).
25 | kMeueItemTypeCheck,
26 | /// A radio button menu item (part of a group, only one can be selected).
27 | kMeueItemTypeRadio,
28 | /// A separator (non-interactive visual divider).
29 | kMeueItemTypeSeparator,
30 | /// A submenu (contains nested menu items).
31 | kMeueItemTypeSubMenu,
32 | } MenuItemType;
33 |
34 | ///
35 | /// Represents a single menu item, including its type, label, state, and
36 | /// optional submenu data.
37 | ///
38 | typedef struct MenuItem
39 | {
40 | /// The type of the menu item (command, check, radio, etc.).
41 | MenuItemType type = kMeueItemTypeNone;
42 | /// The display label for the menu item.
43 | QString label;
44 | /// The command identifier associated with this item.
45 | int commandId = 0;
46 | /// Whether the menu item is enabled (can be interacted with).
47 | bool enable = false;
48 | /// Whether the menu item is visible.
49 | bool visible = false;
50 | /// Whether the menu item is checked (for check/radio types).
51 | bool checked = false;
52 | /// The group identifier (used for radio groups).
53 | int groupId = -1;
54 | /// The accelerator key (if any) associated with this item.
55 | int accelerator = -1;
56 | /// Submenu data, if this item is a submenu.
57 | QList