: QDockWidget(&parent, flags), Dialog(parent, name, title)
{
setObjectName(name);
- if (flags & Qt::Drawer)
- setFeatures(QDockWidget::NoDockWidgetFeatures);
parent.addDockWidget(area, this);
hide();
}
Dialog * createGuiSearchAdv(GuiView & lv)
{
- return new FindAndReplace(lv, Qt::RightDockWidgetArea);
+ FindAndReplace * gui = new FindAndReplace(lv, Qt::RightDockWidgetArea);
+#ifdef Q_WS_MACX
+ // On Mac show and floating
+ gui->setFloating(true);
+#endif
+ return gui;
}
Dialog * createGuiProgressView(GuiView & guiview)
{
-#ifdef Q_WS_MACX
- return new GuiProgressView(guiview, Qt::RightDockWidgetArea, Qt::Drawer);
-#else
return new GuiProgressView(guiview, Qt::BottomDockWidgetArea);
-#endif
}
}
-Dialog * createGuiSpellchecker(GuiView & lv) { return new GuiSpellchecker(lv); }
+Dialog * createGuiSpellchecker(GuiView & lv)
+{
+ GuiSpellchecker * gui = new GuiSpellchecker(lv);
+#ifdef Q_WS_MACX
+ gui->setFloating(true);
+#endif
+ return gui;
+}
+
} // namespace frontend
} // namespace lyx
void GuiToc::updateView()
{
-#ifndef Q_WS_MACX
widget_->updateView();
return;
-#endif
-
- widget_->updateView();
-
- // For Mac: switch to a docked TOC in fullscreen mode.
- // We use the features() here instead of WindowFlags because
- // the latter are not reliable (always returns Qt::Drawer).
- if (!(features() & DockWidgetClosable) && lyxview().isFullScreen()) {
- setWindowFlags(Qt::Widget);
- setFeatures(DockWidgetClosable);
- // Setting features hides the dialog, see Qt's doc.
- show();
- } else if ((features() & DockWidgetClosable) && !lyxview().isFullScreen()) {
- setWindowFlags(Qt::Drawer);
- setFeatures(NoDockWidgetFeatures);
- // Setting features hides the dialog, see Qt's doc.
- show();
- }
}
Dialog * createGuiToc(GuiView & lv)
{
- GuiView & guiview = static_cast<GuiView &>(lv);
+ GuiToc * toc;
#ifdef Q_WS_MACX
- // On Mac show as a drawer at the right
- return new GuiToc(guiview, Qt::RightDockWidgetArea, Qt::Drawer);
+ // On Mac show at the right and floating
+ toc = new GuiToc(lv, Qt::RightDockWidgetArea);
+ toc->setFloating(true);
#else
- return new GuiToc(guiview);
+ toc = new GuiToc(lv);
#endif
+ return toc;
}