Skip to content

Commit 6022c22

Browse files
committed
Merge remote-tracking branch 'remotes/upstream/master' into JsBinding_WIP
2 parents 2fdaa35 + 8620407 commit 6022c22

File tree

8 files changed

+65
-14
lines changed

8 files changed

+65
-14
lines changed

CefSharp.Core/Internals/RenderClientAdapter.h

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,31 @@ namespace CefSharp
128128
return cefBrowser->GetMainFrame();
129129
};
130130

131+
void ShowDevTools()
132+
{
133+
auto cefHost = TryGetCefHost();
134+
135+
if (cefHost != nullptr)
136+
{
137+
CefWindowInfo windowInfo;
138+
CefBrowserSettings settings;
139+
140+
windowInfo.SetAsPopup(cefHost->GetWindowHandle(), "DevTools");
141+
142+
cefHost->ShowDevTools(windowInfo, this, settings);
143+
}
144+
}
145+
146+
void CloseDevTools()
147+
{
148+
auto cefHost = TryGetCefHost();
149+
150+
if (cefHost != nullptr)
151+
{
152+
cefHost->CloseDevTools();
153+
}
154+
}
155+
131156
private:
132157

133158
void SetBuffer(BitmapInfo^ bitmapInfo, int newWidth, int newHeight, const void* buffer)

CefSharp.Core/ManagedCefBrowserAdapter.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -450,6 +450,16 @@ namespace CefSharp
450450
}
451451
}
452452

453+
void ShowDevTools()
454+
{
455+
_renderClientAdapter->ShowDevTools();
456+
}
457+
458+
void CloseDevTools()
459+
{
460+
_renderClientAdapter->CloseDevTools();
461+
}
462+
453463
virtual void Error(Exception^ ex)
454464
{
455465

CefSharp.WinForms.Example/BrowserForm.Designer.cs

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CefSharp.WinForms.Example/BrowserForm.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,5 +250,15 @@ private void CopySourceToClipBoardAsyncClick(object sender, EventArgs e)
250250
},
251251
TaskScheduler.FromCurrentSynchronizationContext());
252252
}
253+
254+
private void ShowDevToolsMenuItemClick(object sender, EventArgs e)
255+
{
256+
browser.ShowDevTools();
257+
}
258+
259+
private void CloseDevToolsMenuItemClick(object sender, EventArgs e)
260+
{
261+
browser.CloseDevTools();
262+
}
253263
}
254264
}

CefSharp.WinForms/ChromiumWebBrowser.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -249,15 +249,14 @@ public void StopFinding(bool clearSelection)
249249
managedCefBrowserAdapter.StopFinding(clearSelection);
250250
}
251251

252-
void IWebBrowserInternal.ShowDevTools()
252+
public void ShowDevTools()
253253
{
254-
// TODO: Do something about this one.
255-
throw new NotImplementedException("Implement when Cef upgraded to 1750.");
254+
managedCefBrowserAdapter.ShowDevTools();
256255
}
257256

258-
void IWebBrowserInternal.CloseDevTools()
257+
public void CloseDevTools()
259258
{
260-
throw new NotImplementedException("Implement when Cef upgraded to 1750.");
259+
managedCefBrowserAdapter.CloseDevTools();
261260
}
262261

263262
public void Stop()

CefSharp.Wpf/ChromiumWebBrowser.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1051,15 +1051,14 @@ private void ZoomReset()
10511051
});
10521052
}
10531053

1054-
void IWebBrowserInternal.ShowDevTools()
1054+
public void ShowDevTools()
10551055
{
1056-
// TODO: Do something about this one.
1057-
throw new NotImplementedException("Implement when Cef upgraded to 1750.");
1056+
managedCefBrowserAdapter.ShowDevTools();
10581057
}
10591058

1060-
void IWebBrowserInternal.CloseDevTools()
1059+
public void CloseDevTools()
10611060
{
1062-
throw new NotImplementedException("Implement when Cef upgraded to 1750.");
1061+
managedCefBrowserAdapter.CloseDevTools();
10631062
}
10641063

10651064
void IWebBrowserInternal.OnFrameLoadStart(string url, bool isMainFrame)

CefSharp/IWebBrowser.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,5 +242,15 @@ public interface IWebBrowser : IDisposable
242242
/// Opens a Print Dialog which if used (can be user cancelled) will print the browser contents.
243243
/// </summary>
244244
void Print();
245+
246+
/// <summary>
247+
/// Open developer tools in its own window.
248+
/// </summary>
249+
void ShowDevTools();
250+
251+
/// <summary>
252+
/// Explicitly close the developer tools window if one exists for this browser instance.
253+
/// </summary>
254+
void CloseDevTools();
245255
}
246256
}

CefSharp/Internals/IWebBrowserInternal.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ public interface IWebBrowserInternal : IWebBrowser
1313
void SetNavState(bool canGoBack, bool canGoForward, bool canReload);
1414
void SetTitle(string title);
1515
void SetTooltipText(string tooltipText);
16-
void ShowDevTools();
17-
void CloseDevTools();
1816

1917
void OnFrameLoadStart(string url, bool isMainFrame);
2018
void OnFrameLoadEnd(string url, bool isMainFrame, int httpStatusCode);

0 commit comments

Comments
 (0)