From 40054ae87171ee4315ccc87761e198f0a2f64a34 Mon Sep 17 00:00:00 2001 From: Jan Holesovsky Date: Thu, 18 Dec 2014 21:42:13 +0100 Subject: spell dialog: Make [Close] work in protected documents with editable fields. We have to call ToggleChildWindow directly; calling SfxDispatcher's Execute() does not work here when we are in a document with protected section - in that case, the cursor can move from the editable field to the protected area, and the slots get disabled because of SW_DISABLE_ON_PROTECTED_CURSOR (see FN_SPELL_GRAMMAR_DIALOG in .sdi). Change-Id: I1c310c028aaaf774431d0b1e6bba10e901a8166d Reviewed-on: https://gerrit.libreoffice.org/13531 Reviewed-by: Andras Timar Tested-by: Andras Timar --- cui/source/dialogs/SpellDialog.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'cui') diff --git a/cui/source/dialogs/SpellDialog.cxx b/cui/source/dialogs/SpellDialog.cxx index 96b59dc53fc2..745fbd0d57ad 100644 --- a/cui/source/dialogs/SpellDialog.cxx +++ b/cui/source/dialogs/SpellDialog.cxx @@ -736,9 +736,13 @@ IMPL_LINK_NOARG(SpellDialog, IgnoreHdl) bool SpellDialog::Close() { - GetBindings().GetDispatcher()-> - Execute(rParent.GetType(), - SfxCallMode::ASYNCHRON|SfxCallMode::RECORD); + // We have to call ToggleChildWindow directly; calling SfxDispatcher's + // Execute() does not work here when we are in a document with protected + // section - in that case, the cursor can move from the editable field to + // the protected area, and the slots get disabled because of + // SW_DISABLE_ON_PROTECTED_CURSOR (see FN_SPELL_GRAMMAR_DIALOG in .sdi). + SfxViewFrame::Current()->ToggleChildWindow(rParent.GetType()); + return true; } -- cgit v1.2.3