John Weeks wrote: > You may need to call setVisible(true). IIRC, changing window flags makes the > widget invisible.
You appear to be right, thanks. Now I'm just left with how to restore state correctly after starting the application anew. After unfloating the window with static void unfloat(QDockWidget* that, bool floating) { if (floating && that) { that->setTitleBarWidget(0); // remove unwanted flags Qt::WindowFlags flags = that->windowFlags() & ~(Qt::Tool| Qt::FramelessWindowHint|Qt::X11BypassWindowManagerHint); // set wanted flags that->setWindowFlags(flags | Qt::Window); that->updateGeometry(); that->setVisible(true); } } I'm stuck with a window that just shows whatever was behind it when it was first created. Maybe I should un-unfloat the window before exiting, or simply dock it. R. _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest