Revert "Second tentative fix to #8159: Undo doesn't restore environment depth correctly"

Did not mean to commit that.

This reverts commit 8f01556236.
This commit is contained in:
Jean-Marc Lasgouttes 2012-06-05 12:52:42 +02:00
parent 992eae2524
commit 9a3b6733c0
2 changed files with 2 additions and 21 deletions

View File

@ -4413,17 +4413,7 @@ void Buffer::updateBuffer(ParIterator & parit, UpdateType utype) const
pit_type const lastpit = parit.lastpit();
for ( ; parit.pit() <= lastpit ; ++parit.pit()) {
// reduce depth if necessary
if (parit->params().depth() > maxdepth) {
/** FIXME: this function is const, but
* nevertheless it modifies the buffer. To be
* cleaner, one should modify the buffer in
* another function, which is actually
* non-const. This would however be costly in
* terms of code duplication.
*/
const_cast<Buffer *>(this)->undo().recordUndo(parit);
parit->params().depth(maxdepth);
}
parit->params().depth(min(parit->params().depth(), maxdepth));
maxdepth = parit->getMaxDepthAfter();
if (utype == OutputUpdate) {

View File

@ -1132,13 +1132,8 @@ static docstring makeDispatchMessage(docstring const & msg,
void GuiApplication::dispatch(FuncRequest const & cmd)
{
Buffer * buffer = 0;
if (current_view_ && current_view_->currentBufferView()) {
if (current_view_ && current_view_->currentBufferView())
current_view_->currentBufferView()->cursor().saveBeforeDispatchPosXY();
buffer = &current_view_->currentBufferView()->buffer();
if (buffer)
buffer->undo().beginUndoGroup();
}
DispatchResult dr;
// redraw the screen at the end (first of the two drawing steps).
@ -1146,10 +1141,6 @@ void GuiApplication::dispatch(FuncRequest const & cmd)
dr.screenUpdate(Update::FitCursor);
dispatch(cmd, dr);
updateCurrentView(cmd, dr);
// the buffer may have been closed by one action
if (theBufferList().isLoaded(buffer))
buffer->undo().endUndoGroup();
}