Przeglądaj źródła

Exporter: make it modeless

Le Tan 4 lat temu
rodzic
commit
c9be7a7a7f
2 zmienionych plików z 13 dodań i 6 usunięć
  1. 2 0
      src/widgets/dialogs/exportdialog.cpp
  2. 11 6
      src/widgets/mainwindow.cpp

+ 2 - 0
src/widgets/dialogs/exportdialog.cpp

@@ -53,6 +53,8 @@ ExportDialog::ExportDialog(Notebook *p_notebook,
 
     restoreFields(m_option);
 
+    setWindowFlags(windowFlags() | Qt::WindowMinimizeButtonHint);
+
     connect(this, &QDialog::finished,
             this, [this]() {
                 saveFields(m_option);

+ 11 - 6
src/widgets/mainwindow.cpp

@@ -857,12 +857,17 @@ void MainWindow::exportNotes()
     if (noteNode && !noteNode->hasContent()) {
         noteNode = nullptr;
     }
-    ExportDialog dialog(currentNotebook,
-                        folderNode,
-                        noteNode,
-                        viewWindow ? viewWindow->getBuffer() : nullptr,
-                        this);
-    dialog.exec();
+    auto dialog = new ExportDialog(currentNotebook,
+                                   folderNode,
+                                   noteNode,
+                                   viewWindow ? viewWindow->getBuffer() : nullptr,
+                                   nullptr);
+    connect(dialog, &QDialog::finished,
+            this, [this, dialog]() {
+                dialog->deleteLater();
+            });
+    // Let it be able to run at background.
+    dialog->show();
 }
 
 void MainWindow::showTips(const QString &p_message, int p_timeoutMilliseconds)