diff --git a/include/wx/gtk/control.h b/include/wx/gtk/control.h index 1706f77c64..569bdbbe4d 100644 --- a/include/wx/gtk/control.h +++ b/include/wx/gtk/control.h @@ -103,6 +103,6 @@ private: }; // Fix sensitivity due to bug in GTK+ < 2.14 -void wxGtkFixSensitivity(wxWindow* ctrl); +void WXDLLEXPORT wxGtkFixSensitivity(wxWindow* ctrl); #endif // _WX_GTK_CONTROL_H_ diff --git a/src/gtk/control.cpp b/src/gtk/control.cpp index 7b0ea23404..7b9733fb01 100644 --- a/src/gtk/control.cpp +++ b/src/gtk/control.cpp @@ -22,6 +22,7 @@ #include "wx/fontutil.h" #include "wx/utils.h" #include "wx/gtk/private.h" +#include "wx/sysopt.h" // ============================================================================ // wxControl implementation @@ -384,7 +385,11 @@ void wxGtkFixSensitivity(wxWindow* ctrl) #ifdef __WXGTK24__ // Work around a GTK+ bug whereby button is insensitive after being // enabled - if (gtk_check_version(2,14,0)) + if (gtk_check_version(2,14,0) +#if wxUSE_SYSTEM_OPTIONS + && (wxSystemOptions::GetOptionInt(wxT("gtk.control.disable-sensitivity-fix")) != 1) +#endif + ) { wxPoint pt = wxGetMousePosition(); wxRect rect(ctrl->ClientToScreen(wxPoint(0, 0)), ctrl->GetSize());