if (bv->buffer().isReadonly())
return pair<bool, int>(false, 0);
- cap::replaceSelectionWithString(cur, replacestr, forward);
+ cap::replaceSelectionWithString(cur, replacestr);
if (forward) {
cur.pos() += replacestr.length();
LASSERT(cur.pos() <= cur.lastpos(), /* */);
{
if (!cur)
return 0;
- while (cur) {
+ while (!theApp()->longOperationCancelled() && cur) {
LYXERR(Debug::FIND, "findForwardAdv() cur: " << cur);
int match_len = match(cur, -1, false);
LYXERR(Debug::FIND, "match_len: " << match_len);
if (match_len) {
- for (; cur; cur.forwardPos()) {
+ for (; !theApp()->longOperationCancelled() && cur; cur.forwardPos()) {
LYXERR(Debug::FIND, "Advancing cur: " << cur);
int match_len = match(cur);
LYXERR(Debug::FIND, "match_len: " << match_len);
else
cur.backwardPos();
pit_changed = true;
- } while (true);
+ } while (!theApp()->longOperationCancelled());
return 0;
}
}
}
cap::cutSelection(cur, false, false);
- if (!cur.inMathed()) {
+ if (cur.inTexted()) {
repl_buffer.changeLanguage(
repl_buffer.language(),
cur.getFont().language());
bv->buffer().errorList("Paste"));
LYXERR(Debug::FIND, "After pasteParagraphList() cur=" << cur << endl);
sel_len = repl_buffer.paragraphs().begin()->size();
- } else {
+ } else if (cur.inMathed()) {
TexRow texrow;
odocstringstream ods;
otexstream os(ods, texrow);