mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Fix bug #8238: correct the forward argument of replace2string() in on_replacePB_clicked().
(cherry picked from commit44b3278006
) Fix the wrong cursor move when forward flag is false: The forward flag is used to place the cursor behind the replaced text if it's true. But it's not correct to move the cursor if it's false. The cursor is in front of the replacement already after the replaceSelectionWithString() was done. (cherry picked from commit430cf3ee5e
)
This commit is contained in:
parent
a4db6d6c14
commit
7cc30cdf29
@ -315,8 +315,13 @@ void SpellcheckerWidget::on_replacePB_clicked()
|
||||
return;
|
||||
docstring const textfield = qstring_to_ucs4(d->ui.wordED->text());
|
||||
docstring const replacement = qstring_to_ucs4(d->ui.replaceCO->currentText());
|
||||
docstring const datastring = replace2string(replacement, textfield,
|
||||
true, true, false, false);
|
||||
docstring const datastring =
|
||||
replace2string(replacement, textfield,
|
||||
true, // case sensitive
|
||||
true, // match word
|
||||
false, // all words
|
||||
true, // forward
|
||||
false); // find next
|
||||
|
||||
LYXERR(Debug::GUI, "Replace (" << replacement << ")");
|
||||
dispatch(FuncRequest(LFUN_WORD_REPLACE, datastring));
|
||||
@ -332,8 +337,13 @@ void SpellcheckerWidget::on_replaceAllPB_clicked()
|
||||
return;
|
||||
docstring const textfield = qstring_to_ucs4(d->ui.wordED->text());
|
||||
docstring const replacement = qstring_to_ucs4(d->ui.replaceCO->currentText());
|
||||
docstring const datastring = replace2string(replacement, textfield,
|
||||
true, true, true, true);
|
||||
docstring const datastring =
|
||||
replace2string(replacement, textfield,
|
||||
true, // case sensitive
|
||||
true, // match word
|
||||
true, // all words
|
||||
true, // forward
|
||||
false); // find next
|
||||
|
||||
LYXERR(Debug::GUI, "Replace all (" << replacement << ")");
|
||||
dispatch(FuncRequest(LFUN_WORD_REPLACE, datastring));
|
||||
|
@ -783,7 +783,11 @@ void MenuDefinition::expandSpellingSuggestions(BufferView const * bv)
|
||||
MenuItem w(MenuItem::Command, toqstr(suggestion),
|
||||
FuncRequest(LFUN_WORD_REPLACE,
|
||||
replace2string(suggestion, selection,
|
||||
true, true, false, true, false)));
|
||||
true, // case sensitive
|
||||
true, // match word
|
||||
false, // all words
|
||||
true, // forward
|
||||
false))); // find next
|
||||
if (i < m)
|
||||
add(w);
|
||||
else
|
||||
|
@ -275,9 +275,6 @@ pair<bool, int> replaceOne(BufferView * bv, docstring searchstr,
|
||||
if (forward) {
|
||||
cur.pos() += replacestr.length();
|
||||
LASSERT(cur.pos() <= cur.lastpos(), /* */);
|
||||
} else {
|
||||
cur.pos() -= replacestr.length();
|
||||
LASSERT(cur.pos() >= 0, /* */);
|
||||
}
|
||||
if (findnext)
|
||||
findOne(bv, searchstr, case_sens, whole, forward, false);
|
||||
|
@ -138,6 +138,8 @@ What's new
|
||||
- When using a non-default language for the GUI, do not change locale
|
||||
settings of child proceses (bug 7741).
|
||||
|
||||
- Fix crash in text replacement with spell checker (bug 8238).
|
||||
|
||||
|
||||
* DOCUMENTATION AND LOCALIZATION
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user