From 8994f6abd72121646c7bac14bec5c3ea9933b858 Mon Sep 17 00:00:00 2001
From: Jeff Young <jeff@rokeby.ie>
Date: Wed, 19 Mar 2025 10:19:58 +0000
Subject: [PATCH] Leave navigation controls active.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/20378
---
 common/widgets/ui_common.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/common/widgets/ui_common.cpp b/common/widgets/ui_common.cpp
index b2f3204d8c..cb73c93b6f 100644
--- a/common/widgets/ui_common.cpp
+++ b/common/widgets/ui_common.cpp
@@ -40,6 +40,7 @@
 #include <settings/common_settings.h>
 #include <bitmaps/bitmap_types.h>
 #include <string_utils.h>
+#include <wx/hyperlink.h>
 
 
 const wxString KIUI::s_FocusStealableInputName = wxS( "KI_NOFOCUS" );
@@ -325,13 +326,14 @@ bool KIUI::IsModalDialogFocused()
 void KIUI::Disable( wxWindow* aWindow )
 {
     wxScrollBar*      scrollBar = dynamic_cast<wxScrollBar*>( aWindow );
+    wxHyperlinkCtrl*  hyperlink = dynamic_cast<wxHyperlinkCtrl*>( aWindow );
     wxGrid*           grid = dynamic_cast<wxGrid*>( aWindow );
     wxStyledTextCtrl* scintilla = dynamic_cast<wxStyledTextCtrl*>( aWindow );
     wxControl*        control = dynamic_cast<wxControl*>( aWindow );
 
-    if( scrollBar )
+    if( scrollBar || hyperlink )
     {
-        // Leave a scroll bar active
+        // Leave navigation controls active
     }
     else if( grid )
     {