[Libreoffice-commits] core.git: sc/source sw/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Tue Oct 6 12:43:34 UTC 2020
sc/source/ui/dbgui/sortkeydlg.cxx | 8 +++++++-
sc/source/ui/inc/sortkeydlg.hxx | 2 ++
sw/source/ui/index/cnttab.cxx | 14 ++++++++++++--
3 files changed, 21 insertions(+), 3 deletions(-)
New commits:
commit 19f331ca6aa87a438b1eeabef72978ddbfb0e747
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Oct 6 10:40:38 2020 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Tue Oct 6 14:42:48 2020 +0200
reparent to nothing to break gtk ownership cycle
which is our usual solution, instead of using less common flag
Change-Id: I9dd54a161df53a5b6ffb0b7655e510a6cc4c4824
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104018
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sc/source/ui/dbgui/sortkeydlg.cxx b/sc/source/ui/dbgui/sortkeydlg.cxx
index db218cf8678f..ec81bda34fc1 100644
--- a/sc/source/ui/dbgui/sortkeydlg.cxx
+++ b/sc/source/ui/dbgui/sortkeydlg.cxx
@@ -13,13 +13,19 @@
ScSortKeyItem::ScSortKeyItem(weld::Container* pParent)
: m_xBuilder(Application::CreateBuilder(pParent, "modules/scalc/ui/sortkey.ui"))
- , m_xFrame(m_xBuilder->weld_frame("SortKeyFrame", true))
+ , m_xFrame(m_xBuilder->weld_frame("SortKeyFrame"))
, m_xLbSort(m_xBuilder->weld_combo_box("sortlb"))
, m_xBtnUp(m_xBuilder->weld_radio_button("up"))
, m_xBtnDown(m_xBuilder->weld_radio_button("down"))
+ , m_pParent(pParent)
{
}
+ScSortKeyItem::~ScSortKeyItem()
+{
+ m_pParent->move(m_xFrame.get(), nullptr);
+}
+
void ScSortKeyItem::DisableField()
{
m_xFrame->set_sensitive(false);
diff --git a/sc/source/ui/inc/sortkeydlg.hxx b/sc/source/ui/inc/sortkeydlg.hxx
index 1ac699970d4c..85b6da332e20 100644
--- a/sc/source/ui/inc/sortkeydlg.hxx
+++ b/sc/source/ui/inc/sortkeydlg.hxx
@@ -23,8 +23,10 @@ struct ScSortKeyItem
std::unique_ptr<weld::ComboBox> m_xLbSort;
std::unique_ptr<weld::RadioButton> m_xBtnUp;
std::unique_ptr<weld::RadioButton> m_xBtnDown;
+ weld::Container* m_pParent;
ScSortKeyItem(weld::Container* pParent);
+ ~ScSortKeyItem();
void DisableField();
void EnableField();
diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx
index 8fa6ae0e21d6..0d7454f2410a 100644
--- a/sw/source/ui/index/cnttab.cxx
+++ b/sw/source/ui/index/cnttab.cxx
@@ -1393,7 +1393,7 @@ public:
, aFormToken(rToken)
, bNextControl(false)
, m_pParent(pTokenWin)
- , m_xEntry(m_xBuilder->weld_entry("entry", true))
+ , m_xEntry(m_xBuilder->weld_entry("entry"))
{
m_xEntry->connect_changed(LINK(this, SwTOXEdit, ModifyHdl));
m_xEntry->connect_key_press(LINK(this, SwTOXEdit, KeyInputHdl));
@@ -1401,6 +1401,11 @@ public:
m_xEntry->set_tooltip_text(m_pParent->CreateQuickHelp(rToken));
}
+ virtual ~SwTOXEdit() override
+ {
+ m_pParent->get_child_container()->move(m_xEntry.get(), nullptr);
+ }
+
virtual WindowType GetType() const override
{
return WindowType::EDIT;
@@ -1549,13 +1554,18 @@ public:
, aFormToken(rToken)
, bNextControl(false)
, m_pParent(pTokenWin)
- , m_xButton(m_xBuilder->weld_toggle_button("button", true))
+ , m_xButton(m_xBuilder->weld_toggle_button("button"))
{
m_xButton->connect_key_press(LINK(this, SwTOXButton, KeyInputHdl));
m_xButton->connect_focus_in(LINK(this, SwTOXButton, FocusInHdl));
m_xButton->set_tooltip_text(m_pParent->CreateQuickHelp(rToken));
}
+ virtual ~SwTOXButton() override
+ {
+ m_pParent->get_child_container()->move(m_xButton.get(), nullptr);
+ }
+
virtual WindowType GetType() const override
{
return WindowType::PUSHBUTTON;
More information about the Libreoffice-commits
mailing list