[LyX/2.5.x] Fixup 1d1f95d2e: do update suppression with a finer grain
Jean-Marc Lasgouttes
lasgouttes at lyx.org
Fri Sep 4 14:53:32 UTC 2026
commit 7cccb7b471c3dffa7b3e3c397ce27c87c848ef9a
Author: Jean-Marc Lasgouttes <lasgouttes at lyx.org>
Date: Wed Sep 2 11:31:44 2026 +0200
Fixup 1d1f95d2e: do update suppression with a finer grain
The suppression of updates related to creating a new tab was too broad
and caused unwanted side effects.
Thanks to Claude for the analysis.
Fixes #13091.
(cherry picked from commit 069711cff5287cd54a3edeb8d507101b37e341f5)
---
src/frontends/qt/GuiWorkArea.cpp | 5 +++--
status.25x | 2 ++
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/frontends/qt/GuiWorkArea.cpp b/src/frontends/qt/GuiWorkArea.cpp
index e122cb6f63..04646e004e 100644
--- a/src/frontends/qt/GuiWorkArea.cpp
+++ b/src/frontends/qt/GuiWorkArea.cpp
@@ -361,7 +361,7 @@ void GuiWorkArea::toggleCaret()
void GuiWorkArea::scheduleRedraw(bool update_metrics)
{
- if (!isVisible() || view().busy())
+ if (!isVisible())
// No need to redraw in this case.
return;
@@ -1805,7 +1805,8 @@ void TabWorkArea::on_currentTabChanged(int i)
GuiWorkArea * wa = workArea(i);
LASSERT(wa, return);
wa->setUpdatesEnabled(true);
- wa->scheduleRedraw(true);
+ if (!wa->view().busy())
+ wa->scheduleRedraw(true);
wa->setFocus();
// if the work area did change,
// inform the view and dialogs
diff --git a/status.25x b/status.25x
index da70df26a7..d995f189ff 100644
--- a/status.25x
+++ b/status.25x
@@ -79,6 +79,8 @@ What's new
- Do not display obsoleted insets in the toolbar menus.
+- fix crash on document reload (bug 13091).
+
* INTERNALS
More information about the lyx-cvs
mailing list