├── README.md ├── Win32 └── Release │ ├── Qt5Core.dll │ ├── Qt5Core.lib │ ├── Qt5Gui.dll │ ├── Qt5Widgets.dll │ ├── cef.pak │ ├── cef_100_percent.pak │ ├── cef_200_percent.pak │ ├── cef_extensions.pak │ ├── d3dcompiler_43.dll │ ├── d3dcompiler_47.dll │ ├── debug.log │ ├── devtools_resources.pak │ ├── icudtl.dat │ ├── index.html │ ├── libEGL.dll │ ├── libGLESv2.dll │ ├── libcef.dll │ ├── libcef.lib │ ├── locales │ ├── am.pak │ ├── ar.pak │ ├── bg.pak │ ├── bn.pak │ ├── ca.pak │ ├── cs.pak │ ├── da.pak │ ├── de.pak │ ├── el.pak │ ├── en-GB.pak │ ├── en-US.pak │ ├── es-419.pak │ ├── es.pak │ ├── et.pak │ ├── fa.pak │ ├── fi.pak │ ├── fil.pak │ ├── fr.pak │ ├── gu.pak │ ├── he.pak │ ├── hi.pak │ ├── hr.pak │ ├── hu.pak │ ├── id.pak │ ├── it.pak │ ├── ja.pak │ ├── kn.pak │ ├── ko.pak │ ├── lt.pak │ ├── lv.pak │ ├── ml.pak │ ├── mr.pak │ ├── ms.pak │ ├── nb.pak │ ├── nl.pak │ ├── pl.pak │ ├── pt-BR.pak │ ├── pt-PT.pak │ ├── ro.pak │ ├── ru.pak │ ├── sk.pak │ ├── sl.pak │ ├── sr.pak │ ├── sv.pak │ ├── sw.pak │ ├── ta.pak │ ├── te.pak │ ├── th.pak │ ├── tr.pak │ ├── uk.pak │ ├── vi.pak │ ├── zh-CN.pak │ └── zh-TW.pak │ ├── natives_blob.bin │ ├── platforms │ ├── qminimal.dll │ ├── qoffscreen.dll │ └── qwindows.dll │ ├── qtcef3.exe │ ├── snapshot_blob.bin │ ├── widevinecdmadapter.dll │ └── wow_helper.exe ├── qtcef3.sln ├── qtcef3 ├── GeneratedFiles │ ├── Release │ │ └── moc_qtcef3.cpp │ ├── qrc_qtcef3.cpp │ └── ui_qtcef3.h ├── cefclient_app.cpp ├── cefclient_app.h ├── cefclient_handler.cpp ├── cefclient_handler.h ├── cefclient_handler_win.cpp ├── ceflib │ └── Release │ │ ├── cef_sandbox.lib │ │ ├── libcef.lib │ │ └── libcef_dll_wrapper.lib ├── cefview.cpp ├── cefview.h ├── debug.log ├── include │ ├── base │ │ ├── cef_atomic_ref_count.h │ │ ├── cef_atomicops.h │ │ ├── cef_basictypes.h │ │ ├── cef_bind.h │ │ ├── cef_bind_helpers.h │ │ ├── cef_build.h │ │ ├── cef_callback.h │ │ ├── cef_callback_forward.h │ │ ├── cef_callback_helpers.h │ │ ├── cef_callback_list.h │ │ ├── cef_cancelable_callback.h │ │ ├── cef_lock.h │ │ ├── cef_logging.h │ │ ├── cef_macros.h │ │ ├── cef_move.h │ │ ├── cef_platform_thread.h │ │ ├── cef_ref_counted.h │ │ ├── cef_scoped_ptr.h │ │ ├── cef_string16.h │ │ ├── cef_template_util.h │ │ ├── cef_thread_checker.h │ │ ├── cef_thread_collision_warner.h │ │ ├── cef_trace_event.h │ │ ├── cef_tuple.h │ │ ├── cef_weak_ptr.h │ │ └── internal │ │ │ ├── cef_atomicops_x86_msvc.h │ │ │ ├── cef_bind_internal.h │ │ │ ├── cef_bind_internal_win.h │ │ │ ├── cef_callback_internal.h │ │ │ ├── cef_lock_impl.h │ │ │ ├── cef_raw_scoped_refptr_mismatch_checker.h │ │ │ └── cef_thread_checker_impl.h │ ├── capi │ │ ├── cef_app_capi.h │ │ ├── cef_auth_callback_capi.h │ │ ├── cef_base_capi.h │ │ ├── cef_browser_capi.h │ │ ├── cef_browser_process_handler_capi.h │ │ ├── cef_callback_capi.h │ │ ├── cef_client_capi.h │ │ ├── cef_command_line_capi.h │ │ ├── cef_context_menu_handler_capi.h │ │ ├── cef_cookie_capi.h │ │ ├── cef_dialog_handler_capi.h │ │ ├── cef_display_handler_capi.h │ │ ├── cef_dom_capi.h │ │ ├── cef_download_handler_capi.h │ │ ├── cef_download_item_capi.h │ │ ├── cef_drag_data_capi.h │ │ ├── cef_drag_handler_capi.h │ │ ├── cef_find_handler_capi.h │ │ ├── cef_focus_handler_capi.h │ │ ├── cef_frame_capi.h │ │ ├── cef_geolocation_capi.h │ │ ├── cef_geolocation_handler_capi.h │ │ ├── cef_jsdialog_handler_capi.h │ │ ├── cef_keyboard_handler_capi.h │ │ ├── cef_life_span_handler_capi.h │ │ ├── cef_load_handler_capi.h │ │ ├── cef_menu_model_capi.h │ │ ├── cef_navigation_entry_capi.h │ │ ├── cef_origin_whitelist_capi.h │ │ ├── cef_parser_capi.h │ │ ├── cef_path_util_capi.h │ │ ├── cef_print_handler_capi.h │ │ ├── cef_print_settings_capi.h │ │ ├── cef_process_message_capi.h │ │ ├── cef_process_util_capi.h │ │ ├── cef_render_handler_capi.h │ │ ├── cef_render_process_handler_capi.h │ │ ├── cef_request_capi.h │ │ ├── cef_request_context_capi.h │ │ ├── cef_request_context_handler_capi.h │ │ ├── cef_request_handler_capi.h │ │ ├── cef_resource_bundle_capi.h │ │ ├── cef_resource_bundle_handler_capi.h │ │ ├── cef_resource_handler_capi.h │ │ ├── cef_response_capi.h │ │ ├── cef_scheme_capi.h │ │ ├── cef_ssl_info_capi.h │ │ ├── cef_stream_capi.h │ │ ├── cef_string_visitor_capi.h │ │ ├── cef_task_capi.h │ │ ├── cef_trace_capi.h │ │ ├── cef_urlrequest_capi.h │ │ ├── cef_v8_capi.h │ │ ├── cef_values_capi.h │ │ ├── cef_web_plugin_capi.h │ │ ├── cef_xml_reader_capi.h │ │ └── cef_zip_reader_capi.h │ ├── cef_app.h │ ├── cef_auth_callback.h │ ├── cef_base.h │ ├── cef_browser.h │ ├── cef_browser_process_handler.h │ ├── cef_callback.h │ ├── cef_client.h │ ├── cef_command_line.h │ ├── cef_context_menu_handler.h │ ├── cef_cookie.h │ ├── cef_dialog_handler.h │ ├── cef_display_handler.h │ ├── cef_dom.h │ ├── cef_download_handler.h │ ├── cef_download_item.h │ ├── cef_drag_data.h │ ├── cef_drag_handler.h │ ├── cef_find_handler.h │ ├── cef_focus_handler.h │ ├── cef_frame.h │ ├── cef_geolocation.h │ ├── cef_geolocation_handler.h │ ├── cef_jsdialog_handler.h │ ├── cef_keyboard_handler.h │ ├── cef_life_span_handler.h │ ├── cef_load_handler.h │ ├── cef_menu_model.h │ ├── cef_navigation_entry.h │ ├── cef_origin_whitelist.h │ ├── cef_pack_resources.h │ ├── cef_pack_strings.h │ ├── cef_parser.h │ ├── cef_path_util.h │ ├── cef_print_handler.h │ ├── cef_print_settings.h │ ├── cef_process_message.h │ ├── cef_process_util.h │ ├── cef_render_handler.h │ ├── cef_render_process_handler.h │ ├── cef_request.h │ ├── cef_request_context.h │ ├── cef_request_context_handler.h │ ├── cef_request_handler.h │ ├── cef_resource_bundle.h │ ├── cef_resource_bundle_handler.h │ ├── cef_resource_handler.h │ ├── cef_response.h │ ├── cef_runnable.h │ ├── cef_sandbox_win.h │ ├── cef_scheme.h │ ├── cef_ssl_info.h │ ├── cef_stream.h │ ├── cef_string_visitor.h │ ├── cef_task.h │ ├── cef_trace.h │ ├── cef_urlrequest.h │ ├── cef_v8.h │ ├── cef_values.h │ ├── cef_version.h │ ├── cef_web_plugin.h │ ├── cef_xml_reader.h │ ├── cef_zip_reader.h │ ├── internal │ │ ├── cef_export.h │ │ ├── cef_logging_internal.h │ │ ├── cef_ptr.h │ │ ├── cef_string.h │ │ ├── cef_string_list.h │ │ ├── cef_string_map.h │ │ ├── cef_string_multimap.h │ │ ├── cef_string_types.h │ │ ├── cef_string_wrappers.h │ │ ├── cef_thread_internal.h │ │ ├── cef_time.h │ │ ├── cef_trace_event_internal.h │ │ ├── cef_types.h │ │ ├── cef_types_win.h │ │ ├── cef_types_wrappers.h │ │ └── cef_win.h │ └── wrapper │ │ ├── cef_byte_read_handler.h │ │ ├── cef_closure_task.h │ │ ├── cef_helpers.h │ │ ├── cef_message_router.h │ │ ├── cef_resource_manager.h │ │ ├── cef_stream_resource_handler.h │ │ ├── cef_xml_object.h │ │ └── cef_zip_archive.h ├── index.html ├── main.cpp ├── qtcef3.cpp ├── qtcef3.h ├── qtcef3.qrc ├── qtcef3.ui ├── qtcef3.vcxproj ├── qtcef3.vcxproj.filters ├── qtcef3.vcxproj.user ├── window_test.cpp └── window_test.h └── qtcef3wnd.PNG /README.md: -------------------------------------------------------------------------------- 1 | # qtcef3 2 | 3 | qt5.5.1,cef_3.2454.1344, 4 | UI and business logic separate architecture 5 | 6 | Screenshot 7 | ------- 8 | ![image](https://github.com/louk78/qtcef3/blob/master/qtcef3wnd.PNG) 9 | 10 | 11 | cef_binary_3.2454.1344 Download:http://opensource.spotify.com/cefbuilds/index.html 12 | 13 | cef_3.2454.1344_VS2013:https://github.com/louk78/cef_3.2454.1344_VS2013 14 | -------------------------------------------------------------------------------- /Win32/Release/Qt5Core.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/Qt5Core.dll -------------------------------------------------------------------------------- /Win32/Release/Qt5Core.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/Qt5Core.lib -------------------------------------------------------------------------------- /Win32/Release/Qt5Gui.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/Qt5Gui.dll -------------------------------------------------------------------------------- /Win32/Release/Qt5Widgets.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/Qt5Widgets.dll -------------------------------------------------------------------------------- /Win32/Release/cef.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/cef.pak -------------------------------------------------------------------------------- /Win32/Release/cef_100_percent.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/cef_100_percent.pak -------------------------------------------------------------------------------- /Win32/Release/cef_200_percent.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/cef_200_percent.pak -------------------------------------------------------------------------------- /Win32/Release/cef_extensions.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/cef_extensions.pak -------------------------------------------------------------------------------- /Win32/Release/d3dcompiler_43.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/d3dcompiler_43.dll -------------------------------------------------------------------------------- /Win32/Release/d3dcompiler_47.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/d3dcompiler_47.dll -------------------------------------------------------------------------------- /Win32/Release/debug.log: -------------------------------------------------------------------------------- 1 | [0724/110104:ERROR:renderer_main.cc(200)] Running without renderer sandbox 2 | [0411/184847:ERROR:renderer_main.cc(200)] Running without renderer sandbox 3 | [0411/185006:ERROR:renderer_main.cc(200)] Running without renderer sandbox 4 | [0411/185023:ERROR:gles2_cmd_decoder.cc(12822)] [GroupMarkerNotSet(crbug.com/242999)!:4C8F1803]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name 5 | [0411/185024:ERROR:gles2_cmd_decoder.cc(6833)] [GroupMarkerNotSet(crbug.com/242999)!:4C8F1803]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. 6 | [0411/185024:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 7 | [0411/185028:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 8 | [0411/185121:ERROR:renderer_main.cc(200)] Running without renderer sandbox 9 | [0411/185127:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 10 | [0411/185333:ERROR:renderer_main.cc(200)] Running without renderer sandbox 11 | [0411/185335:ERROR:ipc_channel_win.cc(435)] pipe error: 232 12 | [0411/185335:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 13 | [0411/185740:ERROR:renderer_main.cc(200)] Running without renderer sandbox 14 | [0411/185742:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 15 | [0411/185912:ERROR:renderer_main.cc(200)] Running without renderer sandbox 16 | [0411/185926:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 17 | -------------------------------------------------------------------------------- /Win32/Release/devtools_resources.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/devtools_resources.pak -------------------------------------------------------------------------------- /Win32/Release/icudtl.dat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/icudtl.dat -------------------------------------------------------------------------------- /Win32/Release/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Window Test 4 | 40 | 41 | 42 |
43 | Click a button to perform the associated window action. 44 |
45 |
46 |
47 |
(minimizes and then restores the window as topmost) 48 |
X: Y: Width: Height: 49 |
50 | 51 | 52 | -------------------------------------------------------------------------------- /Win32/Release/libEGL.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/libEGL.dll -------------------------------------------------------------------------------- /Win32/Release/libGLESv2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/libGLESv2.dll -------------------------------------------------------------------------------- /Win32/Release/libcef.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/libcef.dll -------------------------------------------------------------------------------- /Win32/Release/libcef.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/libcef.lib -------------------------------------------------------------------------------- /Win32/Release/locales/am.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/am.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ar.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ar.pak -------------------------------------------------------------------------------- /Win32/Release/locales/bg.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/bg.pak -------------------------------------------------------------------------------- /Win32/Release/locales/bn.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/bn.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ca.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ca.pak -------------------------------------------------------------------------------- /Win32/Release/locales/cs.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/cs.pak -------------------------------------------------------------------------------- /Win32/Release/locales/da.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/da.pak -------------------------------------------------------------------------------- /Win32/Release/locales/de.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/de.pak -------------------------------------------------------------------------------- /Win32/Release/locales/el.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/el.pak -------------------------------------------------------------------------------- /Win32/Release/locales/en-GB.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/en-GB.pak -------------------------------------------------------------------------------- /Win32/Release/locales/en-US.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/en-US.pak -------------------------------------------------------------------------------- /Win32/Release/locales/es-419.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/es-419.pak -------------------------------------------------------------------------------- /Win32/Release/locales/es.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/es.pak -------------------------------------------------------------------------------- /Win32/Release/locales/et.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/et.pak -------------------------------------------------------------------------------- /Win32/Release/locales/fa.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/fa.pak -------------------------------------------------------------------------------- /Win32/Release/locales/fi.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/fi.pak -------------------------------------------------------------------------------- /Win32/Release/locales/fil.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/fil.pak -------------------------------------------------------------------------------- /Win32/Release/locales/fr.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/fr.pak -------------------------------------------------------------------------------- /Win32/Release/locales/gu.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/gu.pak -------------------------------------------------------------------------------- /Win32/Release/locales/he.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/he.pak -------------------------------------------------------------------------------- /Win32/Release/locales/hi.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/hi.pak -------------------------------------------------------------------------------- /Win32/Release/locales/hr.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/hr.pak -------------------------------------------------------------------------------- /Win32/Release/locales/hu.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/hu.pak -------------------------------------------------------------------------------- /Win32/Release/locales/id.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/id.pak -------------------------------------------------------------------------------- /Win32/Release/locales/it.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/it.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ja.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ja.pak -------------------------------------------------------------------------------- /Win32/Release/locales/kn.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/kn.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ko.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ko.pak -------------------------------------------------------------------------------- /Win32/Release/locales/lt.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/lt.pak -------------------------------------------------------------------------------- /Win32/Release/locales/lv.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/lv.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ml.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ml.pak -------------------------------------------------------------------------------- /Win32/Release/locales/mr.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/mr.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ms.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ms.pak -------------------------------------------------------------------------------- /Win32/Release/locales/nb.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/nb.pak -------------------------------------------------------------------------------- /Win32/Release/locales/nl.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/nl.pak -------------------------------------------------------------------------------- /Win32/Release/locales/pl.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/pl.pak -------------------------------------------------------------------------------- /Win32/Release/locales/pt-BR.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/pt-BR.pak -------------------------------------------------------------------------------- /Win32/Release/locales/pt-PT.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/pt-PT.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ro.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ro.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ru.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ru.pak -------------------------------------------------------------------------------- /Win32/Release/locales/sk.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/sk.pak -------------------------------------------------------------------------------- /Win32/Release/locales/sl.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/sl.pak -------------------------------------------------------------------------------- /Win32/Release/locales/sr.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/sr.pak -------------------------------------------------------------------------------- /Win32/Release/locales/sv.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/sv.pak -------------------------------------------------------------------------------- /Win32/Release/locales/sw.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/sw.pak -------------------------------------------------------------------------------- /Win32/Release/locales/ta.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/ta.pak -------------------------------------------------------------------------------- /Win32/Release/locales/te.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/te.pak -------------------------------------------------------------------------------- /Win32/Release/locales/th.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/th.pak -------------------------------------------------------------------------------- /Win32/Release/locales/tr.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/tr.pak -------------------------------------------------------------------------------- /Win32/Release/locales/uk.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/uk.pak -------------------------------------------------------------------------------- /Win32/Release/locales/vi.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/vi.pak -------------------------------------------------------------------------------- /Win32/Release/locales/zh-CN.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/zh-CN.pak -------------------------------------------------------------------------------- /Win32/Release/locales/zh-TW.pak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/locales/zh-TW.pak -------------------------------------------------------------------------------- /Win32/Release/natives_blob.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/natives_blob.bin -------------------------------------------------------------------------------- /Win32/Release/platforms/qminimal.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/platforms/qminimal.dll -------------------------------------------------------------------------------- /Win32/Release/platforms/qoffscreen.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/platforms/qoffscreen.dll -------------------------------------------------------------------------------- /Win32/Release/platforms/qwindows.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/platforms/qwindows.dll -------------------------------------------------------------------------------- /Win32/Release/qtcef3.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/qtcef3.exe -------------------------------------------------------------------------------- /Win32/Release/snapshot_blob.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/snapshot_blob.bin -------------------------------------------------------------------------------- /Win32/Release/widevinecdmadapter.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/widevinecdmadapter.dll -------------------------------------------------------------------------------- /Win32/Release/wow_helper.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/Win32/Release/wow_helper.exe -------------------------------------------------------------------------------- /qtcef3.sln: -------------------------------------------------------------------------------- 1 |  2 | Microsoft Visual Studio Solution File, Format Version 12.00 3 | # Visual Studio 2013 4 | VisualStudioVersion = 12.0.21005.1 5 | MinimumVisualStudioVersion = 10.0.40219.1 6 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "qtcef3", "qtcef3\qtcef3.vcxproj", "{B12702AD-ABFB-343A-A199-8E24837244A3}" 7 | EndProject 8 | Global 9 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 10 | Debug|Win32 = Debug|Win32 11 | Release|Win32 = Release|Win32 12 | EndGlobalSection 13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 14 | {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|Win32.ActiveCfg = Debug|Win32 15 | {B12702AD-ABFB-343A-A199-8E24837244A3}.Debug|Win32.Build.0 = Debug|Win32 16 | {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|Win32.ActiveCfg = Release|Win32 17 | {B12702AD-ABFB-343A-A199-8E24837244A3}.Release|Win32.Build.0 = Release|Win32 18 | EndGlobalSection 19 | GlobalSection(SolutionProperties) = preSolution 20 | HideSolutionNode = FALSE 21 | EndGlobalSection 22 | EndGlobal 23 | -------------------------------------------------------------------------------- /qtcef3/GeneratedFiles/Release/moc_qtcef3.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Meta object code from reading C++ file 'qtcef3.h' 3 | ** 4 | ** Created by: The Qt Meta Object Compiler version 67 (Qt 5.5.1) 5 | ** 6 | ** WARNING! All changes made in this file will be lost! 7 | *****************************************************************************/ 8 | 9 | #include "../../qtcef3.h" 10 | #include 11 | #include 12 | #if !defined(Q_MOC_OUTPUT_REVISION) 13 | #error "The header file 'qtcef3.h' doesn't include ." 14 | #elif Q_MOC_OUTPUT_REVISION != 67 15 | #error "This file was generated using the moc from 5.5.1. It" 16 | #error "cannot be used with the include files from this version of Qt." 17 | #error "(The moc has changed too much.)" 18 | #endif 19 | 20 | QT_BEGIN_MOC_NAMESPACE 21 | struct qt_meta_stringdata_qtcef3_t { 22 | QByteArrayData data[1]; 23 | char stringdata0[7]; 24 | }; 25 | #define QT_MOC_LITERAL(idx, ofs, len) \ 26 | Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \ 27 | qptrdiff(offsetof(qt_meta_stringdata_qtcef3_t, stringdata0) + ofs \ 28 | - idx * sizeof(QByteArrayData)) \ 29 | ) 30 | static const qt_meta_stringdata_qtcef3_t qt_meta_stringdata_qtcef3 = { 31 | { 32 | QT_MOC_LITERAL(0, 0, 6) // "qtcef3" 33 | 34 | }, 35 | "qtcef3" 36 | }; 37 | #undef QT_MOC_LITERAL 38 | 39 | static const uint qt_meta_data_qtcef3[] = { 40 | 41 | // content: 42 | 7, // revision 43 | 0, // classname 44 | 0, 0, // classinfo 45 | 0, 0, // methods 46 | 0, 0, // properties 47 | 0, 0, // enums/sets 48 | 0, 0, // constructors 49 | 0, // flags 50 | 0, // signalCount 51 | 52 | 0 // eod 53 | }; 54 | 55 | void qtcef3::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a) 56 | { 57 | Q_UNUSED(_o); 58 | Q_UNUSED(_id); 59 | Q_UNUSED(_c); 60 | Q_UNUSED(_a); 61 | } 62 | 63 | const QMetaObject qtcef3::staticMetaObject = { 64 | { &QMainWindow::staticMetaObject, qt_meta_stringdata_qtcef3.data, 65 | qt_meta_data_qtcef3, qt_static_metacall, Q_NULLPTR, Q_NULLPTR} 66 | }; 67 | 68 | 69 | const QMetaObject *qtcef3::metaObject() const 70 | { 71 | return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject; 72 | } 73 | 74 | void *qtcef3::qt_metacast(const char *_clname) 75 | { 76 | if (!_clname) return Q_NULLPTR; 77 | if (!strcmp(_clname, qt_meta_stringdata_qtcef3.stringdata0)) 78 | return static_cast(const_cast< qtcef3*>(this)); 79 | return QMainWindow::qt_metacast(_clname); 80 | } 81 | 82 | int qtcef3::qt_metacall(QMetaObject::Call _c, int _id, void **_a) 83 | { 84 | _id = QMainWindow::qt_metacall(_c, _id, _a); 85 | if (_id < 0) 86 | return _id; 87 | return _id; 88 | } 89 | QT_END_MOC_NAMESPACE 90 | -------------------------------------------------------------------------------- /qtcef3/GeneratedFiles/qrc_qtcef3.cpp: -------------------------------------------------------------------------------- 1 | /**************************************************************************** 2 | ** Resource object code 3 | ** 4 | ** Created by: The Resource Compiler for Qt version 5.5.1 5 | ** 6 | ** WARNING! All changes made in this file will be lost! 7 | *****************************************************************************/ 8 | 9 | #ifdef QT_NAMESPACE 10 | # define QT_RCC_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name 11 | # define QT_RCC_MANGLE_NAMESPACE0(x) x 12 | # define QT_RCC_MANGLE_NAMESPACE1(a, b) a##_##b 13 | # define QT_RCC_MANGLE_NAMESPACE2(a, b) QT_RCC_MANGLE_NAMESPACE1(a,b) 14 | # define QT_RCC_MANGLE_NAMESPACE(name) QT_RCC_MANGLE_NAMESPACE2( \ 15 | QT_RCC_MANGLE_NAMESPACE0(name), QT_RCC_MANGLE_NAMESPACE0(QT_NAMESPACE)) 16 | #else 17 | # define QT_RCC_PREPEND_NAMESPACE(name) name 18 | # define QT_RCC_MANGLE_NAMESPACE(name) name 19 | #endif 20 | 21 | #ifdef QT_NAMESPACE 22 | namespace QT_NAMESPACE { 23 | #endif 24 | 25 | #ifdef QT_NAMESPACE 26 | } 27 | #endif 28 | 29 | int QT_RCC_MANGLE_NAMESPACE(qInitResources_qtcef3)(); 30 | int QT_RCC_MANGLE_NAMESPACE(qInitResources_qtcef3)() 31 | { 32 | return 1; 33 | } 34 | 35 | int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qtcef3)(); 36 | int QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qtcef3)() 37 | { 38 | return 1; 39 | } 40 | 41 | namespace { 42 | struct initializer { 43 | initializer() { QT_RCC_MANGLE_NAMESPACE(qInitResources_qtcef3)(); } 44 | ~initializer() { QT_RCC_MANGLE_NAMESPACE(qCleanupResources_qtcef3)(); } 45 | } dummy; 46 | } 47 | -------------------------------------------------------------------------------- /qtcef3/GeneratedFiles/ui_qtcef3.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | ** Form generated from reading UI file 'qtcef3.ui' 3 | ** 4 | ** Created by: Qt User Interface Compiler version 5.5.1 5 | ** 6 | ** WARNING! All changes made in this file will be lost when recompiling UI file! 7 | ********************************************************************************/ 8 | 9 | #ifndef UI_QTCEF3_H 10 | #define UI_QTCEF3_H 11 | 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | QT_BEGIN_NAMESPACE 22 | 23 | class Ui_qtcef3Class 24 | { 25 | public: 26 | QWidget *centralWidget; 27 | QStatusBar *statusBar; 28 | 29 | void setupUi(QMainWindow *qtcef3Class) 30 | { 31 | if (qtcef3Class->objectName().isEmpty()) 32 | qtcef3Class->setObjectName(QStringLiteral("qtcef3Class")); 33 | qtcef3Class->resize(600, 400); 34 | centralWidget = new QWidget(qtcef3Class); 35 | centralWidget->setObjectName(QStringLiteral("centralWidget")); 36 | qtcef3Class->setCentralWidget(centralWidget); 37 | statusBar = new QStatusBar(qtcef3Class); 38 | statusBar->setObjectName(QStringLiteral("statusBar")); 39 | qtcef3Class->setStatusBar(statusBar); 40 | 41 | retranslateUi(qtcef3Class); 42 | 43 | QMetaObject::connectSlotsByName(qtcef3Class); 44 | } // setupUi 45 | 46 | void retranslateUi(QMainWindow *qtcef3Class) 47 | { 48 | qtcef3Class->setWindowTitle(QApplication::translate("qtcef3Class", "qtcef3", 0)); 49 | } // retranslateUi 50 | 51 | }; 52 | 53 | namespace Ui { 54 | class qtcef3Class: public Ui_qtcef3Class {}; 55 | } // namespace Ui 56 | 57 | QT_END_NAMESPACE 58 | 59 | #endif // UI_QTCEF3_H 60 | -------------------------------------------------------------------------------- /qtcef3/cefclient_app.cpp: -------------------------------------------------------------------------------- 1 | #include "cefclient_app.h" 2 | 3 | #include 4 | 5 | #include "cefclient_handler.h" 6 | #include "include/cef_browser.h" 7 | #include "include/cef_command_line.h" 8 | #include "include/wrapper/cef_helpers.h" 9 | 10 | 11 | cefclient_app::cefclient_app() 12 | { 13 | 14 | 15 | } 16 | 17 | void cefclient_app::OnContextInitialized(){ 18 | CEF_REQUIRE_UI_THREAD(); 19 | 20 | } 21 | 22 | void cefclient_app::OnWebKitInitialized() 23 | { 24 | CefMessageRouterConfig config; 25 | message_router_ = CefMessageRouterRendererSide::Create(config); 26 | } 27 | 28 | void cefclient_app::OnContextCreated( 29 | CefRefPtr browser, 30 | CefRefPtr frame, 31 | CefRefPtr context){ 32 | 33 | message_router_->OnContextCreated(browser, frame, context); 34 | } 35 | -------------------------------------------------------------------------------- /qtcef3/cefclient_app.h: -------------------------------------------------------------------------------- 1 | #include "include/cef_app.h" 2 | #include "include/wrapper/cef_message_router.h" 3 | 4 | 5 | class cefclient_app :public CefApp, 6 | public CefBrowserProcessHandler, 7 | public CefRenderProcessHandler 8 | { 9 | 10 | public: 11 | cefclient_app(); 12 | virtual CefRefPtr GetBrowserProcessHandler() 13 | OVERRIDE{ return this; } 14 | virtual CefRefPtrGetRenderProcessHandler()OVERRIDE{ 15 | return this; 16 | } 17 | virtual void OnContextInitialized()OVERRIDE; 18 | virtual void OnWebKitInitialized(); 19 | virtual void OnContextCreated(CefRefPtr browser, 20 | CefRefPtr frame, 21 | CefRefPtr context); 22 | 23 | private: 24 | HWND m_hParent; 25 | RECT m_WindowRect; 26 | CefRefPtr message_router_; 27 | 28 | IMPLEMENT_REFCOUNTING(cefclient_app); 29 | 30 | }; -------------------------------------------------------------------------------- /qtcef3/cefclient_handler.cpp: -------------------------------------------------------------------------------- 1 | #include "cefclient_handler.h" 2 | 3 | #include 4 | #include 5 | 6 | #include "include/base/cef_bind.h" 7 | #include "include/cef_app.h" 8 | #include "include/wrapper/cef_closure_task.h" 9 | #include "include/wrapper/cef_helpers.h" 10 | #include "window_test.h" 11 | 12 | 13 | 14 | cefclient_handler* g_instance = NULL; 15 | 16 | 17 | cefclient_handler::cefclient_handler() 18 | : is_closing_(false){ 19 | DCHECK(!g_instance); 20 | g_instance = this; 21 | } 22 | 23 | cefclient_handler::~cefclient_handler() 24 | { 25 | g_instance = NULL; 26 | } 27 | 28 | cefclient_handler* cefclient_handler::GetInstance(){ 29 | return g_instance; 30 | } 31 | 32 | void cefclient_handler::OnAfterCreated(CefRefPtr browser){ 33 | CEF_REQUIRE_UI_THREAD(); 34 | 35 | browser_list_.push_back(browser); 36 | m_Browser = browser; 37 | 38 | if (!message_router_) 39 | { 40 | CefMessageRouterConfig config; 41 | message_router_ = CefMessageRouterBrowserSide::Create(config); 42 | 43 | window_test::CreateMessageHandlers(message_handler_set_); 44 | MessageHandlerSet::const_iterator it = message_handler_set_.begin(); 45 | for (; it != message_handler_set_.end(); ++it) 46 | { 47 | message_router_->AddHandler(*(it), false); 48 | } 49 | 50 | } 51 | 52 | } 53 | 54 | bool cefclient_handler::DoClose(CefRefPtr browser){ 55 | CEF_REQUIRE_UI_THREAD(); 56 | 57 | 58 | 59 | if (browser_list_.size() == 1){ 60 | is_closing_ = true; 61 | } 62 | 63 | return false; 64 | } 65 | 66 | void cefclient_handler::OnBeforeClose(CefRefPtr browser){ 67 | CEF_REQUIRE_UI_THREAD(); 68 | 69 | BrowserList::iterator bit = browser_list_.begin(); 70 | for (; bit != browser_list_.end(); ++bit){ 71 | if ((*bit)->IsSame(browser)){ 72 | browser_list_.erase(bit); 73 | break; 74 | } 75 | } 76 | 77 | if (browser_list_.empty()){ 78 | CefQuitMessageLoop(); 79 | } 80 | } 81 | 82 | void cefclient_handler::OnLoadError(CefRefPtr browser, 83 | CefRefPtr frame, 84 | ErrorCode errorCode, 85 | const CefString& errorText, 86 | const CefString& failedUrl){ 87 | CEF_REQUIRE_UI_THREAD(); 88 | 89 | if (errorCode == ERR_ABORTED) 90 | return; 91 | 92 | std::stringstream ss; 93 | 94 | ss << "" 95 | "

Failed to load URL " << std::string(failedUrl) << 96 | "with error" << std::string(errorText) << " ( " << errorCode << 97 | ").

"; 98 | 99 | frame->LoadStringW(ss.str(), failedUrl); 100 | } 101 | 102 | 103 | void cefclient_handler::CloseAllBrowsers(bool force_close){ 104 | if (!CefCurrentlyOn(TID_UI)){ 105 | CefPostTask(TID_UI, 106 | base::Bind(&cefclient_handler::CloseAllBrowsers, this, force_close) 107 | ); 108 | } 109 | 110 | if (browser_list_.empty()) 111 | return; 112 | 113 | BrowserList::const_iterator it = browser_list_.begin(); 114 | for (; it != browser_list_.end(); ++it) 115 | (*it)->GetHost()->CloseBrowser(force_close); 116 | } 117 | 118 | 119 | bool cefclient_handler::OnBeforeBrowse(CefRefPtr browser, 120 | CefRefPtr frame, 121 | CefRefPtr request, 122 | bool is_redirect){ 123 | CEF_REQUIRE_UI_THREAD(); 124 | 125 | message_router_->OnBeforeBrowse(browser, frame); 126 | return false; 127 | 128 | } 129 | 130 | 131 | const char kFocusedNodeChangedMessage[] = "ClientRenderer.FocusedNodeChanged"; 132 | bool cefclient_handler::OnProcessMessageReceived( 133 | CefRefPtr browser, 134 | CefProcessId source_process, 135 | CefRefPtr message){ 136 | CEF_REQUIRE_UI_THREAD(); 137 | 138 | if (message_router_->OnProcessMessageReceived(browser, 139 | source_process, 140 | message 141 | )) 142 | { 143 | return true; 144 | } 145 | 146 | std::string message_name = message->GetName(); 147 | if (message_name == kFocusedNodeChangedMessage){ 148 | 149 | return true; 150 | } 151 | 152 | 153 | return false; 154 | } -------------------------------------------------------------------------------- /qtcef3/cefclient_handler.h: -------------------------------------------------------------------------------- 1 | #ifndef CEF_CLIENT_HANDLE_H_ 2 | #define CEF_CLIENT_HANDLE_H_ 3 | 4 | #include "include/cef_client.h" 5 | #include "include/wrapper/cef_message_router.h" 6 | #include "include/cef_render_process_handler.h" 7 | 8 | #include 9 | #include 10 | 11 | class cefclient_handler : public CefClient, 12 | public CefContextMenuHandler, 13 | public CefDisplayHandler, 14 | public CefDragHandler, 15 | public CefGeolocationHandler, 16 | public CefKeyboardHandler, 17 | public CefLifeSpanHandler, 18 | public CefLoadHandler, 19 | public CefRequestHandler 20 | { 21 | 22 | public: 23 | cefclient_handler(); 24 | ~cefclient_handler(); 25 | 26 | static cefclient_handler* GetInstance(); 27 | 28 | // CefClient methods 29 | CefRefPtr GetContextMenuHandler() OVERRIDE{ 30 | return this; 31 | } 32 | 33 | CefRefPtr GetDisplayHandler() OVERRIDE{ 34 | return this; 35 | } 36 | CefRefPtr GetDragHandler() OVERRIDE{ 37 | return this; 38 | } 39 | CefRefPtr GetGeolocationHandler() OVERRIDE{ 40 | return this; 41 | } 42 | CefRefPtr GetKeyboardHandler() OVERRIDE{ 43 | return this; 44 | } 45 | CefRefPtr GetLifeSpanHandler() OVERRIDE{ 46 | return this; 47 | } 48 | CefRefPtr GetLoadHandler() OVERRIDE{ 49 | return this; 50 | } 51 | CefRefPtr GetRequestHandler() OVERRIDE{ 52 | return this; 53 | } 54 | bool OnProcessMessageReceived(CefRefPtr browser, 55 | CefProcessId source_process, 56 | CefRefPtr message) OVERRIDE; 57 | 58 | 59 | //CefDisplayHandler methods: 60 | virtual void OnTitleChange(CefRefPtr browser, 61 | const CefString& title)OVERRIDE; 62 | 63 | //CefLifeSpanHandler methods 64 | virtual void OnAfterCreated(CefRefPtr browser) OVERRIDE; 65 | virtual bool DoClose(CefRefPtr browser)OVERRIDE; 66 | virtual void OnBeforeClose(CefRefPtr browser)OVERRIDE; 67 | 68 | 69 | //CefLoadHandler methods: 70 | virtual void OnLoadError(CefRefPtr browser, 71 | CefRefPtr frame, 72 | ErrorCode errorCode, 73 | const CefString& errorText, 74 | const CefString& failedUrl) OVERRIDE; 75 | 76 | //CefRequestHandler methods 77 | virtual bool OnBeforeBrowse(CefRefPtr browser, 78 | CefRefPtr frame, 79 | CefRefPtr request, 80 | bool is_redirect)OVERRIDE; 81 | 82 | //Request that all existing browser windows close 83 | 84 | void CloseAllBrowsers(bool force_close); 85 | 86 | bool IsClosing() const { return is_closing_; } 87 | private: 88 | typedef std::set MessageHandlerSet; 89 | 90 | private: 91 | typedef std::list> BrowserList; 92 | BrowserList browser_list_; 93 | CefRefPtr message_router_; 94 | MessageHandlerSet message_handler_set_; 95 | 96 | bool is_closing_; 97 | public: 98 | CefRefPtr m_Browser; 99 | 100 | //Include the default reference counting implementation. 101 | IMPLEMENT_REFCOUNTING(cefclient_handler); 102 | DISALLOW_COPY_AND_ASSIGN(cefclient_handler); 103 | 104 | }; 105 | 106 | 107 | 108 | 109 | 110 | 111 | #endif // !CEF_CLIENT_HANDLE_H_ 112 | -------------------------------------------------------------------------------- /qtcef3/cefclient_handler_win.cpp: -------------------------------------------------------------------------------- 1 | #include "cefclient_handler.h" 2 | 3 | #include 4 | #include 5 | 6 | #include "include/cef_browser.h" 7 | #include "include/wrapper/cef_helpers.h" 8 | 9 | void cefclient_handler::OnTitleChange(CefRefPtr browser, 10 | const CefString& title){ 11 | CEF_REQUIRE_UI_THREAD(); 12 | 13 | CefWindowHandle hwnd = browser->GetHost()->GetWindowHandle(); 14 | SetWindowText(hwnd, std::wstring(title).c_str()); 15 | } -------------------------------------------------------------------------------- /qtcef3/ceflib/Release/cef_sandbox.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/qtcef3/ceflib/Release/cef_sandbox.lib -------------------------------------------------------------------------------- /qtcef3/ceflib/Release/libcef.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/qtcef3/ceflib/Release/libcef.lib -------------------------------------------------------------------------------- /qtcef3/ceflib/Release/libcef_dll_wrapper.lib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/qtcef3/ceflib/Release/libcef_dll_wrapper.lib -------------------------------------------------------------------------------- /qtcef3/cefview.cpp: -------------------------------------------------------------------------------- 1 | #include "cefview.h" 2 | #include "cefclient_handler.h" 3 | 4 | extern cefclient_handler* g_instance; 5 | 6 | CefView::CefView(QWidget *parent) :QWidget(parent) 7 | { 8 | 9 | } 10 | 11 | CefView::~CefView() 12 | { 13 | 14 | } 15 | 16 | void CefView::resizeEvent(QResizeEvent *event) 17 | { 18 | if (g_instance) 19 | { 20 | if (g_instance->m_Browser) 21 | { 22 | HWND hwnd = g_instance->m_Browser->GetHost()->GetWindowHandle(); 23 | 24 | if (hwnd) 25 | { 26 | SetWindowPos(hwnd, NULL, 0, 0, 27 | width(), 28 | height(), 29 | SWP_NOZORDER 30 | ); 31 | } 32 | } 33 | } 34 | } 35 | 36 | void CefView::CreateBrowser(std::string url) 37 | { 38 | bool bRet; 39 | 40 | CefWindowInfo window_info; 41 | RECT rect; 42 | rect.left = 0; 43 | rect.top = 0; 44 | rect.right = width(); 45 | rect.bottom = height(); 46 | 47 | window_info.SetAsChild((HWND)winId(),rect); 48 | 49 | CefRefPtr handler(new cefclient_handler()); 50 | 51 | CefBrowserSettings browser_settings; 52 | 53 | url = "file:///index.html"; 54 | bRet = CefBrowserHost::CreateBrowser(window_info, handler.get(), url, 55 | browser_settings, NULL); 56 | } -------------------------------------------------------------------------------- /qtcef3/cefview.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "QtWidgets/QWidget" 5 | 6 | 7 | 8 | class CefView :public QWidget 9 | { 10 | public: 11 | CefView(QWidget *parent); 12 | ~CefView(); 13 | 14 | public: 15 | void resizeEvent(QResizeEvent *event); 16 | void CreateBrowser(std::string url); 17 | 18 | 19 | }; 20 | 21 | 22 | -------------------------------------------------------------------------------- /qtcef3/debug.log: -------------------------------------------------------------------------------- 1 | [0725/145918:ERROR:renderer_main.cc(200)] Running without renderer sandbox 2 | [0725/150124:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 3 | [0725/150301:ERROR:renderer_main.cc(200)] Running without renderer sandbox 4 | [0725/150635:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 5 | [0725/151929:ERROR:renderer_main.cc(200)] Running without renderer sandbox 6 | [0725/151931:ERROR:ipc_channel_win.cc(435)] pipe error: 232 7 | [0725/151931:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 8 | [0725/154534:ERROR:renderer_main.cc(200)] Running without renderer sandbox 9 | [0725/154536:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 10 | [0725/154625:ERROR:renderer_main.cc(200)] Running without renderer sandbox 11 | [0725/154627:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 12 | [0725/154700:ERROR:renderer_main.cc(200)] Running without renderer sandbox 13 | [0725/154702:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 14 | [0725/154718:ERROR:renderer_main.cc(200)] Running without renderer sandbox 15 | [0725/154725:ERROR:ipc_channel_win.cc(435)] pipe error: 232 16 | [0725/154725:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 17 | [0725/154804:ERROR:renderer_main.cc(200)] Running without renderer sandbox 18 | [0725/154830:ERROR:renderer_main.cc(200)] Running without renderer sandbox 19 | [0725/154901:ERROR:renderer_main.cc(200)] Running without renderer sandbox 20 | [0725/154911:ERROR:ipc_channel_win.cc(435)] pipe error: 232 21 | [0725/154911:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 22 | [0725/154938:ERROR:renderer_main.cc(200)] Running without renderer sandbox 23 | [0725/154940:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 24 | [0725/155642:ERROR:renderer_main.cc(200)] Running without renderer sandbox 25 | [0725/155644:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 26 | [0725/155647:ERROR:renderer_main.cc(200)] Running without renderer sandbox 27 | [0725/155657:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 28 | [0725/155715:ERROR:renderer_main.cc(200)] Running without renderer sandbox 29 | [0725/155717:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 30 | [0727/181707:ERROR:renderer_main.cc(200)] Running without renderer sandbox 31 | [0727/181723:ERROR:gles2_cmd_decoder.cc(12822)] [GroupMarkerNotSet(crbug.com/242999)!:9CCF1301]GL ERROR :GL_INVALID_OPERATION : glCreateAndConsumeTextureCHROMIUM: invalid mailbox name 32 | [0727/181723:ERROR:gles2_cmd_decoder.cc(6833)] [GroupMarkerNotSet(crbug.com/242999)!:9CCF1301]RENDER WARNING: texture bound to texture unit 0 is not renderable. It maybe non-power-of-2 and have incompatible texture filtering. 33 | [0727/181723:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 34 | [0731/204351:ERROR:renderer_main.cc(200)] Running without renderer sandbox 35 | [0731/204405:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 36 | [0731/204456:ERROR:renderer_main.cc(200)] Running without renderer sandbox 37 | [0731/204504:ERROR:ipc_channel_win.cc(435)] pipe error: 232 38 | [0731/204504:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 39 | [0803/081926:ERROR:renderer_main.cc(200)] Running without renderer sandbox 40 | [0803/082010:ERROR:renderer_main.cc(200)] Running without renderer sandbox 41 | [0803/082049:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 42 | [0803/204332:ERROR:renderer_main.cc(200)] Running without renderer sandbox 43 | [0803/204349:ERROR:renderer_main.cc(200)] Running without renderer sandbox 44 | [0803/204412:ERROR:renderer_main.cc(200)] Running without renderer sandbox 45 | [0803/204416:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 46 | [0803/204418:ERROR:renderer_main.cc(200)] Running without renderer sandbox 47 | [0803/204434:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 48 | [0803/204444:ERROR:renderer_main.cc(200)] Running without renderer sandbox 49 | [0803/204502:ERROR:ipc_channel_win.cc(435)] pipe error: 232 50 | [0803/204502:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 51 | [0803/205051:ERROR:renderer_main.cc(200)] Running without renderer sandbox 52 | [0803/205124:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 53 | [0808/121325:ERROR:renderer_main.cc(200)] Running without renderer sandbox 54 | [0808/121350:WARNING:pref_notifier_impl.cc(27)] pref observer found at shutdown proxy 55 | -------------------------------------------------------------------------------- /qtcef3/include/base/cef_basictypes.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. Portions copyright (c) 2012 2 | // Google Inc. All rights reserved. 3 | // 4 | // Redistribution and use in source and binary forms, with or without 5 | // modification, are permitted provided that the following conditions are 6 | // met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above 11 | // copyright notice, this list of conditions and the following disclaimer 12 | // in the documentation and/or other materials provided with the 13 | // distribution. 14 | // * Neither the name of Google Inc. nor the name Chromium Embedded 15 | // Framework nor the names of its contributors may be used to endorse 16 | // or promote products derived from this software without specific prior 17 | // written permission. 18 | // 19 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | #ifndef CEF_INCLUDE_BASE_CEF_BASICTYPES_H_ 32 | #define CEF_INCLUDE_BASE_CEF_BASICTYPES_H_ 33 | #pragma once 34 | 35 | #if defined(BUILDING_CEF_SHARED) 36 | // When building CEF include the Chromium header directly. 37 | #include "base/basictypes.h" 38 | #else // !BUILDING_CEF_SHARED 39 | // The following is substantially similar to the Chromium implementation. 40 | // If the Chromium implementation diverges the below implementation should be 41 | // updated to match. 42 | 43 | #include // For UINT_MAX 44 | #include // For size_t 45 | 46 | #include "include/base/cef_build.h" 47 | 48 | // The NSPR system headers define 64-bit as |long| when possible, except on 49 | // Mac OS X. In order to not have typedef mismatches, we do the same on LP64. 50 | // 51 | // On Mac OS X, |long long| is used for 64-bit types for compatibility with 52 | // format macros even in the LP64 model. 53 | #if defined(__LP64__) && !defined(OS_MACOSX) && !defined(OS_OPENBSD) 54 | typedef long int64; // NOLINT(runtime/int) 55 | typedef unsigned long uint64; // NOLINT(runtime/int) 56 | #else 57 | typedef long long int64; // NOLINT(runtime/int) 58 | typedef unsigned long long uint64; // NOLINT(runtime/int) 59 | #endif 60 | 61 | // TODO: Remove these type guards. These are to avoid conflicts with 62 | // obsolete/protypes.h in the Gecko SDK. 63 | #ifndef _INT32 64 | #define _INT32 65 | typedef int int32; 66 | #endif 67 | 68 | // TODO: Remove these type guards. These are to avoid conflicts with 69 | // obsolete/protypes.h in the Gecko SDK. 70 | #ifndef _UINT32 71 | #define _UINT32 72 | typedef unsigned int uint32; 73 | #endif 74 | 75 | #endif // !BUILDING_CEF_SHARED 76 | 77 | // UTF-16 character type. 78 | // This should be kept synchronized with base/strings/string16.h 79 | #ifndef char16 80 | #if defined(WCHAR_T_IS_UTF16) 81 | typedef wchar_t char16; 82 | #elif defined(WCHAR_T_IS_UTF32) 83 | typedef unsigned short char16; 84 | #endif 85 | #endif 86 | 87 | #endif // CEF_INCLUDE_BASE_CEF_BASICTYPES_H_ 88 | -------------------------------------------------------------------------------- /qtcef3/include/base/cef_callback_forward.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. Portions copyright (c) 2011 2 | // Google Inc. All rights reserved. 3 | // 4 | // Redistribution and use in source and binary forms, with or without 5 | // modification, are permitted provided that the following conditions are 6 | // met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above 11 | // copyright notice, this list of conditions and the following disclaimer 12 | // in the documentation and/or other materials provided with the 13 | // distribution. 14 | // * Neither the name of Google Inc. nor the name Chromium Embedded 15 | // Framework nor the names of its contributors may be used to endorse 16 | // or promote products derived from this software without specific prior 17 | // written permission. 18 | // 19 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | #ifndef INCLUDE_BASE_CEF_CALLBACK_FORWARD_H_ 32 | #define INCLUDE_BASE_CEF_CALLBACK_FORWARD_H_ 33 | #pragma once 34 | 35 | #if defined(BASE_CALLBACK_FORWARD_H_) 36 | // Do nothing if the Chromium header has already been included. 37 | // This can happen in cases where Chromium code is used directly by the 38 | // client application. When using Chromium code directly always include 39 | // the Chromium header first to avoid type conflicts. 40 | #elif defined(BUILDING_CEF_SHARED) 41 | // When building CEF include the Chromium header directly. 42 | #include "base/callback_forward.h" 43 | #else // !BUILDING_CEF_SHARED 44 | // The following is substantially similar to the Chromium implementation. 45 | // If the Chromium implementation diverges the below implementation should be 46 | // updated to match. 47 | 48 | namespace base { 49 | 50 | template 51 | class Callback; 52 | 53 | typedef Callback Closure; 54 | 55 | } // namespace base 56 | 57 | #endif // !!BUILDING_CEF_SHARED 58 | 59 | #endif // INCLUDE_BASE_CEF_CALLBACK_FORWARD_H_ 60 | -------------------------------------------------------------------------------- /qtcef3/include/base/cef_callback_helpers.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. Portions copyright (c) 2012 2 | // Google Inc. All rights reserved. 3 | // 4 | // Redistribution and use in source and binary forms, with or without 5 | // modification, are permitted provided that the following conditions are 6 | // met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above 11 | // copyright notice, this list of conditions and the following disclaimer 12 | // in the documentation and/or other materials provided with the 13 | // distribution. 14 | // * Neither the name of Google Inc. nor the name Chromium Embedded 15 | // Framework nor the names of its contributors may be used to endorse 16 | // or promote products derived from this software without specific prior 17 | // written permission. 18 | // 19 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | // This defines helpful methods for dealing with Callbacks. Because Callbacks 32 | // are implemented using templates, with a class per callback signature, adding 33 | // methods to Callback<> itself is unattractive (lots of extra code gets 34 | // generated). Instead, consider adding methods here. 35 | // 36 | // ResetAndReturn(&cb) is like cb.Reset() but allows executing a callback (via a 37 | // copy) after the original callback is Reset(). This can be handy if Run() 38 | // reads/writes the variable holding the Callback. 39 | 40 | #ifndef CEF_INCLUDE_BASE_CEF_CALLBACK_HELPERS_H_ 41 | #define CEF_INCLUDE_BASE_CEF_CALLBACK_HELPERS_H_ 42 | #pragma once 43 | 44 | #if defined(BASE_CALLBACK_HELPERS_H_) 45 | // Do nothing if the Chromium header has already been included. 46 | // This can happen in cases where Chromium code is used directly by the 47 | // client application. When using Chromium code directly always include 48 | // the Chromium header first to avoid type conflicts. 49 | #elif defined(BUILDING_CEF_SHARED) 50 | // When building CEF include the Chromium header directly. 51 | #include "base/callback_helpers.h" 52 | #else // !BUILDING_CEF_SHARED 53 | // The following is substantially similar to the Chromium implementation. 54 | // If the Chromium implementation diverges the below implementation should be 55 | // updated to match. 56 | 57 | #include "include/base/cef_basictypes.h" 58 | #include "include/base/cef_build.h" 59 | #include "include/base/cef_callback.h" 60 | #include "include/base/cef_macros.h" 61 | 62 | namespace base { 63 | 64 | template 65 | base::Callback ResetAndReturn(base::Callback* cb) { 66 | base::Callback ret(*cb); 67 | cb->Reset(); 68 | return ret; 69 | } 70 | 71 | // ScopedClosureRunner is akin to scoped_ptr for Closures. It ensures that the 72 | // Closure is executed and deleted no matter how the current scope exits. 73 | class ScopedClosureRunner { 74 | public: 75 | ScopedClosureRunner(); 76 | explicit ScopedClosureRunner(const Closure& closure); 77 | ~ScopedClosureRunner(); 78 | 79 | void Reset(); 80 | void Reset(const Closure& closure); 81 | Closure Release() WARN_UNUSED_RESULT; 82 | 83 | private: 84 | Closure closure_; 85 | 86 | DISALLOW_COPY_AND_ASSIGN(ScopedClosureRunner); 87 | }; 88 | 89 | } // namespace base 90 | 91 | #endif // !BUILDING_CEF_SHARED 92 | 93 | #endif // CEF_INCLUDE_BASE_CEF_CALLBACK_HELPERS_H_ 94 | -------------------------------------------------------------------------------- /qtcef3/include/base/internal/cef_lock_impl.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 Google Inc. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | // Do not include this header file directly. Use base/cef_lock.h instead. 31 | 32 | #ifndef CEF_INCLUDE_BASE_INTERNAL_CEF_LOCK_IMPL_H_ 33 | #define CEF_INCLUDE_BASE_INTERNAL_CEF_LOCK_IMPL_H_ 34 | 35 | #include "include/base/cef_build.h" 36 | 37 | #if defined(OS_WIN) 38 | #include 39 | #elif defined(OS_POSIX) 40 | #include 41 | #endif 42 | 43 | #include "include/base/cef_macros.h" 44 | 45 | namespace base { 46 | namespace cef_internal { 47 | 48 | // This class implements the underlying platform-specific spin-lock mechanism 49 | // used for the Lock class. Most users should not use LockImpl directly, but 50 | // should instead use Lock. 51 | class LockImpl { 52 | public: 53 | #if defined(OS_WIN) 54 | typedef CRITICAL_SECTION NativeHandle; 55 | #elif defined(OS_POSIX) 56 | typedef pthread_mutex_t NativeHandle; 57 | #endif 58 | 59 | LockImpl(); 60 | ~LockImpl(); 61 | 62 | // If the lock is not held, take it and return true. If the lock is already 63 | // held by something else, immediately return false. 64 | bool Try(); 65 | 66 | // Take the lock, blocking until it is available if necessary. 67 | void Lock(); 68 | 69 | // Release the lock. This must only be called by the lock's holder: after 70 | // a successful call to Try, or a call to Lock. 71 | void Unlock(); 72 | 73 | // Return the native underlying lock. 74 | // TODO(awalker): refactor lock and condition variables so that this is 75 | // unnecessary. 76 | NativeHandle* native_handle() { return &native_handle_; } 77 | 78 | private: 79 | NativeHandle native_handle_; 80 | 81 | DISALLOW_COPY_AND_ASSIGN(LockImpl); 82 | }; 83 | 84 | } // namespace cef_internal 85 | } // namespace base 86 | 87 | #endif // CEF_INCLUDE_BASE_INTERNAL_CEF_LOCK_IMPL_H_ 88 | -------------------------------------------------------------------------------- /qtcef3/include/base/internal/cef_thread_checker_impl.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 Google Inc. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | // Do not include this header file directly. Use base/cef_thread_checker.h 31 | // instead. 32 | 33 | #ifndef CEF_INCLUDE_BASE_INTERNAL_THREAD_CHECKER_IMPL_H_ 34 | #define CEF_INCLUDE_BASE_INTERNAL_THREAD_CHECKER_IMPL_H_ 35 | 36 | #include "include/base/cef_lock.h" 37 | #include "include/base/cef_platform_thread.h" 38 | 39 | namespace base { 40 | 41 | // Real implementation of ThreadChecker, for use in debug mode, or 42 | // for temporary use in release mode (e.g. to CHECK on a threading issue 43 | // seen only in the wild). 44 | // 45 | // Note: You should almost always use the ThreadChecker class to get the 46 | // right version for your build configuration. 47 | class ThreadCheckerImpl { 48 | public: 49 | ThreadCheckerImpl(); 50 | ~ThreadCheckerImpl(); 51 | 52 | bool CalledOnValidThread() const; 53 | 54 | // Changes the thread that is checked for in CalledOnValidThread. This may 55 | // be useful when an object may be created on one thread and then used 56 | // exclusively on another thread. 57 | void DetachFromThread(); 58 | 59 | private: 60 | void EnsureThreadIdAssigned() const; 61 | 62 | mutable base::Lock lock_; 63 | // This is mutable so that CalledOnValidThread can set it. 64 | // It's guarded by |lock_|. 65 | mutable PlatformThreadRef valid_thread_id_; 66 | }; 67 | 68 | } // namespace base 69 | 70 | #endif // CEF_INCLUDE_BASE_INTERNAL_THREAD_CHECKER_IMPL_H_ 71 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_auth_callback_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_AUTH_CALLBACK_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_AUTH_CALLBACK_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Callback structure used for asynchronous continuation of authentication 50 | // requests. 51 | /// 52 | typedef struct _cef_auth_callback_t { 53 | /// 54 | // Base structure. 55 | /// 56 | cef_base_t base; 57 | 58 | /// 59 | // Continue the authentication request. 60 | /// 61 | void (CEF_CALLBACK *cont)(struct _cef_auth_callback_t* self, 62 | const cef_string_t* username, const cef_string_t* password); 63 | 64 | /// 65 | // Cancel the authentication request. 66 | /// 67 | void (CEF_CALLBACK *cancel)(struct _cef_auth_callback_t* self); 68 | } cef_auth_callback_t; 69 | 70 | 71 | #ifdef __cplusplus 72 | } 73 | #endif 74 | 75 | #endif // CEF_INCLUDE_CAPI_CEF_AUTH_CALLBACK_CAPI_H_ 76 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_base_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | 31 | #ifndef CEF_INCLUDE_CAPI_CEF_BASE_CAPI_H_ 32 | #define CEF_INCLUDE_CAPI_CEF_BASE_CAPI_H_ 33 | 34 | #include 35 | 36 | #include "include/internal/cef_export.h" 37 | #include "include/internal/cef_string.h" 38 | #include "include/internal/cef_string_list.h" 39 | #include "include/internal/cef_string_map.h" 40 | #include "include/internal/cef_string_multimap.h" 41 | #include "include/internal/cef_types.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | /// 48 | // Structure defining the reference count implementation functions. All 49 | // framework structures must include the cef_base_t structure first. 50 | /// 51 | typedef struct _cef_base_t { 52 | /// 53 | // Size of the data structure. 54 | /// 55 | size_t size; 56 | 57 | /// 58 | // Called to increment the reference count for the object. Should be called 59 | // for every new copy of a pointer to a given object. 60 | /// 61 | void (CEF_CALLBACK *add_ref)(struct _cef_base_t* self); 62 | 63 | /// 64 | // Called to decrement the reference count for the object. If the reference 65 | // count falls to 0 the object should self-delete. Returns true (1) if the 66 | // resulting reference count is 0. 67 | /// 68 | int (CEF_CALLBACK *release)(struct _cef_base_t* self); 69 | 70 | /// 71 | // Returns true (1) if the current reference count is 1. 72 | /// 73 | int (CEF_CALLBACK *has_one_ref)(struct _cef_base_t* self); 74 | } cef_base_t; 75 | 76 | 77 | // Check that the structure |s|, which is defined with a cef_base_t member named 78 | // |base|, is large enough to contain the specified member |f|. 79 | #define CEF_MEMBER_EXISTS(s, f) \ 80 | ((intptr_t)&((s)->f) - (intptr_t)(s) + sizeof((s)->f) <= \ 81 | reinterpret_cast(s)->size) 82 | 83 | #define CEF_MEMBER_MISSING(s, f) (!CEF_MEMBER_EXISTS(s, f) || !((s)->f)) 84 | 85 | 86 | #ifdef __cplusplus 87 | } 88 | #endif 89 | 90 | #endif // CEF_INCLUDE_CAPI_CEF_BASE_CAPI_H_ 91 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_callback_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_CALLBACK_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_CALLBACK_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Generic callback structure used for asynchronous continuation. 50 | /// 51 | typedef struct _cef_callback_t { 52 | /// 53 | // Base structure. 54 | /// 55 | cef_base_t base; 56 | 57 | /// 58 | // Continue processing. 59 | /// 60 | void (CEF_CALLBACK *cont)(struct _cef_callback_t* self); 61 | 62 | /// 63 | // Cancel processing. 64 | /// 65 | void (CEF_CALLBACK *cancel)(struct _cef_callback_t* self); 66 | } cef_callback_t; 67 | 68 | 69 | /// 70 | // Generic callback structure used for asynchronous completion. 71 | /// 72 | typedef struct _cef_completion_callback_t { 73 | /// 74 | // Base structure. 75 | /// 76 | cef_base_t base; 77 | 78 | /// 79 | // Method that will be called once the task is complete. 80 | /// 81 | void (CEF_CALLBACK *on_complete)(struct _cef_completion_callback_t* self); 82 | } cef_completion_callback_t; 83 | 84 | 85 | #ifdef __cplusplus 86 | } 87 | #endif 88 | 89 | #endif // CEF_INCLUDE_CAPI_CEF_CALLBACK_CAPI_H_ 90 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_drag_handler_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_DRAG_HANDLER_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_DRAG_HANDLER_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_browser_capi.h" 43 | #include "include/capi/cef_drag_data_capi.h" 44 | 45 | #ifdef __cplusplus 46 | extern "C" { 47 | #endif 48 | 49 | 50 | /// 51 | // Implement this structure to handle events related to dragging. The functions 52 | // of this structure will be called on the UI thread. 53 | /// 54 | typedef struct _cef_drag_handler_t { 55 | /// 56 | // Base structure. 57 | /// 58 | cef_base_t base; 59 | 60 | /// 61 | // Called when an external drag event enters the browser window. |dragData| 62 | // contains the drag event data and |mask| represents the type of drag 63 | // operation. Return false (0) for default drag handling behavior or true (1) 64 | // to cancel the drag event. 65 | /// 66 | int (CEF_CALLBACK *on_drag_enter)(struct _cef_drag_handler_t* self, 67 | struct _cef_browser_t* browser, struct _cef_drag_data_t* dragData, 68 | cef_drag_operations_mask_t mask); 69 | 70 | /// 71 | // Called whenever draggable regions for the browser window change. These can 72 | // be specified using the '-webkit-app-region: drag/no-drag' CSS-property. If 73 | // draggable regions are never defined in a document this function will also 74 | // never be called. If the last draggable region is removed from a document 75 | // this function will be called with an NULL vector. 76 | /// 77 | void (CEF_CALLBACK *on_draggable_regions_changed)( 78 | struct _cef_drag_handler_t* self, struct _cef_browser_t* browser, 79 | size_t regionsCount, cef_draggable_region_t const* regions); 80 | } cef_drag_handler_t; 81 | 82 | 83 | #ifdef __cplusplus 84 | } 85 | #endif 86 | 87 | #endif // CEF_INCLUDE_CAPI_CEF_DRAG_HANDLER_CAPI_H_ 88 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_find_handler_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_FIND_HANDLER_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_FIND_HANDLER_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_browser_capi.h" 43 | 44 | #ifdef __cplusplus 45 | extern "C" { 46 | #endif 47 | 48 | 49 | /// 50 | // Implement this structure to handle events related to find results. The 51 | // functions of this structure will be called on the UI thread. 52 | /// 53 | typedef struct _cef_find_handler_t { 54 | /// 55 | // Base structure. 56 | /// 57 | cef_base_t base; 58 | 59 | /// 60 | // Called to report find results returned by cef_browser_host_t::find(). 61 | // |identifer| is the identifier passed to find(), |count| is the number of 62 | // matches currently identified, |selectionRect| is the location of where the 63 | // match was found (in window coordinates), |activeMatchOrdinal| is the 64 | // current position in the search results, and |finalUpdate| is true (1) if 65 | // this is the last find notification. 66 | /// 67 | void (CEF_CALLBACK *on_find_result)(struct _cef_find_handler_t* self, 68 | struct _cef_browser_t* browser, int identifier, int count, 69 | const cef_rect_t* selectionRect, int activeMatchOrdinal, 70 | int finalUpdate); 71 | } cef_find_handler_t; 72 | 73 | 74 | #ifdef __cplusplus 75 | } 76 | #endif 77 | 78 | #endif // CEF_INCLUDE_CAPI_CEF_FIND_HANDLER_CAPI_H_ 79 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_focus_handler_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_FOCUS_HANDLER_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_FOCUS_HANDLER_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_browser_capi.h" 43 | #include "include/capi/cef_dom_capi.h" 44 | #include "include/capi/cef_frame_capi.h" 45 | 46 | #ifdef __cplusplus 47 | extern "C" { 48 | #endif 49 | 50 | 51 | /// 52 | // Implement this structure to handle events related to focus. The functions of 53 | // this structure will be called on the UI thread. 54 | /// 55 | typedef struct _cef_focus_handler_t { 56 | /// 57 | // Base structure. 58 | /// 59 | cef_base_t base; 60 | 61 | /// 62 | // Called when the browser component is about to loose focus. For instance, if 63 | // focus was on the last HTML element and the user pressed the TAB key. |next| 64 | // will be true (1) if the browser is giving focus to the next component and 65 | // false (0) if the browser is giving focus to the previous component. 66 | /// 67 | void (CEF_CALLBACK *on_take_focus)(struct _cef_focus_handler_t* self, 68 | struct _cef_browser_t* browser, int next); 69 | 70 | /// 71 | // Called when the browser component is requesting focus. |source| indicates 72 | // where the focus request is originating from. Return false (0) to allow the 73 | // focus to be set or true (1) to cancel setting the focus. 74 | /// 75 | int (CEF_CALLBACK *on_set_focus)(struct _cef_focus_handler_t* self, 76 | struct _cef_browser_t* browser, cef_focus_source_t source); 77 | 78 | /// 79 | // Called when the browser component has received focus. 80 | /// 81 | void (CEF_CALLBACK *on_got_focus)(struct _cef_focus_handler_t* self, 82 | struct _cef_browser_t* browser); 83 | } cef_focus_handler_t; 84 | 85 | 86 | #ifdef __cplusplus 87 | } 88 | #endif 89 | 90 | #endif // CEF_INCLUDE_CAPI_CEF_FOCUS_HANDLER_CAPI_H_ 91 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_geolocation_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_GEOLOCATION_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_GEOLOCATION_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Implement this structure to receive geolocation updates. The functions of 50 | // this structure will be called on the browser process UI thread. 51 | /// 52 | typedef struct _cef_get_geolocation_callback_t { 53 | /// 54 | // Base structure. 55 | /// 56 | cef_base_t base; 57 | 58 | /// 59 | // Called with the 'best available' location information or, if the location 60 | // update failed, with error information. 61 | /// 62 | void (CEF_CALLBACK *on_location_update)( 63 | struct _cef_get_geolocation_callback_t* self, 64 | const struct _cef_geoposition_t* position); 65 | } cef_get_geolocation_callback_t; 66 | 67 | 68 | /// 69 | // Request a one-time geolocation update. This function bypasses any user 70 | // permission checks so should only be used by code that is allowed to access 71 | // location information. 72 | /// 73 | CEF_EXPORT int cef_get_geolocation(cef_get_geolocation_callback_t* callback); 74 | 75 | #ifdef __cplusplus 76 | } 77 | #endif 78 | 79 | #endif // CEF_INCLUDE_CAPI_CEF_GEOLOCATION_CAPI_H_ 80 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_geolocation_handler_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_GEOLOCATION_HANDLER_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_GEOLOCATION_HANDLER_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_browser_capi.h" 43 | 44 | #ifdef __cplusplus 45 | extern "C" { 46 | #endif 47 | 48 | 49 | /// 50 | // Callback structure used for asynchronous continuation of geolocation 51 | // permission requests. 52 | /// 53 | typedef struct _cef_geolocation_callback_t { 54 | /// 55 | // Base structure. 56 | /// 57 | cef_base_t base; 58 | 59 | /// 60 | // Call to allow or deny geolocation access. 61 | /// 62 | void (CEF_CALLBACK *cont)(struct _cef_geolocation_callback_t* self, 63 | int allow); 64 | } cef_geolocation_callback_t; 65 | 66 | 67 | /// 68 | // Implement this structure to handle events related to geolocation permission 69 | // requests. The functions of this structure will be called on the browser 70 | // process UI thread. 71 | /// 72 | typedef struct _cef_geolocation_handler_t { 73 | /// 74 | // Base structure. 75 | /// 76 | cef_base_t base; 77 | 78 | /// 79 | // Called when a page requests permission to access geolocation information. 80 | // |requesting_url| is the URL requesting permission and |request_id| is the 81 | // unique ID for the permission request. Return true (1) and call 82 | // cef_geolocation_callback_t::cont() either in this function or at a later 83 | // time to continue or cancel the request. Return false (0) to cancel the 84 | // request immediately. 85 | /// 86 | int (CEF_CALLBACK *on_request_geolocation_permission)( 87 | struct _cef_geolocation_handler_t* self, struct _cef_browser_t* browser, 88 | const cef_string_t* requesting_url, int request_id, 89 | struct _cef_geolocation_callback_t* callback); 90 | 91 | /// 92 | // Called when a geolocation access request is canceled. |requesting_url| is 93 | // the URL that originally requested permission and |request_id| is the unique 94 | // ID for the permission request. 95 | /// 96 | void (CEF_CALLBACK *on_cancel_geolocation_permission)( 97 | struct _cef_geolocation_handler_t* self, struct _cef_browser_t* browser, 98 | const cef_string_t* requesting_url, int request_id); 99 | } cef_geolocation_handler_t; 100 | 101 | 102 | #ifdef __cplusplus 103 | } 104 | #endif 105 | 106 | #endif // CEF_INCLUDE_CAPI_CEF_GEOLOCATION_HANDLER_CAPI_H_ 107 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_keyboard_handler_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_KEYBOARD_HANDLER_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_KEYBOARD_HANDLER_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_browser_capi.h" 43 | 44 | #ifdef __cplusplus 45 | extern "C" { 46 | #endif 47 | 48 | 49 | /// 50 | // Implement this structure to handle events related to keyboard input. The 51 | // functions of this structure will be called on the UI thread. 52 | /// 53 | typedef struct _cef_keyboard_handler_t { 54 | /// 55 | // Base structure. 56 | /// 57 | cef_base_t base; 58 | 59 | // Called before a keyboard event is sent to the renderer. |event| contains 60 | // information about the keyboard event. |os_event| is the operating system 61 | // event message, if any. Return true (1) if the event was handled or false 62 | // (0) otherwise. If the event will be handled in on_key_event() as a keyboard 63 | // shortcut set |is_keyboard_shortcut| to true (1) and return false (0). 64 | int (CEF_CALLBACK *on_pre_key_event)(struct _cef_keyboard_handler_t* self, 65 | struct _cef_browser_t* browser, const struct _cef_key_event_t* event, 66 | cef_event_handle_t os_event, int* is_keyboard_shortcut); 67 | 68 | /// 69 | // Called after the renderer and JavaScript in the page has had a chance to 70 | // handle the event. |event| contains information about the keyboard event. 71 | // |os_event| is the operating system event message, if any. Return true (1) 72 | // if the keyboard event was handled or false (0) otherwise. 73 | /// 74 | int (CEF_CALLBACK *on_key_event)(struct _cef_keyboard_handler_t* self, 75 | struct _cef_browser_t* browser, const struct _cef_key_event_t* event, 76 | cef_event_handle_t os_event); 77 | } cef_keyboard_handler_t; 78 | 79 | 80 | #ifdef __cplusplus 81 | } 82 | #endif 83 | 84 | #endif // CEF_INCLUDE_CAPI_CEF_KEYBOARD_HANDLER_CAPI_H_ 85 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_path_util_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_PATH_UTIL_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_PATH_UTIL_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Retrieve the path associated with the specified |key|. Returns true (1) on 50 | // success. Can be called on any thread in the browser process. 51 | /// 52 | CEF_EXPORT int cef_get_path(cef_path_key_t key, cef_string_t* path); 53 | 54 | #ifdef __cplusplus 55 | } 56 | #endif 57 | 58 | #endif // CEF_INCLUDE_CAPI_CEF_PATH_UTIL_CAPI_H_ 59 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_process_message_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_PROCESS_MESSAGE_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_PROCESS_MESSAGE_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | #include "include/capi/cef_values_capi.h" 43 | 44 | #ifdef __cplusplus 45 | extern "C" { 46 | #endif 47 | 48 | 49 | /// 50 | // Structure representing a message. Can be used on any process and thread. 51 | /// 52 | typedef struct _cef_process_message_t { 53 | /// 54 | // Base structure. 55 | /// 56 | cef_base_t base; 57 | 58 | /// 59 | // Returns true (1) if this object is valid. Do not call any other functions 60 | // if this function returns false (0). 61 | /// 62 | int (CEF_CALLBACK *is_valid)(struct _cef_process_message_t* self); 63 | 64 | /// 65 | // Returns true (1) if the values of this object are read-only. Some APIs may 66 | // expose read-only objects. 67 | /// 68 | int (CEF_CALLBACK *is_read_only)(struct _cef_process_message_t* self); 69 | 70 | /// 71 | // Returns a writable copy of this object. 72 | /// 73 | struct _cef_process_message_t* (CEF_CALLBACK *copy)( 74 | struct _cef_process_message_t* self); 75 | 76 | /// 77 | // Returns the message name. 78 | /// 79 | // The resulting string must be freed by calling cef_string_userfree_free(). 80 | cef_string_userfree_t (CEF_CALLBACK *get_name)( 81 | struct _cef_process_message_t* self); 82 | 83 | /// 84 | // Returns the list of arguments. 85 | /// 86 | struct _cef_list_value_t* (CEF_CALLBACK *get_argument_list)( 87 | struct _cef_process_message_t* self); 88 | } cef_process_message_t; 89 | 90 | 91 | /// 92 | // Create a new cef_process_message_t object with the specified name. 93 | /// 94 | CEF_EXPORT cef_process_message_t* cef_process_message_create( 95 | const cef_string_t* name); 96 | 97 | 98 | #ifdef __cplusplus 99 | } 100 | #endif 101 | 102 | #endif // CEF_INCLUDE_CAPI_CEF_PROCESS_MESSAGE_CAPI_H_ 103 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_process_util_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_PROCESS_UTIL_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_PROCESS_UTIL_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Launches the process specified via |command_line|. Returns true (1) upon 50 | // success. Must be called on the browser process TID_PROCESS_LAUNCHER thread. 51 | // 52 | // Unix-specific notes: - All file descriptors open in the parent process will 53 | // be closed in the 54 | // child process except for stdin, stdout, and stderr. 55 | // - If the first argument on the command line does not contain a slash, 56 | // PATH will be searched. (See man execvp.) 57 | /// 58 | CEF_EXPORT int cef_launch_process(struct _cef_command_line_t* command_line); 59 | 60 | #ifdef __cplusplus 61 | } 62 | #endif 63 | 64 | #endif // CEF_INCLUDE_CAPI_CEF_PROCESS_UTIL_CAPI_H_ 65 | -------------------------------------------------------------------------------- /qtcef3/include/capi/cef_string_visitor_capi.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file was generated by the CEF translator tool and should not edited 33 | // by hand. See the translator.README.txt file in the tools directory for 34 | // more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CAPI_CEF_STRING_VISITOR_CAPI_H_ 38 | #define CEF_INCLUDE_CAPI_CEF_STRING_VISITOR_CAPI_H_ 39 | #pragma once 40 | 41 | #include "include/capi/cef_base_capi.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | 48 | /// 49 | // Implement this structure to receive string values asynchronously. 50 | /// 51 | typedef struct _cef_string_visitor_t { 52 | /// 53 | // Base structure. 54 | /// 55 | cef_base_t base; 56 | 57 | /// 58 | // Method that will be executed. 59 | /// 60 | void (CEF_CALLBACK *visit)(struct _cef_string_visitor_t* self, 61 | const cef_string_t* string); 62 | } cef_string_visitor_t; 63 | 64 | 65 | #ifdef __cplusplus 66 | } 67 | #endif 68 | 69 | #endif // CEF_INCLUDE_CAPI_CEF_STRING_VISITOR_CAPI_H_ 70 | -------------------------------------------------------------------------------- /qtcef3/include/cef_auth_callback.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_AUTH_CALLBACK_H_ 38 | #define CEF_INCLUDE_CEF_AUTH_CALLBACK_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | /// 44 | // Callback interface used for asynchronous continuation of authentication 45 | // requests. 46 | /// 47 | /*--cef(source=library)--*/ 48 | class CefAuthCallback : public virtual CefBase { 49 | public: 50 | /// 51 | // Continue the authentication request. 52 | /// 53 | /*--cef(capi_name=cont)--*/ 54 | virtual void Continue(const CefString& username, 55 | const CefString& password) =0; 56 | 57 | /// 58 | // Cancel the authentication request. 59 | /// 60 | /*--cef()--*/ 61 | virtual void Cancel() =0; 62 | }; 63 | 64 | #endif // CEF_INCLUDE_CEF_AUTH_CALLBACK_H_ 65 | -------------------------------------------------------------------------------- /qtcef3/include/cef_browser_process_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_BROWSER_PROCESS_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_BROWSER_PROCESS_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_command_line.h" 43 | #include "include/cef_print_handler.h" 44 | #include "include/cef_values.h" 45 | 46 | /// 47 | // Class used to implement browser process callbacks. The methods of this class 48 | // will be called on the browser process main thread unless otherwise indicated. 49 | /// 50 | /*--cef(source=client)--*/ 51 | class CefBrowserProcessHandler : public virtual CefBase { 52 | public: 53 | /// 54 | // Called on the browser process UI thread immediately after the CEF context 55 | // has been initialized. 56 | /// 57 | /*--cef()--*/ 58 | virtual void OnContextInitialized() {} 59 | 60 | /// 61 | // Called before a child process is launched. Will be called on the browser 62 | // process UI thread when launching a render process and on the browser 63 | // process IO thread when launching a GPU or plugin process. Provides an 64 | // opportunity to modify the child process command line. Do not keep a 65 | // reference to |command_line| outside of this method. 66 | /// 67 | /*--cef()--*/ 68 | virtual void OnBeforeChildProcessLaunch( 69 | CefRefPtr command_line) {} 70 | 71 | /// 72 | // Called on the browser process IO thread after the main thread has been 73 | // created for a new render process. Provides an opportunity to specify extra 74 | // information that will be passed to 75 | // CefRenderProcessHandler::OnRenderThreadCreated() in the render process. Do 76 | // not keep a reference to |extra_info| outside of this method. 77 | /// 78 | /*--cef()--*/ 79 | virtual void OnRenderProcessThreadCreated( 80 | CefRefPtr extra_info) {} 81 | 82 | /// 83 | // Return the handler for printing on Linux. If a print handler is not 84 | // provided then printing will not be supported on the Linux platform. 85 | /// 86 | /*--cef()--*/ 87 | virtual CefRefPtr GetPrintHandler() { 88 | return NULL; 89 | } 90 | }; 91 | 92 | #endif // CEF_INCLUDE_CEF_BROWSER_PROCESS_HANDLER_H_ 93 | -------------------------------------------------------------------------------- /qtcef3/include/cef_callback.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_CALLBACK_H_ 38 | #define CEF_INCLUDE_CEF_CALLBACK_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | /// 44 | // Generic callback interface used for asynchronous continuation. 45 | /// 46 | /*--cef(source=library)--*/ 47 | class CefCallback : public virtual CefBase { 48 | public: 49 | /// 50 | // Continue processing. 51 | /// 52 | /*--cef(capi_name=cont)--*/ 53 | virtual void Continue() =0; 54 | 55 | /// 56 | // Cancel processing. 57 | /// 58 | /*--cef()--*/ 59 | virtual void Cancel() =0; 60 | }; 61 | 62 | /// 63 | // Generic callback interface used for asynchronous completion. 64 | /// 65 | /*--cef(source=client)--*/ 66 | class CefCompletionCallback : public virtual CefBase { 67 | public: 68 | /// 69 | // Method that will be called once the task is complete. 70 | /// 71 | /*--cef()--*/ 72 | virtual void OnComplete() =0; 73 | }; 74 | 75 | #endif // CEF_INCLUDE_CEF_CALLBACK_H_ 76 | -------------------------------------------------------------------------------- /qtcef3/include/cef_drag_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_DRAG_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_DRAG_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_drag_data.h" 43 | #include "include/cef_browser.h" 44 | 45 | /// 46 | // Implement this interface to handle events related to dragging. The methods of 47 | // this class will be called on the UI thread. 48 | /// 49 | /*--cef(source=client)--*/ 50 | class CefDragHandler : public virtual CefBase { 51 | public: 52 | typedef cef_drag_operations_mask_t DragOperationsMask; 53 | 54 | /// 55 | // Called when an external drag event enters the browser window. |dragData| 56 | // contains the drag event data and |mask| represents the type of drag 57 | // operation. Return false for default drag handling behavior or true to 58 | // cancel the drag event. 59 | /// 60 | /*--cef()--*/ 61 | virtual bool OnDragEnter(CefRefPtr browser, 62 | CefRefPtr dragData, 63 | DragOperationsMask mask) { return false; } 64 | 65 | /// 66 | // Called whenever draggable regions for the browser window change. These can 67 | // be specified using the '-webkit-app-region: drag/no-drag' CSS-property. If 68 | // draggable regions are never defined in a document this method will also 69 | // never be called. If the last draggable region is removed from a document 70 | // this method will be called with an empty vector. 71 | /// 72 | /*--cef()--*/ 73 | virtual void OnDraggableRegionsChanged( 74 | CefRefPtr browser, 75 | const std::vector& regions) {} 76 | }; 77 | 78 | #endif // CEF_INCLUDE_CEF_DRAG_HANDLER_H_ 79 | -------------------------------------------------------------------------------- /qtcef3/include/cef_find_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_FIND_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_FIND_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_browser.h" 43 | 44 | /// 45 | // Implement this interface to handle events related to find results. The 46 | // methods of this class will be called on the UI thread. 47 | /// 48 | /*--cef(source=client)--*/ 49 | class CefFindHandler : public virtual CefBase { 50 | public: 51 | /// 52 | // Called to report find results returned by CefBrowserHost::Find(). 53 | // |identifer| is the identifier passed to Find(), |count| is the number of 54 | // matches currently identified, |selectionRect| is the location of where the 55 | // match was found (in window coordinates), |activeMatchOrdinal| is the 56 | // current position in the search results, and |finalUpdate| is true if this 57 | // is the last find notification. 58 | /// 59 | /*--cef()--*/ 60 | virtual void OnFindResult(CefRefPtr browser, 61 | int identifier, 62 | int count, 63 | const CefRect& selectionRect, 64 | int activeMatchOrdinal, 65 | bool finalUpdate) {} 66 | }; 67 | 68 | #endif // CEF_INCLUDE_CEF_FIND_HANDLER_H_ 69 | -------------------------------------------------------------------------------- /qtcef3/include/cef_focus_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_FOCUS_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_FOCUS_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_browser.h" 43 | #include "include/cef_dom.h" 44 | #include "include/cef_frame.h" 45 | 46 | /// 47 | // Implement this interface to handle events related to focus. The methods of 48 | // this class will be called on the UI thread. 49 | /// 50 | /*--cef(source=client)--*/ 51 | class CefFocusHandler : public virtual CefBase { 52 | public: 53 | typedef cef_focus_source_t FocusSource; 54 | 55 | /// 56 | // Called when the browser component is about to loose focus. For instance, if 57 | // focus was on the last HTML element and the user pressed the TAB key. |next| 58 | // will be true if the browser is giving focus to the next component and false 59 | // if the browser is giving focus to the previous component. 60 | /// 61 | /*--cef()--*/ 62 | virtual void OnTakeFocus(CefRefPtr browser, 63 | bool next) {} 64 | 65 | /// 66 | // Called when the browser component is requesting focus. |source| indicates 67 | // where the focus request is originating from. Return false to allow the 68 | // focus to be set or true to cancel setting the focus. 69 | /// 70 | /*--cef()--*/ 71 | virtual bool OnSetFocus(CefRefPtr browser, 72 | FocusSource source) { return false; } 73 | 74 | /// 75 | // Called when the browser component has received focus. 76 | /// 77 | /*--cef()--*/ 78 | virtual void OnGotFocus(CefRefPtr browser) {} 79 | }; 80 | 81 | #endif // CEF_INCLUDE_CEF_FOCUS_HANDLER_H_ 82 | -------------------------------------------------------------------------------- /qtcef3/include/cef_geolocation.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_GEOLOCATION_H_ 38 | #define CEF_INCLUDE_CEF_GEOLOCATION_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | /// 44 | // Implement this interface to receive geolocation updates. The methods of this 45 | // class will be called on the browser process UI thread. 46 | /// 47 | /*--cef(source=client)--*/ 48 | class CefGetGeolocationCallback : public virtual CefBase { 49 | public: 50 | /// 51 | // Called with the 'best available' location information or, if the location 52 | // update failed, with error information. 53 | /// 54 | /*--cef()--*/ 55 | virtual void OnLocationUpdate(const CefGeoposition& position) =0; 56 | }; 57 | 58 | /// 59 | // Request a one-time geolocation update. This function bypasses any user 60 | // permission checks so should only be used by code that is allowed to access 61 | // location information. 62 | /// 63 | /*--cef()--*/ 64 | bool CefGetGeolocation(CefRefPtr callback); 65 | 66 | #endif // CEF_INCLUDE_CEF_GEOLOCATION_H_ 67 | -------------------------------------------------------------------------------- /qtcef3/include/cef_geolocation_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_GEOLOCATION_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_GEOLOCATION_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_browser.h" 43 | 44 | /// 45 | // Callback interface used for asynchronous continuation of geolocation 46 | // permission requests. 47 | /// 48 | /*--cef(source=library)--*/ 49 | class CefGeolocationCallback : public virtual CefBase { 50 | public: 51 | /// 52 | // Call to allow or deny geolocation access. 53 | /// 54 | /*--cef(capi_name=cont)--*/ 55 | virtual void Continue(bool allow) =0; 56 | }; 57 | 58 | 59 | /// 60 | // Implement this interface to handle events related to geolocation permission 61 | // requests. The methods of this class will be called on the browser process UI 62 | // thread. 63 | /// 64 | /*--cef(source=client)--*/ 65 | class CefGeolocationHandler : public virtual CefBase { 66 | public: 67 | /// 68 | // Called when a page requests permission to access geolocation information. 69 | // |requesting_url| is the URL requesting permission and |request_id| is the 70 | // unique ID for the permission request. Return true and call 71 | // CefGeolocationCallback::Continue() either in this method or at a later 72 | // time to continue or cancel the request. Return false to cancel the request 73 | // immediately. 74 | /// 75 | /*--cef()--*/ 76 | virtual bool OnRequestGeolocationPermission( 77 | CefRefPtr browser, 78 | const CefString& requesting_url, 79 | int request_id, 80 | CefRefPtr callback) { 81 | return false; 82 | } 83 | 84 | /// 85 | // Called when a geolocation access request is canceled. |requesting_url| is 86 | // the URL that originally requested permission and |request_id| is the unique 87 | // ID for the permission request. 88 | /// 89 | /*--cef()--*/ 90 | virtual void OnCancelGeolocationPermission( 91 | CefRefPtr browser, 92 | const CefString& requesting_url, 93 | int request_id) { 94 | } 95 | }; 96 | 97 | #endif // CEF_INCLUDE_CEF_GEOLOCATION_HANDLER_H_ 98 | -------------------------------------------------------------------------------- /qtcef3/include/cef_keyboard_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_KEYBOARD_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_KEYBOARD_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_browser.h" 43 | 44 | /// 45 | // Implement this interface to handle events related to keyboard input. The 46 | // methods of this class will be called on the UI thread. 47 | /// 48 | /*--cef(source=client)--*/ 49 | class CefKeyboardHandler : public virtual CefBase { 50 | public: 51 | // Called before a keyboard event is sent to the renderer. |event| contains 52 | // information about the keyboard event. |os_event| is the operating system 53 | // event message, if any. Return true if the event was handled or false 54 | // otherwise. If the event will be handled in OnKeyEvent() as a keyboard 55 | // shortcut set |is_keyboard_shortcut| to true and return false. 56 | /*--cef()--*/ 57 | virtual bool OnPreKeyEvent(CefRefPtr browser, 58 | const CefKeyEvent& event, 59 | CefEventHandle os_event, 60 | bool* is_keyboard_shortcut) { return false; } 61 | 62 | /// 63 | // Called after the renderer and JavaScript in the page has had a chance to 64 | // handle the event. |event| contains information about the keyboard event. 65 | // |os_event| is the operating system event message, if any. Return true if 66 | // the keyboard event was handled or false otherwise. 67 | /// 68 | /*--cef()--*/ 69 | virtual bool OnKeyEvent(CefRefPtr browser, 70 | const CefKeyEvent& event, 71 | CefEventHandle os_event) { return false; } 72 | }; 73 | 74 | #endif // CEF_INCLUDE_CEF_KEYBOARD_HANDLER_H_ 75 | -------------------------------------------------------------------------------- /qtcef3/include/cef_navigation_entry.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_NAVIGATION_ENTRY_H_ 38 | #define CEF_INCLUDE_CEF_NAVIGATION_ENTRY_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | /// 44 | // Class used to represent an entry in navigation history. 45 | /// 46 | /*--cef(source=library)--*/ 47 | class CefNavigationEntry : public virtual CefBase { 48 | public: 49 | typedef cef_transition_type_t TransitionType; 50 | 51 | /// 52 | // Returns true if this object is valid. Do not call any other methods if this 53 | // function returns false. 54 | /// 55 | /*--cef()--*/ 56 | virtual bool IsValid() =0; 57 | 58 | /// 59 | // Returns the actual URL of the page. For some pages this may be data: URL or 60 | // similar. Use GetDisplayURL() to return a display-friendly version. 61 | /// 62 | /*--cef()--*/ 63 | virtual CefString GetURL() =0; 64 | 65 | /// 66 | // Returns a display-friendly version of the URL. 67 | /// 68 | /*--cef()--*/ 69 | virtual CefString GetDisplayURL() =0; 70 | 71 | /// 72 | // Returns the original URL that was entered by the user before any redirects. 73 | /// 74 | /*--cef()--*/ 75 | virtual CefString GetOriginalURL() =0; 76 | 77 | /// 78 | // Returns the title set by the page. This value may be empty. 79 | /// 80 | /*--cef()--*/ 81 | virtual CefString GetTitle() =0; 82 | 83 | /// 84 | // Returns the transition type which indicates what the user did to move to 85 | // this page from the previous page. 86 | /// 87 | /*--cef(default_retval=TT_EXPLICIT)--*/ 88 | virtual TransitionType GetTransitionType() =0; 89 | 90 | /// 91 | // Returns true if this navigation includes post data. 92 | /// 93 | /*--cef()--*/ 94 | virtual bool HasPostData() =0; 95 | 96 | /// 97 | // Returns the time for the last known successful navigation completion. A 98 | // navigation may be completed more than once if the page is reloaded. May be 99 | // 0 if the navigation has not yet completed. 100 | /// 101 | /*--cef()--*/ 102 | virtual CefTime GetCompletionTime() =0; 103 | 104 | /// 105 | // Returns the HTTP status code for the last known successful navigation 106 | // response. May be 0 if the response has not yet been received or if the 107 | // navigation has not yet completed. 108 | /// 109 | /*--cef()--*/ 110 | virtual int GetHttpStatusCode() =0; 111 | }; 112 | 113 | #endif // CEF_INCLUDE_CEF_NAVIGATION_ENTRY_H_ 114 | -------------------------------------------------------------------------------- /qtcef3/include/cef_path_util.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_PATH_UTIL_H_ 38 | #define CEF_INCLUDE_CEF_PATH_UTIL_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | typedef cef_path_key_t PathKey; 44 | 45 | /// 46 | // Retrieve the path associated with the specified |key|. Returns true on 47 | // success. Can be called on any thread in the browser process. 48 | /// 49 | /*--cef()--*/ 50 | bool CefGetPath(PathKey key, CefString& path); 51 | 52 | #endif // CEF_INCLUDE_CEF_PATH_UTIL_H_ 53 | -------------------------------------------------------------------------------- /qtcef3/include/cef_process_message.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_MESSAGE_H_ 38 | #define CEF_INCLUDE_CEF_MESSAGE_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_values.h" 43 | 44 | typedef cef_process_id_t CefProcessId; 45 | 46 | /// 47 | // Class representing a message. Can be used on any process and thread. 48 | /// 49 | /*--cef(source=library)--*/ 50 | class CefProcessMessage : public virtual CefBase { 51 | public: 52 | /// 53 | // Create a new CefProcessMessage object with the specified name. 54 | /// 55 | /*--cef()--*/ 56 | static CefRefPtr Create(const CefString& name); 57 | 58 | /// 59 | // Returns true if this object is valid. Do not call any other methods if this 60 | // function returns false. 61 | /// 62 | /*--cef()--*/ 63 | virtual bool IsValid() =0; 64 | 65 | /// 66 | // Returns true if the values of this object are read-only. Some APIs may 67 | // expose read-only objects. 68 | /// 69 | /*--cef()--*/ 70 | virtual bool IsReadOnly() =0; 71 | 72 | /// 73 | // Returns a writable copy of this object. 74 | /// 75 | /*--cef()--*/ 76 | virtual CefRefPtr Copy() =0; 77 | 78 | /// 79 | // Returns the message name. 80 | /// 81 | /*--cef()--*/ 82 | virtual CefString GetName() =0; 83 | 84 | /// 85 | // Returns the list of arguments. 86 | /// 87 | /*--cef()--*/ 88 | virtual CefRefPtr GetArgumentList() =0; 89 | }; 90 | 91 | #endif // CEF_INCLUDE_CEF_MESSAGE_H_ 92 | -------------------------------------------------------------------------------- /qtcef3/include/cef_process_util.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_PROCESS_UTIL_H_ 38 | #define CEF_INCLUDE_CEF_PROCESS_UTIL_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include "include/cef_command_line.h" 43 | 44 | /// 45 | // Launches the process specified via |command_line|. Returns true upon 46 | // success. Must be called on the browser process TID_PROCESS_LAUNCHER thread. 47 | // 48 | // Unix-specific notes: 49 | // - All file descriptors open in the parent process will be closed in the 50 | // child process except for stdin, stdout, and stderr. 51 | // - If the first argument on the command line does not contain a slash, 52 | // PATH will be searched. (See man execvp.) 53 | /// 54 | /*--cef()--*/ 55 | bool CefLaunchProcess(CefRefPtr command_line); 56 | 57 | #endif // CEF_INCLUDE_CEF_PROCESS_UTIL_H_ 58 | -------------------------------------------------------------------------------- /qtcef3/include/cef_resource_bundle_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_RESOURCE_BUNDLE_HANDLER_H_ 38 | #define CEF_INCLUDE_CEF_RESOURCE_BUNDLE_HANDLER_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | 43 | /// 44 | // Class used to implement a custom resource bundle interface. See CefSettings 45 | // for additional options related to resource bundle loading. The methods of 46 | // this class may be called on multiple threads. 47 | /// 48 | /*--cef(source=client)--*/ 49 | class CefResourceBundleHandler : public virtual CefBase { 50 | public: 51 | typedef cef_scale_factor_t ScaleFactor; 52 | 53 | /// 54 | // Called to retrieve a localized translation for the specified |string_id|. 55 | // To provide the translation set |string| to the translation string and 56 | // return true. To use the default translation return false. Include 57 | // cef_pack_strings.h for a listing of valid string ID values. 58 | /// 59 | /*--cef()--*/ 60 | virtual bool GetLocalizedString(int string_id, 61 | CefString& string) =0; 62 | 63 | /// 64 | // Called to retrieve data for the specified scale independent |resource_id|. 65 | // To provide the resource data set |data| and |data_size| to the data pointer 66 | // and size respectively and return true. To use the default resource data 67 | // return false. The resource data will not be copied and must remain resident 68 | // in memory. Include cef_pack_resources.h for a listing of valid resource ID 69 | // values. 70 | /// 71 | /*--cef()--*/ 72 | virtual bool GetDataResource(int resource_id, 73 | void*& data, 74 | size_t& data_size) =0; 75 | 76 | /// 77 | // Called to retrieve data for the specified |resource_id| nearest the scale 78 | // factor |scale_factor|. To provide the resource data set |data| and 79 | // |data_size| to the data pointer and size respectively and return true. To 80 | // use the default resource data return false. The resource data will not be 81 | // copied and must remain resident in memory. Include cef_pack_resources.h for 82 | // a listing of valid resource ID values. 83 | /// 84 | /*--cef()--*/ 85 | virtual bool GetDataResourceForScale(int resource_id, 86 | ScaleFactor scale_factor, 87 | void*& data, 88 | size_t& data_size) =0; 89 | }; 90 | 91 | #endif // CEF_INCLUDE_CEF_RESOURCE_BUNDLE_HANDLER_H_ 92 | -------------------------------------------------------------------------------- /qtcef3/include/cef_response.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_RESPONSE_H_ 38 | #define CEF_INCLUDE_CEF_RESPONSE_H_ 39 | #pragma once 40 | 41 | #include "include/cef_base.h" 42 | #include 43 | 44 | /// 45 | // Class used to represent a web response. The methods of this class may be 46 | // called on any thread. 47 | /// 48 | /*--cef(source=library,no_debugct_check)--*/ 49 | class CefResponse : public virtual CefBase { 50 | public: 51 | typedef std::multimap HeaderMap; 52 | 53 | /// 54 | // Create a new CefResponse object. 55 | /// 56 | /*--cef()--*/ 57 | static CefRefPtr Create(); 58 | 59 | /// 60 | // Returns true if this object is read-only. 61 | /// 62 | /*--cef()--*/ 63 | virtual bool IsReadOnly() =0; 64 | 65 | /// 66 | // Get the response status code. 67 | /// 68 | /*--cef()--*/ 69 | virtual int GetStatus() =0; 70 | 71 | /// 72 | // Set the response status code. 73 | /// 74 | /*--cef()--*/ 75 | virtual void SetStatus(int status) = 0; 76 | 77 | /// 78 | // Get the response status text. 79 | /// 80 | /*--cef()--*/ 81 | virtual CefString GetStatusText() =0; 82 | 83 | /// 84 | // Set the response status text. 85 | /// 86 | /*--cef()--*/ 87 | virtual void SetStatusText(const CefString& statusText) = 0; 88 | 89 | /// 90 | // Get the response mime type. 91 | /// 92 | /*--cef()--*/ 93 | virtual CefString GetMimeType() = 0; 94 | 95 | /// 96 | // Set the response mime type. 97 | /// 98 | /*--cef()--*/ 99 | virtual void SetMimeType(const CefString& mimeType) = 0; 100 | 101 | /// 102 | // Get the value for the specified response header field. 103 | /// 104 | /*--cef()--*/ 105 | virtual CefString GetHeader(const CefString& name) =0; 106 | 107 | /// 108 | // Get all response header fields. 109 | /// 110 | /*--cef()--*/ 111 | virtual void GetHeaderMap(HeaderMap& headerMap) =0; 112 | 113 | /// 114 | // Set all response header fields. 115 | /// 116 | /*--cef()--*/ 117 | virtual void SetHeaderMap(const HeaderMap& headerMap) =0; 118 | }; 119 | 120 | #endif // CEF_INCLUDE_CEF_RESPONSE_H_ 121 | -------------------------------------------------------------------------------- /qtcef3/include/cef_sandbox_win.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2013 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_CEF_SANDBOX_WIN_H_ 31 | #define CEF_INCLUDE_CEF_SANDBOX_WIN_H_ 32 | #pragma once 33 | 34 | #include "include/cef_base.h" 35 | 36 | #if defined(OS_WIN) 37 | 38 | #ifdef __cplusplus 39 | extern "C" { 40 | #endif 41 | 42 | // The sandbox is used to restrict sub-processes (renderer, plugin, GPU, etc) 43 | // from directly accessing system resources. This helps to protect the user 44 | // from untrusted and potentially malicious Web content. 45 | // See http://www.chromium.org/developers/design-documents/sandbox for 46 | // complete details. 47 | // 48 | // To enable the sandbox on Windows the following requirements must be met: 49 | // 1. Use the same executable for the browser process and all sub-processes. 50 | // 2. Link the executable with the cef_sandbox static library. 51 | // 3. Call the cef_sandbox_info_create() function from within the executable 52 | // (not from a separate DLL) and pass the resulting pointer into both the 53 | // CefExecutProcess() and CefInitialize() functions via the 54 | // |windows_sandbox_info| parameter. 55 | 56 | /// 57 | // Create the sandbox information object for this process. It is safe to create 58 | // multiple of this object and to destroy the object immediately after passing 59 | // into the CefExecutProcess() and/or CefInitialize() functions. 60 | /// 61 | void* cef_sandbox_info_create(); 62 | 63 | /// 64 | // Destroy the specified sandbox information object. 65 | /// 66 | void cef_sandbox_info_destroy(void* sandbox_info); 67 | 68 | #ifdef __cplusplus 69 | } 70 | 71 | /// 72 | // Manages the life span of a sandbox information object. 73 | /// 74 | class CefScopedSandboxInfo { 75 | public: 76 | CefScopedSandboxInfo() { 77 | sandbox_info_ = cef_sandbox_info_create(); 78 | } 79 | ~CefScopedSandboxInfo() { 80 | cef_sandbox_info_destroy(sandbox_info_); 81 | } 82 | 83 | void* sandbox_info() const { return sandbox_info_; } 84 | 85 | private: 86 | void* sandbox_info_; 87 | }; 88 | #endif // __cplusplus 89 | 90 | #endif // defined(OS_WIN) 91 | 92 | #endif // CEF_INCLUDE_CEF_SANDBOX_WIN_H_ 93 | -------------------------------------------------------------------------------- /qtcef3/include/cef_string_visitor.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file must follow a specific format in order to 33 | // support the CEF translator tool. See the translator.README.txt file in the 34 | // tools directory for more information. 35 | // 36 | 37 | #ifndef CEF_INCLUDE_CEF_STRING_VISITOR_H_ 38 | #define CEF_INCLUDE_CEF_STRING_VISITOR_H_ 39 | 40 | #include "include/cef_base.h" 41 | 42 | /// 43 | // Implement this interface to receive string values asynchronously. 44 | /// 45 | /*--cef(source=client)--*/ 46 | class CefStringVisitor : public virtual CefBase { 47 | public: 48 | /// 49 | // Method that will be executed. 50 | /// 51 | /*--cef(optional_param=string)--*/ 52 | virtual void Visit(const CefString& string) =0; 53 | }; 54 | 55 | #endif // CEF_INCLUDE_CEF_STRING_VISITOR_H_ 56 | -------------------------------------------------------------------------------- /qtcef3/include/cef_version.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // This file is generated by the make_version_header.py tool. 33 | // 34 | 35 | #ifndef CEF_INCLUDE_CEF_VERSION_H_ 36 | #define CEF_INCLUDE_CEF_VERSION_H_ 37 | 38 | #define CEF_VERSION "3.2454.1344.g2782fb8" 39 | #define CEF_VERSION_MAJOR 3 40 | #define CEF_COMMIT_NUMBER 1344 41 | #define CEF_COMMIT_HASH "2782fb8fc85f55b87ea3c8bedaccec243eba65ed" 42 | #define COPYRIGHT_YEAR 2015 43 | 44 | #define CHROME_VERSION_MAJOR 45 45 | #define CHROME_VERSION_MINOR 0 46 | #define CHROME_VERSION_BUILD 2454 47 | #define CHROME_VERSION_PATCH 101 48 | 49 | #define DO_MAKE_STRING(p) #p 50 | #define MAKE_STRING(p) DO_MAKE_STRING(p) 51 | 52 | #ifndef APSTUDIO_HIDDEN_SYMBOLS 53 | 54 | #include "include/internal/cef_export.h" 55 | 56 | #ifdef __cplusplus 57 | extern "C" { 58 | #endif 59 | 60 | // The API hash is created by analyzing CEF header files for C API type 61 | // definitions. The hash value will change when header files are modified 62 | // in a way that may cause binary incompatibility with other builds. The 63 | // universal hash value will change if any platform is affected whereas the 64 | // platform hash values will change only if that particular platform is 65 | // affected. 66 | #define CEF_API_HASH_UNIVERSAL "9d8715660726cbfa51d66c41a3adec95309552b1" 67 | #if defined(OS_WIN) 68 | #define CEF_API_HASH_PLATFORM "66b3cacab3812623bf9f2ecf96847f222ce8869e" 69 | #elif defined(OS_MACOSX) 70 | #define CEF_API_HASH_PLATFORM "7d7f7520ed63d3f7fd222f8920218d9c103605ff" 71 | #elif defined(OS_LINUX) 72 | #define CEF_API_HASH_PLATFORM "4cfe16540ae76324a0d3ab1a58cf5c817cc85c0f" 73 | #endif 74 | 75 | // Returns CEF version information for the libcef library. The |entry| 76 | // parameter describes which version component will be returned: 77 | // 0 - CEF_VERSION_MAJOR 78 | // 1 - CEF_COMMIT_NUMBER 79 | // 2 - CHROME_VERSION_MAJOR 80 | // 3 - CHROME_VERSION_MINOR 81 | // 4 - CHROME_VERSION_BUILD 82 | // 5 - CHROME_VERSION_PATCH 83 | /// 84 | CEF_EXPORT int cef_version_info(int entry); 85 | 86 | /// 87 | // Returns CEF API hashes for the libcef library. The returned string is owned 88 | // by the library and should not be freed. The |entry| parameter describes which 89 | // hash value will be returned: 90 | // 0 - CEF_API_HASH_PLATFORM 91 | // 1 - CEF_API_HASH_UNIVERSAL 92 | // 2 - CEF_COMMIT_HASH 93 | /// 94 | CEF_EXPORT const char* cef_api_hash(int entry); 95 | 96 | #ifdef __cplusplus 97 | } 98 | #endif 99 | 100 | #endif // APSTUDIO_HIDDEN_SYMBOLS 101 | 102 | #endif // CEF_INCLUDE_CEF_VERSION_H_ 103 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_export.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009 The Chromium Embedded Framework Authors. All rights 2 | // reserved. 3 | // 4 | // Redistribution and use in source and binary forms, with or without 5 | // modification, are permitted provided that the following conditions are 6 | // met: 7 | // 8 | // * Redistributions of source code must retain the above copyright 9 | // notice, this list of conditions and the following disclaimer. 10 | // * Redistributions in binary form must reproduce the above 11 | // copyright notice, this list of conditions and the following disclaimer 12 | // in the documentation and/or other materials provided with the 13 | // distribution. 14 | // * Neither the name of Google Inc. nor the name Chromium Embedded 15 | // Framework nor the names of its contributors may be used to endorse 16 | // or promote products derived from this software without specific prior 17 | // written permission. 18 | // 19 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 20 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 21 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 22 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 23 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 24 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 25 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 26 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 27 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 28 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | 31 | #ifndef CEF_INCLUDE_INTERNAL_CEF_EXPORT_H_ 32 | #define CEF_INCLUDE_INTERNAL_CEF_EXPORT_H_ 33 | #pragma once 34 | 35 | #include "include/base/cef_build.h" 36 | 37 | #if defined(COMPILER_MSVC) 38 | 39 | #ifdef BUILDING_CEF_SHARED 40 | #define CEF_EXPORT __declspec(dllexport) 41 | #elif USING_CEF_SHARED 42 | #define CEF_EXPORT __declspec(dllimport) 43 | #else 44 | #define CEF_EXPORT 45 | #endif 46 | #define CEF_CALLBACK __stdcall 47 | 48 | #elif defined(COMPILER_GCC) 49 | 50 | #define CEF_EXPORT __attribute__ ((visibility("default"))) 51 | #define CEF_CALLBACK 52 | 53 | #endif // COMPILER_GCC 54 | 55 | #endif // CEF_INCLUDE_INTERNAL_CEF_EXPORT_H_ 56 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_logging_internal.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_LOGGING_INTERNAL_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_LOGGING_INTERNAL_H_ 32 | #pragma once 33 | 34 | #include "include/internal/cef_export.h" 35 | 36 | #ifdef __cplusplus 37 | extern "C" { 38 | #endif 39 | 40 | // See include/base/cef_logging.h for macros and intended usage. 41 | 42 | /// 43 | // Gets the current log level. 44 | /// 45 | CEF_EXPORT int cef_get_min_log_level(); 46 | 47 | /// 48 | // Gets the current vlog level for the given file (usually taken from 49 | // __FILE__). Note that |N| is the size *with* the null terminator. 50 | /// 51 | CEF_EXPORT int cef_get_vlog_level(const char* file_start, size_t N); 52 | 53 | /// 54 | // Add a log message. See the LogSeverity defines for supported |severity| 55 | // values. 56 | /// 57 | CEF_EXPORT void cef_log(const char* file, 58 | int line, 59 | int severity, 60 | const char* message); 61 | 62 | #ifdef __cplusplus 63 | } 64 | #endif // __cplusplus 65 | 66 | #endif // CEF_INCLUDE_INTERNAL_CEF_LOGGING_INTERNAL_H_ 67 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_string_list.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_STRING_LIST_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_STRING_LIST_H_ 32 | #pragma once 33 | 34 | #include "include/internal/cef_export.h" 35 | #include "include/internal/cef_string.h" 36 | 37 | #ifdef __cplusplus 38 | extern "C" { 39 | #endif 40 | 41 | /// 42 | // CEF string maps are a set of key/value string pairs. 43 | /// 44 | typedef void* cef_string_list_t; 45 | 46 | /// 47 | // Allocate a new string map. 48 | /// 49 | CEF_EXPORT cef_string_list_t cef_string_list_alloc(); 50 | 51 | /// 52 | // Return the number of elements in the string list. 53 | /// 54 | CEF_EXPORT int cef_string_list_size(cef_string_list_t list); 55 | 56 | /// 57 | // Retrieve the value at the specified zero-based string list index. Returns 58 | // true (1) if the value was successfully retrieved. 59 | /// 60 | CEF_EXPORT int cef_string_list_value(cef_string_list_t list, 61 | int index, cef_string_t* value); 62 | 63 | /// 64 | // Append a new value at the end of the string list. 65 | /// 66 | CEF_EXPORT void cef_string_list_append(cef_string_list_t list, 67 | const cef_string_t* value); 68 | 69 | /// 70 | // Clear the string list. 71 | /// 72 | CEF_EXPORT void cef_string_list_clear(cef_string_list_t list); 73 | 74 | /// 75 | // Free the string list. 76 | /// 77 | CEF_EXPORT void cef_string_list_free(cef_string_list_t list); 78 | 79 | /// 80 | // Creates a copy of an existing string list. 81 | /// 82 | CEF_EXPORT cef_string_list_t cef_string_list_copy(cef_string_list_t list); 83 | 84 | #ifdef __cplusplus 85 | } 86 | #endif 87 | 88 | #endif // CEF_INCLUDE_INTERNAL_CEF_STRING_LIST_H_ 89 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_string_map.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_STRING_MAP_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_STRING_MAP_H_ 32 | #pragma once 33 | 34 | #include "include/internal/cef_export.h" 35 | #include "include/internal/cef_string.h" 36 | 37 | #ifdef __cplusplus 38 | extern "C" { 39 | #endif 40 | 41 | /// 42 | // CEF string maps are a set of key/value string pairs. 43 | /// 44 | typedef void* cef_string_map_t; 45 | 46 | /// 47 | // Allocate a new string map. 48 | /// 49 | CEF_EXPORT cef_string_map_t cef_string_map_alloc(); 50 | 51 | /// 52 | // Return the number of elements in the string map. 53 | /// 54 | CEF_EXPORT int cef_string_map_size(cef_string_map_t map); 55 | 56 | /// 57 | // Return the value assigned to the specified key. 58 | /// 59 | CEF_EXPORT int cef_string_map_find(cef_string_map_t map, 60 | const cef_string_t* key, 61 | cef_string_t* value); 62 | 63 | /// 64 | // Return the key at the specified zero-based string map index. 65 | /// 66 | CEF_EXPORT int cef_string_map_key(cef_string_map_t map, int index, 67 | cef_string_t* key); 68 | 69 | /// 70 | // Return the value at the specified zero-based string map index. 71 | /// 72 | CEF_EXPORT int cef_string_map_value(cef_string_map_t map, int index, 73 | cef_string_t* value); 74 | 75 | /// 76 | // Append a new key/value pair at the end of the string map. 77 | /// 78 | CEF_EXPORT int cef_string_map_append(cef_string_map_t map, 79 | const cef_string_t* key, 80 | const cef_string_t* value); 81 | 82 | /// 83 | // Clear the string map. 84 | /// 85 | CEF_EXPORT void cef_string_map_clear(cef_string_map_t map); 86 | 87 | /// 88 | // Free the string map. 89 | /// 90 | CEF_EXPORT void cef_string_map_free(cef_string_map_t map); 91 | 92 | 93 | #ifdef __cplusplus 94 | } 95 | #endif 96 | 97 | #endif // CEF_INCLUDE_INTERNAL_CEF_STRING_MAP_H_ 98 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_string_multimap.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_STRING_MULTIMAP_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_STRING_MULTIMAP_H_ 32 | #pragma once 33 | 34 | #include "include/internal/cef_export.h" 35 | #include "include/internal/cef_string.h" 36 | 37 | #ifdef __cplusplus 38 | extern "C" { 39 | #endif 40 | 41 | /// 42 | // CEF string multimaps are a set of key/value string pairs. 43 | // More than one value can be assigned to a single key. 44 | /// 45 | typedef void* cef_string_multimap_t; 46 | 47 | /// 48 | // Allocate a new string multimap. 49 | /// 50 | CEF_EXPORT cef_string_multimap_t cef_string_multimap_alloc(); 51 | 52 | /// 53 | // Return the number of elements in the string multimap. 54 | /// 55 | CEF_EXPORT int cef_string_multimap_size(cef_string_multimap_t map); 56 | 57 | /// 58 | // Return the number of values with the specified key. 59 | /// 60 | CEF_EXPORT int cef_string_multimap_find_count(cef_string_multimap_t map, 61 | const cef_string_t* key); 62 | 63 | /// 64 | // Return the value_index-th value with the specified key. 65 | /// 66 | CEF_EXPORT int cef_string_multimap_enumerate(cef_string_multimap_t map, 67 | const cef_string_t* key, 68 | int value_index, 69 | cef_string_t* value); 70 | 71 | /// 72 | // Return the key at the specified zero-based string multimap index. 73 | /// 74 | CEF_EXPORT int cef_string_multimap_key(cef_string_multimap_t map, int index, 75 | cef_string_t* key); 76 | 77 | /// 78 | // Return the value at the specified zero-based string multimap index. 79 | /// 80 | CEF_EXPORT int cef_string_multimap_value(cef_string_multimap_t map, int index, 81 | cef_string_t* value); 82 | 83 | /// 84 | // Append a new key/value pair at the end of the string multimap. 85 | /// 86 | CEF_EXPORT int cef_string_multimap_append(cef_string_multimap_t map, 87 | const cef_string_t* key, 88 | const cef_string_t* value); 89 | 90 | /// 91 | // Clear the string multimap. 92 | /// 93 | CEF_EXPORT void cef_string_multimap_clear(cef_string_multimap_t map); 94 | 95 | /// 96 | // Free the string multimap. 97 | /// 98 | CEF_EXPORT void cef_string_multimap_free(cef_string_multimap_t map); 99 | 100 | 101 | #ifdef __cplusplus 102 | } 103 | #endif 104 | 105 | #endif // CEF_INCLUDE_INTERNAL_CEF_STRING_MULTIMAP_H_ 106 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_thread_internal.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_THREAD_INTERNAL_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_THREAD_INTERNAL_H_ 32 | #pragma once 33 | 34 | #if defined(OS_WIN) 35 | #include 36 | #elif defined(OS_POSIX) 37 | #include 38 | #include 39 | #endif 40 | 41 | #include "include/internal/cef_export.h" 42 | 43 | #ifdef __cplusplus 44 | extern "C" { 45 | #endif 46 | 47 | #if defined(OS_WIN) 48 | typedef DWORD cef_platform_thread_id_t; 49 | #elif defined(OS_POSIX) 50 | typedef pid_t cef_platform_thread_id_t; 51 | #endif 52 | 53 | /// 54 | // Returns the current platform thread ID. 55 | /// 56 | CEF_EXPORT cef_platform_thread_id_t cef_get_current_platform_thread_id(); 57 | 58 | #if defined(OS_WIN) 59 | typedef DWORD cef_platform_thread_handle_t; 60 | #elif defined(OS_POSIX) 61 | typedef pthread_t cef_platform_thread_handle_t; 62 | #endif 63 | 64 | /// 65 | // Returns the current platform thread handle. 66 | /// 67 | CEF_EXPORT cef_platform_thread_handle_t 68 | cef_get_current_platform_thread_handle(); 69 | 70 | #ifdef __cplusplus 71 | } 72 | #endif // __cplusplus 73 | 74 | #endif // CEF_INCLUDE_INTERNAL_CEF_THREAD_INTERNAL_H_ 75 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_time.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2011 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | #ifndef CEF_INCLUDE_INTERNAL_CEF_TIME_H_ 31 | #define CEF_INCLUDE_INTERNAL_CEF_TIME_H_ 32 | #pragma once 33 | 34 | #ifdef __cplusplus 35 | extern "C" { 36 | #endif 37 | 38 | #include "include/internal/cef_export.h" 39 | #include 40 | 41 | /// 42 | // Time information. Values should always be in UTC. 43 | /// 44 | typedef struct _cef_time_t { 45 | int year; // Four digit year "2007" 46 | int month; // 1-based month (values 1 = January, etc.) 47 | int day_of_week; // 0-based day of week (0 = Sunday, etc.) 48 | int day_of_month; // 1-based day of month (1-31) 49 | int hour; // Hour within the current day (0-23) 50 | int minute; // Minute within the current hour (0-59) 51 | int second; // Second within the current minute (0-59 plus leap 52 | // seconds which may take it up to 60). 53 | int millisecond; // Milliseconds within the current second (0-999) 54 | } cef_time_t; 55 | 56 | /// 57 | // Converts cef_time_t to/from time_t. Returns true (1) on success and false (0) 58 | // on failure. 59 | /// 60 | CEF_EXPORT int cef_time_to_timet(const cef_time_t* cef_time, time_t* time); 61 | CEF_EXPORT int cef_time_from_timet(time_t time, cef_time_t* cef_time); 62 | 63 | /// 64 | // Converts cef_time_t to/from a double which is the number of seconds since 65 | // epoch (Jan 1, 1970). Webkit uses this format to represent time. A value of 0 66 | // means "not initialized". Returns true (1) on success and false (0) on 67 | // failure. 68 | /// 69 | CEF_EXPORT int cef_time_to_doublet(const cef_time_t* cef_time, double* time); 70 | CEF_EXPORT int cef_time_from_doublet(double time, cef_time_t* cef_time); 71 | 72 | /// 73 | // Retrieve the current system time. 74 | // 75 | CEF_EXPORT int cef_time_now(cef_time_t* cef_time); 76 | 77 | /// 78 | // Retrieve the delta in milliseconds between two time values. 79 | // 80 | CEF_EXPORT int cef_time_delta(const cef_time_t* cef_time1, 81 | const cef_time_t* cef_time2, 82 | long long* delta); 83 | 84 | #ifdef __cplusplus 85 | } 86 | #endif 87 | 88 | #endif // CEF_INCLUDE_INTERNAL_CEF_TIME_H_ 89 | -------------------------------------------------------------------------------- /qtcef3/include/internal/cef_types_win.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2009 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | 31 | #ifndef CEF_INCLUDE_INTERNAL_CEF_TYPES_WIN_H_ 32 | #define CEF_INCLUDE_INTERNAL_CEF_TYPES_WIN_H_ 33 | #pragma once 34 | 35 | #include "include/base/cef_build.h" 36 | 37 | #if defined(OS_WIN) 38 | #include 39 | #include "include/internal/cef_string.h" 40 | 41 | // Handle types. 42 | #define cef_cursor_handle_t HCURSOR 43 | #define cef_event_handle_t MSG* 44 | #define cef_window_handle_t HWND 45 | #define cef_text_input_context_t void* 46 | 47 | #define kNullCursorHandle NULL 48 | #define kNullEventHandle NULL 49 | #define kNullWindowHandle NULL 50 | 51 | #ifdef __cplusplus 52 | extern "C" { 53 | #endif 54 | 55 | /// 56 | // Structure representing CefExecuteProcess arguments. 57 | /// 58 | typedef struct _cef_main_args_t { 59 | HINSTANCE instance; 60 | } cef_main_args_t; 61 | 62 | /// 63 | // Structure representing window information. 64 | /// 65 | typedef struct _cef_window_info_t { 66 | // Standard parameters required by CreateWindowEx() 67 | DWORD ex_style; 68 | cef_string_t window_name; 69 | DWORD style; 70 | int x; 71 | int y; 72 | int width; 73 | int height; 74 | cef_window_handle_t parent_window; 75 | HMENU menu; 76 | 77 | /// 78 | // Set to true (1) to create the browser using windowless (off-screen) 79 | // rendering. No window will be created for the browser and all rendering will 80 | // occur via the CefRenderHandler interface. The |parent_window| value will be 81 | // used to identify monitor info and to act as the parent window for dialogs, 82 | // context menus, etc. If |parent_window| is not provided then the main screen 83 | // monitor will be used and some functionality that requires a parent window 84 | // may not function correctly. In order to create windowless browsers the 85 | // CefSettings.windowless_rendering_enabled value must be set to true. 86 | /// 87 | int windowless_rendering_enabled; 88 | 89 | /// 90 | // Set to true (1) to enable transparent painting in combination with 91 | // windowless rendering. When this value is true a transparent background 92 | // color will be used (RGBA=0x00000000). When this value is false the 93 | // background will be white and opaque. 94 | /// 95 | int transparent_painting_enabled; 96 | 97 | /// 98 | // Handle for the new browser window. Only used with windowed rendering. 99 | /// 100 | cef_window_handle_t window; 101 | } cef_window_info_t; 102 | 103 | #ifdef __cplusplus 104 | } 105 | #endif 106 | 107 | #endif // OS_WIN 108 | 109 | #endif // CEF_INCLUDE_INTERNAL_CEF_TYPES_WIN_H_ 110 | -------------------------------------------------------------------------------- /qtcef3/include/wrapper/cef_byte_read_handler.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file are only available to applications that link 33 | // against the libcef_dll_wrapper target. 34 | // 35 | 36 | #ifndef CEF_INCLUDE_WRAPPER_CEF_BYTE_READ_HANDLER_H_ 37 | #define CEF_INCLUDE_WRAPPER_CEF_BYTE_READ_HANDLER_H_ 38 | #pragma once 39 | 40 | #include "include/base/cef_lock.h" 41 | #include "include/base/cef_macros.h" 42 | #include "include/cef_base.h" 43 | #include "include/cef_stream.h" 44 | 45 | /// 46 | // Thread safe implementation of the CefReadHandler class for reading an 47 | // in-memory array of bytes. 48 | /// 49 | class CefByteReadHandler : public CefReadHandler { 50 | public: 51 | /// 52 | // Create a new object for reading an array of bytes. An optional |source| 53 | // reference can be kept to keep the underlying data source from being 54 | // released while the reader exists. 55 | /// 56 | CefByteReadHandler(const unsigned char* bytes, 57 | size_t size, 58 | CefRefPtr source); 59 | 60 | // CefReadHandler methods. 61 | virtual size_t Read(void* ptr, size_t size, size_t n) OVERRIDE; 62 | virtual int Seek(int64 offset, int whence) OVERRIDE; 63 | virtual int64 Tell() OVERRIDE; 64 | virtual int Eof() OVERRIDE; 65 | virtual bool MayBlock() OVERRIDE { return false; } 66 | 67 | private: 68 | const unsigned char* bytes_; 69 | int64 size_; 70 | int64 offset_; 71 | CefRefPtr source_; 72 | 73 | base::Lock lock_; 74 | 75 | IMPLEMENT_REFCOUNTING(CefByteReadHandler); 76 | DISALLOW_COPY_AND_ASSIGN(CefByteReadHandler); 77 | }; 78 | 79 | #endif // CEF_INCLUDE_WRAPPER_CEF_BYTE_READ_HANDLER_H_ 80 | -------------------------------------------------------------------------------- /qtcef3/include/wrapper/cef_closure_task.h: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2014 Marshall A. Greenblatt. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the name Chromium Embedded 14 | // Framework nor the names of its contributors may be used to endorse 15 | // or promote products derived from this software without specific prior 16 | // written permission. 17 | // 18 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | // 30 | // --------------------------------------------------------------------------- 31 | // 32 | // The contents of this file are only available to applications that link 33 | // against the libcef_dll_wrapper target. 34 | // 35 | 36 | #ifndef CEF_INCLUDE_WRAPPER_CEF_CLOSURE_TASK_H_ 37 | #define CEF_INCLUDE_WRAPPER_CEF_CLOSURE_TASK_H_ 38 | #pragma once 39 | 40 | #include "include/base/cef_callback_forward.h" 41 | #include "include/base/cef_macros.h" 42 | #include "include/cef_task.h" 43 | 44 | /// 45 | // Helpers for asynchronously executing a base::Closure (bound function or 46 | // method) on a CEF thread. Creation of base::Closures can be facilitated using 47 | // base::Bind. See include/base/cef_callback.h for complete usage instructions. 48 | // 49 | // TO use these helpers you should include this header and the header that 50 | // defines base::Bind. 51 | // 52 | // #include "include/base/cef_bind.h" 53 | // #include "include/wrapper/cef_closure_task.h" 54 | // 55 | // Example of executing a bound function: 56 | // 57 | // // Define a function. 58 | // void MyFunc(int arg) { /* do something with |arg| on the UI thread */ } 59 | // 60 | // // Post a task that will execute MyFunc on the UI thread and pass an |arg| 61 | // // value of 5. 62 | // CefPostTask(TID_UI, base::Bind(&MyFunc, 5)); 63 | // 64 | // Example of executing a bound method: 65 | // 66 | // // Define a class. 67 | // class MyClass : public CefBase { 68 | // public: 69 | // MyClass() {} 70 | // void MyMethod(int arg) { /* do something with |arg| on the UI thread */ } 71 | // private: 72 | // IMPLEMENT_REFCOUNTING(MyClass); 73 | // }; 74 | // 75 | // // Create an instance of MyClass. 76 | // CefRefPtr instance = new MyClass(); 77 | // 78 | // // Post a task that will execute MyClass::MyMethod on the UI thread and pass 79 | // // an |arg| value of 5. |instance| will be kept alive until after the task 80 | // // completes. 81 | // CefPostTask(TID_UI, base::Bind(&MyClass::MyMethod, instance, 5)); 82 | /// 83 | 84 | /// 85 | // Create a CefTask that wraps a base::Closure. Can be used in combination with 86 | // CefTaskRunner. 87 | /// 88 | CefRefPtr CefCreateClosureTask(const base::Closure& closure); 89 | 90 | /// 91 | // Post a Closure for execution on the specified thread. 92 | /// 93 | bool CefPostTask(CefThreadId threadId, const base::Closure& closure); 94 | 95 | /// 96 | // Post a Closure for delayed execution on the specified thread. 97 | /// 98 | bool CefPostDelayedTask(CefThreadId threadId, const base::Closure& closure, 99 | int64 delay_ms); 100 | 101 | #endif // CEF_INCLUDE_WRAPPER_CEF_CLOSURE_TASK_H_ 102 | -------------------------------------------------------------------------------- /qtcef3/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Window Test 4 | 40 | 41 | 42 |
43 | Click a button to perform the associated window action. 44 |
45 |
46 |
47 |
(minimizes and then restores the window as topmost) 48 |
X: Y: Width: Height: 49 |
50 | 51 | 52 | -------------------------------------------------------------------------------- /qtcef3/main.cpp: -------------------------------------------------------------------------------- 1 | #include "qtcef3.h" 2 | #include 3 | #include "cefclient_app.h" 4 | #include "cefview.h" 5 | qtcef3 *g_MainWnd; 6 | 7 | int main(int argc, char *argv[]) 8 | { 9 | QApplication a(argc, argv); 10 | HINSTANCE hInstance = ::GetModuleHandle(NULL); 11 | CefEnableHighDPISupport(); 12 | void* sandbox_info = NULL; 13 | 14 | CefMainArgs main_args(hInstance); 15 | CefRefPtr app(new cefclient_app()); 16 | int exit_code = CefExecuteProcess(main_args, app.get(), sandbox_info); 17 | if (exit_code >= 0) 18 | return exit_code; 19 | CefSettings settings; 20 | settings.multi_threaded_message_loop = TRUE; 21 | CefInitialize(main_args, settings, app.get(), sandbox_info); 22 | 23 | qtcef3 w; 24 | g_MainWnd = &w; 25 | w.resize(1000, 800); 26 | w.CreateBrowser(); 27 | w.show(); 28 | exit_code = a.exec(); 29 | CefShutdown(); 30 | return exit_code; 31 | } 32 | -------------------------------------------------------------------------------- /qtcef3/qtcef3.cpp: -------------------------------------------------------------------------------- 1 | #include "qtcef3.h" 2 | #include 3 | #include 4 | #include 5 | #include "cefview.h" 6 | 7 | qtcef3::qtcef3(QWidget *parent) 8 | : QMainWindow(parent) 9 | { 10 | ui.setupUi(this); 11 | setWindowFlags(Qt::FramelessWindowHint); 12 | m_pCefView = NULL; 13 | 14 | } 15 | 16 | 17 | qtcef3::~qtcef3() 18 | { 19 | if (m_pCefView) 20 | { 21 | delete m_pCefView; 22 | } 23 | } 24 | 25 | void qtcef3::closeEvent(QCloseEvent *e) 26 | { 27 | 28 | } 29 | 30 | void qtcef3::resizeEvent(QResizeEvent *e) 31 | { 32 | centralWidget()->resize(size()); 33 | } 34 | 35 | void qtcef3::showEvent(QShowEvent *e) 36 | { 37 | } 38 | 39 | void qtcef3::CreateBrowser() 40 | { 41 | if (m_pCefView == NULL) 42 | { 43 | m_pCefView = new CefView(this); 44 | m_pCefView->resize(width(), height()); 45 | m_pCefView->CreateBrowser(""); 46 | setCentralWidget(m_pCefView); 47 | } 48 | } 49 | 50 | void qtcef3::JsTocppMessageParse(std::string message, CefRefPtr &callback) 51 | { 52 | QJsonParseError error; 53 | QByteArray byteArray = QByteArray::fromStdString(message); 54 | QJsonDocument jsonDoc = QJsonDocument::fromJson(byteArray, &error); 55 | if (error.error == QJsonParseError::NoError) 56 | { 57 | QJsonObject jsonObj = jsonDoc.object(); 58 | QJsonArray jsonArray = jsonObj["function"].toArray(); 59 | for (int i = 0; i < jsonArray.size(); i++) 60 | { 61 | QJsonObject tempObj = jsonArray[i].toObject(); 62 | JsTocppMessageFuncPro(tempObj,callback); 63 | } 64 | } 65 | else 66 | { 67 | qDebug() << error.errorString(); 68 | } 69 | 70 | } 71 | 72 | 73 | void qtcef3::JsTocppMessageFuncPro(QJsonObject jsonObjMsg,CefRefPtr &callback) 74 | { 75 | QString funcName; 76 | funcName = jsonObjMsg["name"].toString(); 77 | if (funcName.contains("Minimize")) 78 | { 79 | this->showMinimized(); 80 | } 81 | else if (funcName.contains("Maximize")) 82 | { 83 | this->showMaximized(); 84 | } 85 | else if (funcName.contains("Closewindow")) 86 | { 87 | this->close(); 88 | } 89 | else if (funcName.contains("Restore")) 90 | { 91 | this->showNormal(); 92 | } 93 | } -------------------------------------------------------------------------------- /qtcef3/qtcef3.h: -------------------------------------------------------------------------------- 1 | #ifndef QTCEF3_H 2 | #define QTCEF3_H 3 | 4 | #include 5 | #include 6 | #include "ui_qtcef3.h" 7 | #include "include/wrapper/cef_message_router.h" 8 | #include "cefview.h" 9 | typedef CefMessageRouterBrowserSide::Callback Callback; 10 | 11 | class qtcef3 : public QMainWindow 12 | { 13 | Q_OBJECT 14 | 15 | public: 16 | qtcef3(QWidget *parent = 0); 17 | ~qtcef3(); 18 | public: 19 | void JsTocppMessageParse(std::string message, CefRefPtr &callback); 20 | void JsTocppMessageFuncPro(QJsonObject jsonObjMsg,CefRefPtr &callback); 21 | void CreateBrowser(); 22 | 23 | public: 24 | void closeEvent(QCloseEvent *e); 25 | void resizeEvent(QResizeEvent *e); 26 | void showEvent(QShowEvent *e); 27 | 28 | private: 29 | Ui::qtcef3Class ui; 30 | CefView *m_pCefView; 31 | 32 | }; 33 | 34 | #endif // QTCEF3_H 35 | -------------------------------------------------------------------------------- /qtcef3/qtcef3.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /qtcef3/qtcef3.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | qtcef3Class 4 | 5 | 6 | 7 | 0 8 | 0 9 | 600 10 | 400 11 | 12 | 13 | 14 | qtcef3 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /qtcef3/qtcef3.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 6 | cpp;cxx;c;def 7 | 8 | 9 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 10 | h 11 | 12 | 13 | {99349809-55BA-4b9d-BF79-8FDBB0286EB3} 14 | ui 15 | 16 | 17 | {D9D6E242-F8AF-46E4-B9FD-80ECBC20BA3E} 18 | qrc;* 19 | false 20 | 21 | 22 | {71ED8ED8-ACB9-4CE9-BBE1-E00B30144E11} 23 | moc;h;cpp 24 | False 25 | 26 | 27 | {d0a4bf0d-e1f7-43eb-b7a5-cb71849b51d4} 28 | cpp;moc 29 | False 30 | 31 | 32 | {f21ceeac-36d5-4679-82a7-0853a4e2f1c0} 33 | cpp;moc 34 | False 35 | 36 | 37 | 38 | 39 | Source Files 40 | 41 | 42 | Source Files 43 | 44 | 45 | Generated Files\Debug 46 | 47 | 48 | Generated Files\Release 49 | 50 | 51 | Generated Files 52 | 53 | 54 | Source Files 55 | 56 | 57 | Source Files 58 | 59 | 60 | Source Files 61 | 62 | 63 | Source Files 64 | 65 | 66 | Source Files 67 | 68 | 69 | 70 | 71 | Header Files 72 | 73 | 74 | Form Files 75 | 76 | 77 | Resource Files 78 | 79 | 80 | 81 | 82 | Generated Files 83 | 84 | 85 | Source Files 86 | 87 | 88 | Source Files 89 | 90 | 91 | Source Files 92 | 93 | 94 | Source Files 95 | 96 | 97 | -------------------------------------------------------------------------------- /qtcef3/qtcef3.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | G:\QT\Qt5.5.1\5.5\msvc2013 6 | PATH=$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(PATH) 7 | 8 | 9 | G:\QT\Qt5.5.1\5.5\msvc2013 10 | PATH=$(QTDIR)\bin%3b"$(QTDIR)\bin%3b$(PATH) 11 | 12 | -------------------------------------------------------------------------------- /qtcef3/window_test.cpp: -------------------------------------------------------------------------------- 1 | #include "window_test.h" 2 | #include "qtcef3.h" 3 | extern qtcef3 *g_MainWnd; 4 | 5 | namespace window_test{ 6 | 7 | 8 | const char kTestUrl[] = "http://tests/window"; 9 | const char kMessagePositionName[] = "WindowTest.Position"; 10 | const char kMessageMinimizeName[] = "WindowTest.Minimize"; 11 | const char kMessageMaximizeName[] = "WindowTest.Maximize"; 12 | const char kMessageRestoreName[] = "WindowTest.Restore"; 13 | 14 | class Handler :public CefMessageRouterBrowserSide::Handler{ 15 | public: 16 | Handler(){} 17 | 18 | virtual bool OnQuery( 19 | CefRefPtr browser, 20 | CefRefPtr frame, 21 | int64 query_id, 22 | const CefString& request, 23 | bool persistent, 24 | CefRefPtr callback 25 | )OVERRIDE{ 26 | const std::string& message_name = request; 27 | g_MainWnd->JsTocppMessageParse(message_name, callback); 28 | 29 | 30 | return true; 31 | 32 | } 33 | 34 | }; 35 | 36 | 37 | void CreateMessageHandlers(MessageHandlerSet& handlers){ 38 | handlers.insert(new Handler()); 39 | } 40 | 41 | 42 | } -------------------------------------------------------------------------------- /qtcef3/window_test.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include 3 | 4 | #include "include/wrapper/cef_message_router.h" 5 | typedef std::set MessageHandlerSet; 6 | namespace window_test{ 7 | 8 | void CreateMessageHandlers(MessageHandlerSet& handlers); 9 | 10 | } -------------------------------------------------------------------------------- /qtcef3wnd.PNG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/louk78/qtcef3/62852a102d4c06ef47898f51edc09db0a7377f7c/qtcef3wnd.PNG --------------------------------------------------------------------------------