[FarGroup/FarManager] master: Fixed the rendering of the mark char if its length or visual length exceeds 1 char (8df4ce2ed)

1 view
Skip to first unread message

farg...@farmanager.com

unread,
Mar 11, 2023, 5:30:52 PM3/11/23
to farco...@googlegroups.com
Repository : https://github.com/FarGroup/FarManager
On branch : master
Link : https://github.com/FarGroup/FarManager/commit/8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad

>---------------------------------------------------------------

commit 8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad
Author: Yegor Mialyk <16239726+y...@users.noreply.github.com>
Date: Sat Mar 11 13:51:20 2023 -0800

Fixed the rendering of the mark char if its length or visual length exceeds 1 char


>---------------------------------------------------------------

8df4ce2ed1a33d6ee578af4cbac2a6d7d9bf60ad
far/filelist.cpp | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/far/filelist.cpp b/far/filelist.cpp
index b9d93b306..1f48e0335 100644
--- a/far/filelist.cpp
+++ b/far/filelist.cpp
@@ -8476,12 +8476,14 @@ void FileList::ShowList(int ShowStatus,int StartColumn)

if (Global->Opt->Highlight && m_ListData[ListPos].Colors && !m_ListData[ListPos].Colors->Mark.Mark.empty() && Width>1)
{
- Width--;
+ const auto MarkLength = visual_string_length(m_ListData[ListPos].Colors->Mark.Mark);
+ Width -= MarkLength;
+
const auto OldColor = GetColor();
if (!ShowStatus)
SetShowColor(ListPos, false);

- Text(m_ListData[ListPos].Colors->Mark.Mark, visual_string_length(m_ListData[ListPos].Colors->Mark.Mark));
+ Text(m_ListData[ListPos].Colors->Mark.Mark, MarkLength);
SetColor(OldColor);
}



Reply all
Reply to author
Forward
0 new messages