cui/source/options/treeopt.cxx | 5 +++-- include/svtools/restartdialog.hxx | 4 ++-- svtools/source/dialogs/restartdialog.cxx | 6 ++++-- 3 files changed, 9 insertions(+), 6 deletions(-)
New commits: commit 0fa14d58457e9418ff756a0efd66e365c4403a67 Author: Mike Kaganski <mike.kagan...@collabora.com> AuthorDate: Thu Dec 13 14:24:01 2018 +0300 Commit: Mike Kaganski <mike.kagan...@collabora.com> CommitDate: Thu Dec 13 14:22:28 2018 +0100 tdf#121180: close Options dialog when restart is confirmed Change-Id: Ieb6e62ca83921abed6b6432d70c6717dadfaaa34 Reviewed-on: https://gerrit.libreoffice.org/65090 Reviewed-by: Caolán McNamara <caol...@redhat.com> Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com> diff --git a/cui/source/options/treeopt.cxx b/cui/source/options/treeopt.cxx index 0a2aa20f6885..435fd0acb04c 100644 --- a/cui/source/options/treeopt.cxx +++ b/cui/source/options/treeopt.cxx @@ -696,8 +696,9 @@ IMPL_LINK_NOARG(OfaTreeOptionsDialog, ApplyHdl_Impl, Button*, void) if ( bNeedsRestart ) { SolarMutexGuard aGuard; - ::svtools::executeRestartDialog(comphelper::getProcessComponentContext(), - GetFrameWeld(), eRestartReason); + if (svtools::executeRestartDialog(comphelper::getProcessComponentContext(), + GetFrameWeld(), eRestartReason)) + EndDialog(RET_OK); } } diff --git a/include/svtools/restartdialog.hxx b/include/svtools/restartdialog.hxx index 27f756b89e3f..932a03271a1e 100644 --- a/include/svtools/restartdialog.hxx +++ b/include/svtools/restartdialog.hxx @@ -63,8 +63,8 @@ enum RestartReason { RESTART_REASON_NONE }; -// Must be called with the solar mutex locked: -SVT_DLLPUBLIC void executeRestartDialog( +// Must be called with the solar mutex locked; returns if restart was initiated: +SVT_DLLPUBLIC bool executeRestartDialog( css::uno::Reference< css::uno::XComponentContext > const & context, weld::Window* parent, RestartReason reason); diff --git a/svtools/source/dialogs/restartdialog.cxx b/svtools/source/dialogs/restartdialog.cxx index 460267c2dde3..4ec3356276bb 100644 --- a/svtools/source/dialogs/restartdialog.cxx +++ b/svtools/source/dialogs/restartdialog.cxx @@ -93,18 +93,20 @@ IMPL_LINK_NOARG(RestartDialog, hdlNo, weld::Button&, void) } -void svtools::executeRestartDialog( +bool svtools::executeRestartDialog( css::uno::Reference< css::uno::XComponentContext > const & context, weld::Window* parent, RestartReason reason) { auto xRestartManager = css::task::OfficeRestartManager::get(context); if (xRestartManager->isRestartRequested(false)) - return; // don't try to show another dialog when restart is already in progress + return true; // don't try to show another dialog when restart is already in progress RestartDialog aDlg(parent, reason); if (aDlg.run()) { xRestartManager->requestRestart( css::uno::Reference< css::task::XInteractionHandler >()); + return true; } + return false; } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits