diff --git a/Libraries/LibGUI/GStackWidget.cpp b/Libraries/LibGUI/GStackWidget.cpp index 010cfc6855..d74003d45a 100644 --- a/Libraries/LibGUI/GStackWidget.cpp +++ b/Libraries/LibGUI/GStackWidget.cpp @@ -22,6 +22,8 @@ void GStackWidget::set_active_widget(GWidget* widget) m_active_widget->set_relative_rect(rect()); m_active_widget->set_visible(true); } + if (on_active_widget_change) + on_active_widget_change(m_active_widget); } void GStackWidget::resize_event(GResizeEvent& event) diff --git a/Libraries/LibGUI/GStackWidget.h b/Libraries/LibGUI/GStackWidget.h index f695928aa4..276e9cd793 100644 --- a/Libraries/LibGUI/GStackWidget.h +++ b/Libraries/LibGUI/GStackWidget.h @@ -10,6 +10,8 @@ public: GWidget* active_widget() const { return m_active_widget; } void set_active_widget(GWidget*); + Function on_active_widget_change; + virtual const char* class_name() const override { return "GStackWidget"; } protected: