diff --git a/repos/libports/src/app/qt5/qt_avplay/main_window.cpp b/repos/libports/src/app/qt5/qt_avplay/main_window.cpp index 40b253e679..f5c9a1a50e 100644 --- a/repos/libports/src/app/qt5/qt_avplay/main_window.cpp +++ b/repos/libports/src/app/qt5/qt_avplay/main_window.cpp @@ -36,6 +36,21 @@ Main_window::Main_window(Genode::Env &env) _input_session_component.event_queue().enabled(true); _ep.manage(&_input_session_component); + /* add widgets to layout */ + + _layout->addWidget(_avplay_widget); + _layout->addWidget(_control_bar); + + /* + * The main window must be visible before avplay or a framebuffer filter + * requests the framebuffer session which goes to Nitpicker, because the + * parent view of the new Nitpicker view is part of the + * QNitpickerPlatformWindow object, which is created when the main window + * becomes visible. + */ + + show(); + /* find out which filtering framebuffer services to start and sort them in reverse order */ static QList framebuffer_filters; @@ -65,11 +80,6 @@ Main_window::Main_window(Genode::Env &env) new Filter_framebuffer_service_factory(framebuffer_filter->slave->policy()); } - /* add widgets to layout */ - - _layout->addWidget(_avplay_widget); - _layout->addWidget(_control_bar); - /* start avplay */ Avplay_slave *avplay_slave = new Avplay_slave(_env.pd(), _env.rm(),