From 14cd33ccccb6ec2b315d013cd9b1519fa03dda77 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Mon, 30 Aug 2021 15:58:25 +0200
Subject: [PATCH] UI: Fix the delete floating docs on view close

XXX: Still not closing floating docs on window close
---
 src/UI/UnclosableDockWidget.cc | 3 ++-
 src/UI/VivyDocumentView.cc     | 9 ++++-----
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/UI/UnclosableDockWidget.cc b/src/UI/UnclosableDockWidget.cc
index 0b7fb6be..a1487035 100644
--- a/src/UI/UnclosableDockWidget.cc
+++ b/src/UI/UnclosableDockWidget.cc
@@ -13,7 +13,7 @@ void
 UnclosableDockWidget::closeEvent(QCloseEvent *event) noexcept
 {
     if (allowedToClose)
-        event->accept();
+        QDockWidget::closeEvent(event);
     else
         event->ignore();
 }
@@ -21,5 +21,6 @@ UnclosableDockWidget::closeEvent(QCloseEvent *event) noexcept
 void
 UnclosableDockWidget::allowClose() noexcept
 {
+    qDebug() << "Dock" << windowTitle() << "is now allowed to be closed";
     allowedToClose = true;
 }
diff --git a/src/UI/VivyDocumentView.cc b/src/UI/VivyDocumentView.cc
index 575871ea..1f1f3ec3 100644
--- a/src/UI/VivyDocumentView.cc
+++ b/src/UI/VivyDocumentView.cc
@@ -52,9 +52,10 @@ VivyDocumentView::getDocument() const noexcept
 QString
 VivyDocumentView::getDocumentTabName() const noexcept
 {
-    return document->checkDocumentOption(VivyDocument::UntouchedByDefault)
-               ? (Utils::untouchedTabIndicator + " ")
-               : QString::fromUtf8("") + Utils::getBaseName(document->getName());
+    return (document->checkDocumentOption(VivyDocument::UntouchedByDefault)
+                ? (Utils::untouchedTabIndicator + " ")
+                : QString::fromUtf8("")) +
+           Utils::getBaseName(document->getName());
 }
 
 QString
@@ -147,8 +148,6 @@ VivyDocumentView::closeDocument() noexcept
              << document.use_count() << ")";
     vivyApp->documentStore.closeDocument(document->getUuid());
 
-    TODO(Force close all floating docks)
-
     // Kubat: the visualizer pointer should have been deleted by the
     // deleteAllContent() call if it was created.
     deleteAllContent();
-- 
GitLab