]> git.lyx.org Git - lyx.git/blobdiff - src/lyxfunc.C
fix some C++ parsing bugs
[lyx.git] / src / lyxfunc.C
index 7c3436eee87ad37875dca1c90383e2ca1a712277..34e54fc295dc63b376f16064f76878b8a90aad97 100644 (file)
@@ -125,7 +125,7 @@ void LyXFunc::moveCursorUpdate(bool flag, bool selecting)
                if (!TEXT(flag)->isInInset())
                    view()->toggleToggle();
        }
-       view()->update(TEXT(flag), BufferView::SELECT|BufferView::FITCUR);
+       view()->update(TEXT(flag), BufferView::SELECT);
        view()->showCursor();
 
        view()->switchKeyMap();
@@ -146,8 +146,7 @@ void LyXFunc::handleKeyFunc(kb_action action)
        // actions
        keyseq.clear();
        // copied verbatim from do_accent_char
-       view()->update(TEXT(false),
-              BufferView::SELECT|BufferView::FITCUR|BufferView::CHANGE);
+       view()->update(TEXT(false), BufferView::SELECT);
        TEXT(false)->selection.cursor = TEXT(false)->cursor;
 }
 
@@ -835,7 +834,7 @@ void LyXFunc::dispatch(FuncRequest const & ev, bool verbose)
                                        moveCursorUpdate(true, false);
                                        owner->view_state_changed();
                                } else {
-                                       view()->update(TEXT(), BufferView::SELECT|BufferView::FITCUR);
+                                       view()->update(TEXT(), BufferView::SELECT);
                                }
                                goto exit_with_message;
                        } else if (result == FINISHED_DOWN) {
@@ -948,8 +947,7 @@ void LyXFunc::dispatch(FuncRequest const & ev, bool verbose)
        case LFUN_PREFIX:
        {
                if (view()->available() && !view()->theLockingInset()) {
-                       view()->update(TEXT(),
-                                             BufferView::SELECT|BufferView::FITCUR);
+                       view()->update(TEXT(), BufferView::SELECT);
                }
                owner->message(keyseq.printOptions());
        }
@@ -1204,7 +1202,7 @@ void LyXFunc::dispatch(FuncRequest const & ev, bool verbose)
 
        case LFUN_VC_HISTORY:
        {
-               owner->getDialogs().showVCLogFile();
+               owner->getDialogs().show("vclog");
                break;
        }
 
@@ -1228,7 +1226,7 @@ void LyXFunc::dispatch(FuncRequest const & ev, bool verbose)
                break;
 
        case LFUN_LATEX_LOG:
-               owner->getDialogs().showLogFile();
+               owner->getDialogs().show("log");
                break;
 
        case LFUN_LAYOUT_DOCUMENT:
@@ -1579,9 +1577,19 @@ void LyXFunc::dispatch(FuncRequest const & ev, bool verbose)
                break;
        } // end of switch
 
-       view()->owner()->updateLayoutChoice();
-       
 exit_with_message:
+
+       view()->owner()->updateLayoutChoice();
+
+       if (view()->available()) {
+               view()->fitCursor();
+
+               // If we executed a mutating lfun, mark the buffer as dirty
+               if (!lyxaction.funcHasFlag(ev.action, LyXAction::NoBuffer)
+                   && !lyxaction.funcHasFlag(ev.action, LyXAction::ReadOnly))
+                       view()->buffer()->markDirty();
+       }
+
        sendDispatchMessage(getMessage(), ev, verbose);
 }