]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView.cpp
Fix layout bug. Pasting text into a cell tried to set Standard layout, because
[lyx.git] / src / BufferView.cpp
index 009017c2ae7d1f0b5571788f41de1801a0c41340..b46be350b850010964b3c6322381b7dd86cda0ba 100644 (file)
@@ -282,7 +282,7 @@ BufferView::BufferView(Buffer & buf)
        d->cursor_.setCurrentFont();
 
        if (graphics::Previews::status() != LyXRC::PREVIEW_OFF)
-               graphics::Previews::get().generateBufferPreviews(buffer_);
+               thePreviews().generateBufferPreviews(buffer_);
 }
 
 
@@ -296,7 +296,7 @@ BufferView::~BufferView()
        LastFilePosSection::FilePos fp;
        fp.pit = d->cursor_.bottom().pit();
        fp.pos = d->cursor_.bottom().pos();
-       LyX::ref().session().lastFilePos().save(buffer_.fileName(), fp);
+       theSession().lastFilePos().save(buffer_.fileName(), fp);
 
        delete d;
 }
@@ -659,7 +659,7 @@ void BufferView::saveBookmark(unsigned int idx)
        // acturately locate a bookmark in a 'live' lyx session.
        // pit and pos will be updated with bottom level pit/pos
        // when lyx exits.
-       LyX::ref().session().bookmarks().save(
+       theSession().bookmarks().save(
                buffer_.fileName(),
                d->cursor_.bottom().pit(),
                d->cursor_.bottom().pos(),
@@ -1072,9 +1072,12 @@ bool BufferView::dispatch(FuncRequest const & cmd)
                if (!inset || !cur.result().dispatched())
                        cur.dispatch(cmd);
 
+               // FIXME I'm adding the last break to solve a crash,
+               // but that is obviously not right.
                if (!cur.result().dispatched())
                        // It did not work too; no action needed.
                        break;
+               break;
        }
 
        case LFUN_PARAGRAPH_GOTO: {
@@ -1456,15 +1459,12 @@ bool BufferView::dispatch(FuncRequest const & cmd)
                InsetIterator it  = inset_iterator_begin(inset);
                InsetIterator const end = inset_iterator_end(inset);
                for (; it != end; ++it) {
-                       if (!it->asInsetMath()
+                       if (it->asInsetCollapsable()
                            && (inset_code == NO_CODE
                            || inset_code == it->lyxCode())) {
                                Cursor tmpcur = cur;
                                tmpcur.pushBackward(*it);
-                               FuncStatus flag;
-                               it->getStatus(tmpcur, fr, flag);
-                               if (flag.enabled())
-                                       it->dispatch(tmpcur, fr);
+                               it->dispatch(tmpcur, fr);
                        }
                }
                processUpdateFlags(Update::Force | Update::FitCursor);
@@ -1483,11 +1483,13 @@ docstring const BufferView::requestSelection()
 {
        Cursor & cur = d->cursor_;
 
+       LYXERR(Debug::SELECTION, "requestSelection: cur.selection: " << cur.selection());
        if (!cur.selection()) {
                d->xsel_cache_.set = false;
                return docstring();
        }
 
+       LYXERR(Debug::SELECTION, "requestSelection: xsel_cache.set: " << d->xsel_cache_.set);
        if (!d->xsel_cache_.set ||
            cur.top() != d->xsel_cache_.cursor ||
            cur.anchor_.top() != d->xsel_cache_.anchor)