]> git.lyx.org Git - lyx.git/blobdiff - src/DocIterator.cpp
Accelerators
[lyx.git] / src / DocIterator.cpp
index bdad90f4fc225d9f147044c95c5b13fb8f0f82ed..6eba5a792e2d472d786feda2bf769e82b8dacb37 100644 (file)
@@ -500,6 +500,18 @@ void DocIterator::backwardPos()
 }
 
 
+void DocIterator::backwardPosIgnoreCollapsed()
+{
+       backwardPos();
+       if (inTexted()) {
+               Inset const * ins = realInset();
+               if (ins && !ins->editable()) {
+                       pop_back(); // move out of collapsed inset
+               }
+       }
+}
+
+
 #if 0
 // works, but currently not needed
 void DocIterator::backwardInset()
@@ -633,11 +645,7 @@ void DocIterator::sanitize()
        for (size_t i = 0, n = sl.size(); i != n; ++i) {
                if (inset == nullptr) {
                        // FIXME
-                       LYXERR0(" Should not happen, but does e.g. after "
-                               "C-n C-l C-z S-C-z\n"
-                               << " or when a Buffer has been concurrently edited by two views"
-                               << '\n' << "dit: " << *this << '\n'
-                               << " lastpos: " << slices_[i].lastpos());
+                       LYXERR0("Null inset on cursor stack.");
                        fixIfBroken();
                        break;
                }