diff --git a/src/frontends/qt4/GuiDocument.cpp b/src/frontends/qt4/GuiDocument.cpp index 76c85852df..e19ec522d4 100644 --- a/src/frontends/qt4/GuiDocument.cpp +++ b/src/frontends/qt4/GuiDocument.cpp @@ -31,6 +31,7 @@ #include "BufferView.h" #include "Color.h" #include "ColorCache.h" +#include "Cursor.h" #include "Encoding.h" #include "FloatPlacement.h" #include "Format.h" @@ -2593,9 +2594,16 @@ void GuiDocument::applyView() bp_.quotes_language = (InsetQuotes::QuoteLanguage) langModule->quoteStyleCO->itemData( langModule->quoteStyleCO->currentIndex()).toInt(); - QString const lang = langModule->languageCO->itemData( + QString const langname = langModule->languageCO->itemData( langModule->languageCO->currentIndex()).toString(); - bp_.language = lyx::languages.getLanguage(fromqstr(lang)); + Language const * newlang = lyx::languages.getLanguage(fromqstr(langname)); + Cursor & cur = const_cast(bufferview())->cursor(); + // If current cursor language was the document language, then update it too. + if (cur.current_font.language() == bp_.language) { + cur.current_font.setLanguage(newlang); + cur.real_current_font.setLanguage(newlang); + } + bp_.language = newlang; QString const pack = langModule->languagePackageCO->itemData( langModule->languagePackageCO->currentIndex()).toString(); diff --git a/status.21x b/status.21x index c34304220c..f94647cafd 100644 --- a/status.21x +++ b/status.21x @@ -68,6 +68,8 @@ What's new - Fix automatic insertion of longtable captions (bug 9692). - Fix setting of nested minipage via the dialog (bug 8716). + +- When the document language is changed, update cursor language too (bug 9586). * INTERNALS