diff --git a/libs/ui/include/psemek/ui/event_interceptor.hpp b/libs/ui/include/psemek/ui/event_interceptor.hpp index 8a404571..e91dd571 100644 --- a/libs/ui/include/psemek/ui/event_interceptor.hpp +++ b/libs/ui/include/psemek/ui/event_interceptor.hpp @@ -11,6 +11,8 @@ namespace psemek::ui : single_container { geom::box size_constraints() const override; + geom::interval width_constraints(float height) const override; + geom::interval height_constraints(float width) const override; struct shape const & shape() const override; void reshape(geom::box const & bbox) override; diff --git a/libs/ui/source/event_interceptor.cpp b/libs/ui/source/event_interceptor.cpp index 9a171375..8172e2c5 100644 --- a/libs/ui/source/event_interceptor.cpp +++ b/libs/ui/source/event_interceptor.cpp @@ -11,6 +11,20 @@ namespace psemek::ui return element::size_constraints(); } + geom::interval event_interceptor::width_constraints(float height) const + { + if (child_) + return child_->width_constraints(height); + return element::width_constraints(height); + } + + geom::interval event_interceptor::height_constraints(float width) const + { + if (child_) + return child_->height_constraints(width); + return element::height_constraints(width); + } + shape const & event_interceptor::shape() const { static const null_shape fallback_shape;