[Libreoffice-commits] core.git: vcl/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Mon May 18 20:11:39 UTC 2020
vcl/source/app/salvtables.cxx | 5 ++++-
vcl/source/window/stacking.cxx | 2 +-
2 files changed, 5 insertions(+), 2 deletions(-)
New commits:
commit f7ceb1f805b45cbd4b322da2ca4039d56dd430b3
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Mon May 18 17:26:09 2020 +0100
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Mon May 18 22:11:04 2020 +0200
tdf#133098 cannot truly unparent a vcl widget
once is created it cannot truly get unparented like a gtk one can, so if we
want to "unparent" it, move it to be a child of the hidden DefaultWindow
instead
Change-Id: I25efa497b99471b5b1df55c6e6a2a6890982b781
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94441
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 28005bce38ae..82b813a819b8 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -1107,7 +1107,10 @@ void SalInstanceContainer::move(weld::Widget* pWidget, weld::Container* pNewPare
assert(pVclWidget);
SalInstanceContainer* pNewVclParent = dynamic_cast<SalInstanceContainer*>(pNewParent);
assert(!pNewParent || pNewVclParent);
- pVclWidget->getWidget()->SetParent(pNewVclParent ? pNewVclParent->getWidget() : nullptr);
+ if (pNewVclParent)
+ pVclWidget->getWidget()->SetParent(pNewVclParent->getWidget());
+ else
+ pVclWidget->getWidget()->SetParentToDefaultWindow();
}
void SalInstanceContainer::recursively_unset_default_buttons()
diff --git a/vcl/source/window/stacking.cxx b/vcl/source/window/stacking.cxx
index 08b6cbaa987e..d5b130031de3 100644
--- a/vcl/source/window/stacking.cxx
+++ b/vcl/source/window/stacking.cxx
@@ -841,7 +841,7 @@ static SystemWindow *ImplGetLastSystemWindow( vcl::Window *pWin )
void Window::SetParent( vcl::Window* pNewParent )
{
- SAL_INFO_IF( !pNewParent, "vcl", "Window::SetParent(): pParent == NULL" );
+ SAL_WARN_IF( !pNewParent, "vcl", "Window::SetParent(): pParent == NULL" );
SAL_WARN_IF( pNewParent == this, "vcl", "someone tried to reparent a window to itself" );
if( !pNewParent || pNewParent == this )
More information about the Libreoffice-commits
mailing list