summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2019-05-03 12:37:32 +0100
committerCaolán McNamara <caolanm@redhat.com>2019-05-07 09:54:39 +0200
commit5e8d51ca7b597eeaf9f8cfbb1c97e8ab51b030a8 (patch)
tree438b8eb3a9d442d9ead685f9e8aceae9b9a139d4 /sfx2
parent65420c21194a28aeead0238838028b734b663d87 (diff)
tdf#125079 turn off GTK_WIN_POS_CENTER_ON_PARENT after a while
Change-Id: Ib268a6b32257aee812e5bae27a6db94431d2abbb Reviewed-on: https://gerrit.libreoffice.org/71739 Tested-by: Jenkins Tested-by: Xisco Faulí <xiscofauli@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/doc/templatedlg.cxx14
1 files changed, 13 insertions, 1 deletions
diff --git a/sfx2/source/doc/templatedlg.cxx b/sfx2/source/doc/templatedlg.cxx
index 77ca1eb9b7dc..909a43ed30e5 100644
--- a/sfx2/source/doc/templatedlg.cxx
+++ b/sfx2/source/doc/templatedlg.cxx
@@ -1381,6 +1381,7 @@ SfxTemplateSelectionDlg::SfxTemplateSelectionDlg(weld::Window* pParent)
SfxTemplateSelectionDlg::~SfxTemplateSelectionDlg()
{
+ maIdle.Stop();
}
short SfxTemplateSelectionDlg::run()
@@ -1389,10 +1390,21 @@ short SfxTemplateSelectionDlg::run()
// has taken its final size. The parent size request is processed during
// the dialogs event loop so configure this dialog to center to
// the parents pending geometry request
- m_xDialog->set_centered_on_parent_geometry_request();
+ m_xDialog->set_centered_on_parent(true);
+
+ // tdf#125079 toggle off the size tracking at some future idle point
+ maIdle.SetPriority(TaskPriority::LOWEST);
+ maIdle.SetInvokeHandler(LINK(this,SfxTemplateSelectionDlg,TimeOut));
+ maIdle.Start();
+
return weld::GenericDialogController::run();
}
+IMPL_LINK_NOARG(SfxTemplateSelectionDlg, TimeOut, Timer*, void)
+{
+ m_xDialog->set_centered_on_parent(false);
+}
+
IMPL_LINK(SfxTemplateSelectionDlg, OpenTemplateHdl, ThumbnailViewItem*, pItem, void)
{
TemplateViewItem *pViewItem = static_cast<TemplateViewItem*>(pItem);