Resolves: tdf#97055 hyphenation claims its already active after closing
cancel button works, hyphen all works, but closing it via wm close
skips the cancel callback.
simplest thing seems to be to call SpellEnd when necessary, flagging
that its not necessary by disabling the close button on the RET_OK
case
Change-Id: Ib0a67c4395e9d20941e735ebb14f6bd7f7ddb66c
diff --git a/cui/source/dialogs/hyphen.cxx b/cui/source/dialogs/hyphen.cxx
index 28cbb0b..8dd3afa 100644
--- a/cui/source/dialogs/hyphen.cxx
+++ b/cui/source/dialogs/hyphen.cxx
@@ -268,7 +268,10 @@ void SvxHyphenWordDialog::ContinueHyph_Impl( sal_Int32 nInsPos )
}
}
else
EndDialog( RET_OK );
{
m_pCloseBtn->Disable();
EndDialog(RET_OK);
}
}
@@ -399,7 +402,6 @@ IMPL_LINK_NOARG_TYPED(SvxHyphenWordDialog, CancelHdl_Impl, Button*, void)
if( !m_bBusy )
{
m_bBusy = true;
m_pHyphWrapper->SpellEnd();
EndDialog();
m_bBusy = false;
}
@@ -501,6 +503,8 @@ SvxHyphenWordDialog::~SvxHyphenWordDialog()
void SvxHyphenWordDialog::dispose()
{
if (m_pCloseBtn->IsEnabled())
m_pHyphWrapper->SpellEnd();
m_pWordEdit.clear();
m_pLeftBtn.clear();
m_pRightBtn.clear();
@@ -512,7 +516,6 @@ void SvxHyphenWordDialog::dispose()
SfxModalDialog::dispose();
}
void SvxHyphenWordDialog::SetWindowTitle( LanguageType nLang )
{
SetText( m_aLabel + " (" + SvtLanguageTable::GetLanguageString( nLang ) + ")" );