mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-22 22:29:28 +02:00
* fixed double width character at the end of TInputLine covering the right
scroll arrow git-svn-id: branches/unicodekvm@48811 -
This commit is contained in:
parent
fe312ab99f
commit
ddd87e09ff
@ -1444,7 +1444,7 @@ END;
|
||||
{---------------------------------------------------------------------------}
|
||||
{$ifdef FV_UNICODE}
|
||||
PROCEDURE TInputLine.Draw;
|
||||
VAR Color: Byte; L, R, SkipToFirstPosLeft, ScrPos: Sw_Integer;
|
||||
VAR Color: Byte; L, R, SkipToFirstPosLeft, ScrPos, EGC_StrWidth: Sw_Integer;
|
||||
B : TDrawBuffer;
|
||||
EGC: Sw_String;
|
||||
BEGIN
|
||||
@ -1480,6 +1480,9 @@ BEGIN
|
||||
Dec(SkipToFirstPosLeft, Length(EGC))
|
||||
else
|
||||
begin
|
||||
EGC_StrWidth := StrWidth(EGC);
|
||||
if (ScrPos + EGC_StrWidth - 1) > (Size.X - 2) then
|
||||
break;
|
||||
with B[ScrPos] do
|
||||
begin
|
||||
ExtendedGraphemeCluster := EGC;
|
||||
@ -1488,11 +1491,9 @@ BEGIN
|
||||
else
|
||||
Attribute:=Color;
|
||||
end;
|
||||
Inc(ScrPos, StrWidth(EGC));
|
||||
Inc(ScrPos, EGC_StrWidth);
|
||||
Dec(L, Length(EGC));
|
||||
Dec(R, Length(EGC));
|
||||
if ScrPos > (Size.X - 2) then
|
||||
break;
|
||||
end;
|
||||
end;
|
||||
WriteLine(0, 0, Size.X, Size.Y, B);
|
||||
|
Loading…
Reference in New Issue
Block a user