Commit d17e688d authored by Martin's avatar Martin 💬
Browse files

SynEdit: Fixed Caret when scrolling under older Wine (Win Emulator) 0021929

git-svn-id: trunk@37166 -
parent b16adcf5
......@@ -4190,6 +4190,7 @@ begin
debugln(['ScrollAfterTopLineChanged did scroll Delta=',Delta]);
{$ENDIF}
include(fStateFlags, sfHasScrolled);
FScreenCaret.InvalidatePos; // Wine (Win emulator) may have changed the pos with the scroll
end else begin
Invalidate; // scrollwindow failed, invalidate all
{$IFDEF SYNSCROLLDEBUG}
......
......@@ -308,6 +308,7 @@ type
procedure DestroyCaret(SkipHide: boolean = False);
procedure Lock;
procedure UnLock;
procedure InvalidatePos;
property HandleOwner: TWinControl read FHandleOwner;
property CharWidth: Integer read FCharWidth write SetCharWidth;
property CharHeight: Integer read FCharHeight write SetCharHeight;
......@@ -1687,6 +1688,12 @@ begin
end;
end;
procedure TSynEditScreenCaret.InvalidatePos;
begin
FCurrentPosY := -1;
FCurrentPosX := -1;
end;
procedure TSynEditScreenCaret.SetClipRight(const AValue: Integer);
begin
if FClipRight = AValue then exit;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment