Mercurial > dwindows
comparison win/edge.cpp @ 2065:2dacac5e4023
Win: Updated Edge (Chromium) support for WebView2 SDK 0.9.488.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 27 Apr 2020 08:55:40 +0000 |
parents | 21bc72ff40cb |
children | 43453c9a404c |
comparison
equal
deleted
inserted
replaced
2064:19fb7f72051b | 2065:2dacac5e4023 |
---|---|
44 VOID Action(int action); | 44 VOID Action(int action); |
45 int Raw(const char* string); | 45 int Raw(const char* string); |
46 int URL(const char* url); | 46 int URL(const char* url); |
47 int JavascriptRun(const char* script, void* scriptdata); | 47 int JavascriptRun(const char* script, void* scriptdata); |
48 VOID DoSize(VOID); | 48 VOID DoSize(VOID); |
49 VOID Setup(HWND hwnd, ICoreWebView2Host* webview); | 49 VOID Setup(HWND hwnd, ICoreWebView2Controller* webview); |
50 VOID Close(VOID); | 50 VOID Close(VOID); |
51 protected: | 51 protected: |
52 HWND hWnd = nullptr; | 52 HWND hWnd = nullptr; |
53 Microsoft::WRL::ComPtr<ICoreWebView2> WebView; | 53 Microsoft::WRL::ComPtr<ICoreWebView2> WebView; |
54 Microsoft::WRL::ComPtr<ICoreWebView2Host> WebHost; | 54 Microsoft::WRL::ComPtr<ICoreWebView2Controller> WebHost; |
55 }; | 55 }; |
56 | 56 |
57 LRESULT CALLBACK EdgeBrowser::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) | 57 LRESULT CALLBACK EdgeBrowser::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) |
58 { | 58 { |
59 switch (uMsg) | 59 switch (uMsg) |
82 | 82 |
83 case WM_CREATE: | 83 case WM_CREATE: |
84 { | 84 { |
85 // Step 3 - Create a single WebView within the parent window | 85 // Step 3 - Create a single WebView within the parent window |
86 // Create a WebView, whose parent is the main window hWnd | 86 // Create a WebView, whose parent is the main window hWnd |
87 Env->CreateCoreWebView2Host(hWnd, Callback<ICoreWebView2CreateCoreWebView2HostCompletedHandler>( | 87 Env->CreateCoreWebView2Controller(hWnd, Callback<ICoreWebView2CreateCoreWebView2ControllerCompletedHandler>( |
88 [hWnd](HRESULT result, ICoreWebView2Host* webhost) -> HRESULT { | 88 [hWnd](HRESULT result, ICoreWebView2Controller* webhost) -> HRESULT { |
89 EdgeWebView* WebView = new EdgeWebView; | 89 EdgeWebView* WebView = new EdgeWebView; |
90 ICoreWebView2* webview; | 90 ICoreWebView2* webview; |
91 | 91 |
92 WebView->Setup(hWnd, webhost); | 92 WebView->Setup(hWnd, webhost); |
93 dw_window_set_data(hWnd, _DW_HTML_DATA_NAME, DW_POINTER(WebView)); | 93 dw_window_set_data(hWnd, _DW_HTML_DATA_NAME, DW_POINTER(WebView)); |
333 return S_OK; | 333 return S_OK; |
334 }).Get()); | 334 }).Get()); |
335 return DW_ERROR_NONE; | 335 return DW_ERROR_NONE; |
336 } | 336 } |
337 | 337 |
338 VOID EdgeWebView::Setup(HWND hwnd, ICoreWebView2Host* host) | 338 VOID EdgeWebView::Setup(HWND hwnd, ICoreWebView2Controller* host) |
339 { | 339 { |
340 hWnd = hwnd; | 340 hWnd = hwnd; |
341 WebHost = host; | 341 WebHost = host; |
342 host->get_CoreWebView2(&WebView); | 342 host->get_CoreWebView2(&WebView); |
343 } | 343 } |