summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2016-07-09 21:28:44 +0100
committerEike Rathke <erack@redhat.com>2016-07-15 16:37:26 +0000
commite4001d9c652fe658c7c3d5fff03a315400530513 (patch)
tree9b95e6ae78cec4f184fc49acec49909bd4799171
parente58c1e63f7d0e272065e787bd000b11615e9266b (diff)
Resolves: tdf#100732 hang closing Print Preview with X-icon on menubar
triggered by change... commit f9bb13419549d621ffd55d9d81e0732a89560e2e Author: Juergen Funk <juergen.funk_ml@cib.de> Date: Fri May 13 10:42:17 2016 +0200 tdf#99815 use XNotifyingDispatch in sfx2 which allowed the problem introduced by... commit d0c3c24da2506bff1719a276f2eff34589fa7663 Author: Kohei Yoshida <kohei.yoshida@gmail.com> Date: Wed Jun 6 01:28:55 2012 -0400 Check if the system window has a close handler, and if yes, call it. This allows the close event in the preview window to be handled in a custom fashion, instead of having it call the normal "close window" command. to show up Change-Id: I5c46fb7a49ae44fd748b5b7192aeb951c7d65191 (cherry picked from commit 903e60753f4cf8fb03e27ed312a699f72ac1649a) Reviewed-on: https://gerrit.libreoffice.org/27078 Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com> Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Reviewed-by: Eike Rathke <erack@redhat.com> Tested-by: Eike Rathke <erack@redhat.com>
-rw-r--r--framework/source/dispatch/closedispatcher.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/framework/source/dispatch/closedispatcher.cxx b/framework/source/dispatch/closedispatcher.cxx
index a09018f87721..aa15c28009a1 100644
--- a/framework/source/dispatch/closedispatcher.cxx
+++ b/framework/source/dispatch/closedispatcher.cxx
@@ -186,6 +186,15 @@ void SAL_CALL CloseDispatcher::dispatchWithNotification(const css::util::URL&
{
// The closing frame has its own close handler. Call it instead.
m_pSysWindow->GetCloseHdl().Call(*m_pSysWindow);
+
+ aWriteLock.clear();
+ // <- SAFE ------------------------------
+
+ implts_notifyResultListener(
+ xListener,
+ css::frame::DispatchResultState::SUCCESS,
+ css::uno::Any());
+
return;
}