diff --git a/src/Wt/WBootstrap5Theme.C b/src/Wt/WBootstrap5Theme.C index 6ac05fa2..4aa10f5f 100644 --- a/src/Wt/WBootstrap5Theme.C +++ b/src/Wt/WBootstrap5Theme.C @@ -6,6 +6,7 @@ #include "Wt/WBootstrap5Theme.h" +#include "Wt/WCompositeWidget.h" #include "Wt/WAbstractItemView.h" #include "Wt/WAbstractSpinBox.h" #include "Wt/WApplication.h" @@ -245,6 +246,14 @@ void WBootstrap5Theme::apply(WWidget *widget, DomElement& element, if (!widget->isThemeStyleEnabled()) return; + { + auto composite = dynamic_cast(widget); + if(composite) + { + widget = composite->implementation(); + } + } + { auto popup = dynamic_cast(widget); if (popup) { diff --git a/src/Wt/WCompositeWidget.h b/src/Wt/WCompositeWidget.h index bb3367b9..c5e6c9ff 100644 --- a/src/Wt/WCompositeWidget.h +++ b/src/Wt/WCompositeWidget.h @@ -8,6 +8,7 @@ #define WCOMPOSITE_WIDGET_H_ #include +#include "Wt/WBootstrap5Theme.h" namespace Wt { @@ -47,6 +48,8 @@ namespace Wt { */ class WT_API WCompositeWidget : public WWidget { + friend void WBootstrap5Theme::apply(WWidget *widget, DomElement& element, + int elementRole) const; public: /*! \brief Creates a %WCompositeWidget. *