diff --git a/Console/Console.cc b/Console/Console.cc index fb0c93aa3e..2721efc161 100644 --- a/Console/Console.cc +++ b/Console/Console.cc @@ -221,14 +221,14 @@ void Console::Update() DrawCells(start, dirtyRect.right, row, needclear); } dirtyRect = Rect(); -#if TARGET_API_MAC_CARBON - QDFlushPortBuffer(consolePort,NULL); -#endif if(cursorVisible != cursorDrawn) { Rect r = CellRect(cursorX, cursorY); - InvertRect(&r); + if(cursorDrawn) + DrawCell(cursorX, cursorY, true); + else + InvertRect(&r); cursorDrawn = !cursorDrawn; } @@ -292,8 +292,7 @@ void Console::InvalidateCursor() { PortSetter setport(consolePort); - Rect r = CellRect(cursorX, cursorY); - InvertRect(&r); + DrawCell(cursorX, cursorY, true); cursorDrawn = false; } } diff --git a/Console/ConsoleWindow.cc b/Console/ConsoleWindow.cc index 17104c9e8c..a29187c887 100644 --- a/Console/ConsoleWindow.cc +++ b/Console/ConsoleWindow.cc @@ -112,7 +112,7 @@ char ConsoleWindow::WaitNextChar() case inGrow: { long growResult = GrowWindow(eventWin, event.where, boundsPtr); - SizeWindow(eventWin, growResult & 0xFFFF, growResult >> 16, true); + SizeWindow(eventWin, growResult & 0xFFFF, growResult >> 16, false); Reshape(Rect {0, 0, (short) (growResult >> 16), (short) (growResult & 0xFFFF) }); } break;