From 2b21cd2f4ec3f5b0e0129a3b6270910072dcab28 Mon Sep 17 00:00:00 2001 From: Vincent van Ravesteijn Date: Mon, 4 May 2009 11:48:23 +0000 Subject: [PATCH] Fix bug #5001: Tab order not preserved when starting lyx. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29530 a592a061-630c-0410-9148-cb99ea01b6c8 --- src/frontends/qt4/GuiView.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/frontends/qt4/GuiView.cpp b/src/frontends/qt4/GuiView.cpp index 94ab1c98c9..4910e63062 100644 --- a/src/frontends/qt4/GuiView.cpp +++ b/src/frontends/qt4/GuiView.cpp @@ -534,7 +534,16 @@ void GuiView::closeEvent(QCloseEvent * close_event) // e.g. when clicking the close button on a background window. setFocus(); setCurrentWorkArea(currentMainWorkArea()); - while (GuiWorkArea * wa = currentMainWorkArea()) { + + int splitter_count = d.splitter_->count(); + for (; splitter_count > 0; --splitter_count) { + TabWorkArea * twa = d.tabWorkArea(0); + + int twa_count = twa->count(); + for (; twa_count > 0; --twa_count) { + twa->setCurrentIndex(0); + + GuiWorkArea * wa = twa->currentWorkArea(); Buffer * b = &wa->bufferView().buffer(); if (b->parent()) { // This is a child document, just close the tab @@ -587,7 +596,7 @@ void GuiView::closeEvent(QCloseEvent * close_event) return; } } - + } // Make sure that nothing will use this close to be closed View. guiApp->unregisterView(this); -- 2.39.2