From 68582f69738d0722e40ec365aef788af46da6db6 Mon Sep 17 00:00:00 2001 From: chylex <contact@chylex.com> Date: Sat, 8 Jan 2022 05:44:24 +0100 Subject: [PATCH] Fix not disposing frame object when handling key events --- Browser/Handling/KeyboardHandlerBase.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Browser/Handling/KeyboardHandlerBase.cs b/Browser/Handling/KeyboardHandlerBase.cs index 7ad390cb..6a11f605 100644 --- a/Browser/Handling/KeyboardHandlerBase.cs +++ b/Browser/Handling/KeyboardHandlerBase.cs @@ -14,8 +14,12 @@ protected virtual bool HandleRawKey(IWebBrowser browserControl, Keys key, CefEve } bool IKeyboardHandler.OnPreKeyEvent(IWebBrowser browserControl, IBrowser browser, KeyType type, int windowsKeyCode, int nativeKeyCode, CefEventFlags modifiers, bool isSystemKey, ref bool isKeyboardShortcut) { - if (type == KeyType.RawKeyDown && !browser.FocusedFrame.Url.StartsWith("devtools://")) { - return HandleRawKey(browserControl, (Keys) windowsKeyCode, modifiers); + if (type == KeyType.RawKeyDown) { + using var frame = browser.FocusedFrame; + + if (!frame.Url.StartsWith("devtools://")) { + return HandleRawKey(browserControl, (Keys) windowsKeyCode, modifiers); + } } return false;