Explorar o código

Ensure cursor is restored back to original position after updating font

Christopher Mullins %!s(int64=13) %!d(string=hai) anos
pai
achega
dcf73c5552
Modificáronse 1 ficheiros con 5 adicións e 1 borrados
  1. 5 1
      Libs/Widgets/ctkConsole.cpp

+ 5 - 1
Libs/Widgets/ctkConsole.cpp

@@ -699,9 +699,13 @@ QFont ctkConsole::shellFont() const
 void ctkConsole::setShellFont(const QFont& font)
 {
   Q_D(ctkConsole);
+  int savedPosition = d->textCursor().position();
   d->selectAll();
   d->setCurrentFont(font);
-  d->moveCursor(d->textCursor().End); // Reset cursor to undo highlighting
+  QTextCursor tc = d->textCursor();
+  tc.clearSelection();
+  tc.setPosition(savedPosition);
+  d->setTextCursor(tc);
 }
 
 //-----------------------------------------------------------------------------