Blame SOURCES/0001-tdf-137209-unparent-widgets-in-fragment-dtor.patch

eac0b7
From 96fc7531331f45a314416000150b1141e5686f38 Mon Sep 17 00:00:00 2001
eac0b7
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
eac0b7
Date: Fri, 2 Oct 2020 16:21:02 +0100
eac0b7
Subject: [PATCH] tdf#137209 unparent widgets in fragment dtor
eac0b7
eac0b7
Change-Id: I819514fd2b97e2cc8daad71a7f3b0b27afe6136d
eac0b7
---
eac0b7
 sw/source/ui/dbui/createaddresslistdialog.cxx | 8 ++++++++
eac0b7
 1 file changed, 8 insertions(+)
eac0b7
eac0b7
diff --git a/sw/source/ui/dbui/createaddresslistdialog.cxx b/sw/source/ui/dbui/createaddresslistdialog.cxx
eac0b7
index ae4d354ea29d..994a6045cea5 100644
eac0b7
--- a/sw/source/ui/dbui/createaddresslistdialog.cxx
eac0b7
+++ b/sw/source/ui/dbui/createaddresslistdialog.cxx
eac0b7
@@ -53,11 +53,13 @@ struct SwAddressFragment
eac0b7
     std::unique_ptr<weld::Builder> m_xBuilder;
eac0b7
     std::unique_ptr<weld::Label> m_xLabel;
eac0b7
     std::unique_ptr<weld::Entry> m_xEntry;
eac0b7
+    weld::Container* m_pGrid;
eac0b7
 
eac0b7
     SwAddressFragment(weld::Container* pGrid, int nLine)
eac0b7
         : m_xBuilder(Application::CreateBuilder(pGrid, "modules/swriter/ui/addressfragment.ui"))
eac0b7
         , m_xLabel(m_xBuilder->weld_label("label"))
eac0b7
         , m_xEntry(m_xBuilder->weld_entry("entry"))
eac0b7
+        , m_pGrid(pGrid)
eac0b7
     {
eac0b7
         m_xLabel->set_grid_left_attach(0);
eac0b7
         m_xLabel->set_grid_top_attach(nLine);
eac0b7
@@ -65,6 +67,12 @@ struct SwAddressFragment
eac0b7
         m_xEntry->set_grid_left_attach(1);
eac0b7
         m_xEntry->set_grid_top_attach(nLine);
eac0b7
     }
eac0b7
+
eac0b7
+    virtual ~SwAddressFragment()
eac0b7
+    {
eac0b7
+        m_pGrid->move(m_xEntry.get(), nullptr);
eac0b7
+        m_pGrid->move(m_xLabel.get(), nullptr);
eac0b7
+    }
eac0b7
 };
eac0b7
 
eac0b7
 class SwAddressControl_Impl
eac0b7
-- 
eac0b7
2.26.2
eac0b7