|
13 | 13 | using CefSharp.Example.JavascriptBinding; |
14 | 14 | using CefSharp.Example.ModelBinding; |
15 | 15 | using CefSharp.Example.PostMessage; |
| 16 | +using CefSharp.Fluent; |
16 | 17 | using CefSharp.Wpf.Example.Handlers; |
17 | 18 | using CefSharp.Wpf.Example.ViewModels; |
18 | 19 | using CefSharp.Wpf.Experimental.Accessibility; |
@@ -131,10 +132,24 @@ public BrowserTabView() |
131 | 132 | } |
132 | 133 | }; |
133 | 134 |
|
134 | | - var downloadHandler = new DownloadHandler(); |
135 | | - downloadHandler.OnBeforeDownloadFired += OnBeforeDownloadFired; |
136 | | - downloadHandler.OnDownloadUpdatedFired += OnDownloadUpdatedFired; |
137 | | - browser.DownloadHandler = downloadHandler; |
| 135 | + browser.DownloadHandler = DownloadHandler |
| 136 | + .Create() |
| 137 | + .CanDownload((chromiumWebBrowser, browser, url, requestMethod) => |
| 138 | + { |
| 139 | + //All all downloads |
| 140 | + return true; |
| 141 | + }) |
| 142 | + .OnBeforeDownload((chromiumWebBrowser, browser, downloadItem, callback) => |
| 143 | + { |
| 144 | + UpdateDownloadAction("OnBeforeDownload", downloadItem); |
| 145 | + |
| 146 | + callback.Continue("", showDialog: true); |
| 147 | + |
| 148 | + }).OnDownloadUpdated((chromiumWebBrowser, browser, downloadItem, callback) => |
| 149 | + { |
| 150 | + UpdateDownloadAction("OnDownloadUpdated", downloadItem); |
| 151 | + }) |
| 152 | + .Build(); |
138 | 153 | browser.AudioHandler = new CefSharp.Handler.AudioHandler(); |
139 | 154 |
|
140 | 155 | //Read an embedded bitmap into a memory stream then register it as a resource you can then load custom://cefsharp/images/beach.jpg |
@@ -238,16 +253,6 @@ private void OnBrowserJavascriptMessageReceived(object sender, JavascriptMessage |
238 | 253 |
|
239 | 254 | } |
240 | 255 |
|
241 | | - private void OnBeforeDownloadFired(object sender, DownloadItem e) |
242 | | - { |
243 | | - this.UpdateDownloadAction("OnBeforeDownload", e); |
244 | | - } |
245 | | - |
246 | | - private void OnDownloadUpdatedFired(object sender, DownloadItem e) |
247 | | - { |
248 | | - this.UpdateDownloadAction("OnDownloadUpdated", e); |
249 | | - } |
250 | | - |
251 | 256 | private void UpdateDownloadAction(string downloadAction, DownloadItem downloadItem) |
252 | 257 | { |
253 | 258 | this.Dispatcher.InvokeAsync(() => |
|
0 commit comments