]> git.lyx.org Git - features.git/commitdiff
Fix bad refresh when changing zoom level
authorJean-Marc Lasgouttes <lasgouttes@lyx.org>
Wed, 27 Sep 2017 15:52:06 +0000 (17:52 +0200)
committerJean-Marc Lasgouttes <lasgouttes@lyx.org>
Thu, 15 Feb 2018 11:29:25 +0000 (12:29 +0100)
Replace the tricky code in LFUN_SCREEN_FONT_UPDATE and replace it with
proper use of DispatchResult flags.

LFUN_BUFFER_ZOOM* does not need to call LFUN_SCREEN_FONT_UPDATE, since
it already does everything that is required.

(cherry picked from commit 9df59aac63bbb56d9d5f5ddcccfaa3ebace2f03d)

src/frontends/qt4/GuiApplication.cpp
src/frontends/qt4/GuiView.cpp

index ee379ffb56990db1f5347f4cc67e28f1483f8510..110b63ec21b2cc4e1020fdeeccc5f8b693177d80 100644 (file)
@@ -1628,14 +1628,7 @@ void GuiApplication::dispatch(FuncRequest const & cmd, DispatchResult & dr)
        case LFUN_SCREEN_FONT_UPDATE: {
                // handle the screen font changes.
                d->font_loader_.update();
-               // Backup current_view_
-               GuiView * view = current_view_;
-               // Set current_view_ to zero to forbid GuiWorkArea::redraw()
-               // to skip the refresh.
-               current_view_ = 0;
-               theBufferList().changed(false);
-               // Restore current_view_
-               current_view_ = view;
+               dr.screenUpdate(Update::Force | Update::FitCursor);
                break;
        }
 
index 785abfdd9be50c0c0ae325e38e053853af0f919b..2aee2735d3cb6d07946c5a1f5e4dcc31f5b77b39 100644 (file)
@@ -4152,7 +4152,7 @@ void GuiView::dispatch(FuncRequest const & cmd, DispatchResult & dr)
                        // painting so we must reset it.
                        QPixmapCache::clear();
                        guiApp->fontLoader().update();
-                       lyx::dispatch(FuncRequest(LFUN_SCREEN_FONT_UPDATE));
+                       dr.screenUpdate(Update::Force | Update::FitCursor);
                        break;
                }