diff --git a/docs/CMake API.md b/docs/CMake API.md index 6463cb9b3d..bdd70addd0 100644 --- a/docs/CMake API.md +++ b/docs/CMake API.md @@ -4,7 +4,6 @@ - All project types require CMake 3.22 or higher. - Android targets are not currently supported. -- WebView2 on Windows via JUCE_USE_WIN_WEBVIEW2 flag in juce_gui_extra is not currently supported. Most system package managers have packages for CMake, but we recommend using the most recent release from https://cmake.org/download. You should always use a CMake that's newer than your build diff --git a/extras/Build/CMake/FindWebView2.cmake b/extras/Build/CMake/FindWebView2.cmake index 6bc9da6c28..41ba5c99cb 100644 --- a/extras/Build/CMake/FindWebView2.cmake +++ b/extras/Build/CMake/FindWebView2.cmake @@ -79,7 +79,7 @@ find_package_handle_standard_args(WebView2 DEFAULT_MSG WebView2_include_dir WebV if(WebView2_FOUND) set(WebView2_INCLUDE_DIRS ${WebView2_include_dir}) - set(WebView2_LIBRARIES ${WebView2_library} ) + set(WebView2_LIBRARIES ${WebView2_library}) mark_as_advanced(WebView2_library WebView2_include_dir WebView2_root_dir) diff --git a/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp b/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp index 656b807670..945fc6d8e8 100644 --- a/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp +++ b/modules/juce_gui_extra/native/juce_WebBrowserComponent_windows.cpp @@ -663,7 +663,7 @@ public: Callback ( [&result] (HRESULT, ICoreWebView2Environment* env) -> HRESULT { - result.environment = env; + result.environment = addComSmartPtrOwner (env); return S_OK; }).Get()); @@ -827,7 +827,7 @@ private: { method = "POST"; - ComSmartPtr content (SHCreateMemStream ((BYTE*) urlRequest.postData.getData(), + auto content = becomeComSmartPtrOwner (SHCreateMemStream ((BYTE*) urlRequest.postData.getData(), (UINT) urlRequest.postData.getSize())); request->put_Content (content); } @@ -854,8 +854,8 @@ private: { if (auto responseData = owner.impl->handleResourceRequest (resourceRequestUri)) { - ComSmartPtr stream (SHCreateMemStream ((BYTE*) responseData->data.data(), - (UINT) responseData->data.size())); + auto stream = becomeComSmartPtrOwner (SHCreateMemStream ((BYTE*) responseData->data.data(), + (UINT) responseData->data.size())); StringArray headers { "Content-Type: " + responseData->mimeType }; @@ -1035,7 +1035,7 @@ private: if (controller != nullptr) { - weakThis->webViewController = controller; + weakThis->webViewController = addComSmartPtrOwner (controller); controller->get_CoreWebView2 (weakThis->webView.resetAndGetPointerAddress()); auto allUserScripts = weakThis->userScripts;