diff --git a/docs/doxygen/mainpages/const_cpp.h b/docs/doxygen/mainpages/const_cpp.h
index 379e9ee3ec..2a23d7381e 100644
--- a/docs/doxygen/mainpages/const_cpp.h
+++ b/docs/doxygen/mainpages/const_cpp.h
@@ -185,6 +185,7 @@ Currently the following symbols exist:
decide whether some function should be overloaded for both
long
and long long
types.}
@itemdef{wxHAS_MULTIPLE_FILEDLG_FILTERS, Defined if wxFileDialog supports multiple ('|'-separated) filters.}
+@itemdef{wxHAS_NATIVE_ANIMATIONCTRL, Defined if native wxAnimationCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
@itemdef{wxHAS_NATIVE_DATAVIEWCTRL, Defined if native wxDataViewCtrl class is being used (this symbol only exists in wxWidgets 3.1.4 and later).}
@itemdef{wxHAS_NATIVE_WINDOW, Defined if wxNativeWindow class is available.}
@itemdef{wxHAS_NULLPTR_T, Defined if the currently used compiler supports C++11 @c nullptr.}
diff --git a/include/wx/animate.h b/include/wx/animate.h
index 3766eaf78c..a2a03a463c 100644
--- a/include/wx/animate.h
+++ b/include/wx/animate.h
@@ -167,6 +167,8 @@ private:
#if defined(__WXGTK20__)
#include "wx/gtk/animate.h"
+
+ #define wxHAS_NATIVE_ANIMATIONCTRL
#else
class WXDLLIMPEXP_ADV wxAnimationCtrl : public wxGenericAnimationCtrl
{
diff --git a/src/common/animatecmn.cpp b/src/common/animatecmn.cpp
index 6be1399b7d..4bbc7c75b3 100644
--- a/src/common/animatecmn.cpp
+++ b/src/common/animatecmn.cpp
@@ -40,7 +40,7 @@ wxAnimation wxNullAnimation;
wxIMPLEMENT_DYNAMIC_CLASS(wxAnimation, wxObject);
wxIMPLEMENT_ABSTRACT_CLASS(wxAnimationCtrlBase, wxControl);
-#if !defined(__WXGTK20__)
+#if !defined(wxHAS_NATIVE_ANIMATIONCTRL)
// In this case the "native" ctrl is the generic ctrl. See wx/animate.h
wxIMPLEMENT_CLASS(wxAnimationCtrl, wxGenericAnimationCtrl);
#endif