Re: [patch] added SCI_SETTABDRAWMODE(SCTD_CONTROLCHAR)

Neil <[email protected]> Wed, 18 Feb 2026 14:05:01 -0800 (PST)
Newsgroups gmane.comp.lib.scintilla.devel
Message-ID <[email protected]>
------=_Part_255142_223484004.1771452301766
Content-Type: multipart/alternative; 
	boundary="----=_Part_255143_320808332.1771452301766"

------=_Part_255143_320808332.1771452301766
Content-Type: text/plain; charset="UTF-8"

Robin:

So here it is (see attachment). It is built against a Scintilla (GTK3) with 
the patch applied cleanly on top of the tip commit. 
...
@Neil: What version did you test against?


Tested against current repositories. I added code to set editor.TabDrawMode 
in a Lua script in SciTE to exercise this as can be seen in my screenshot.

The issue is that changing the property (`case Message::SetTabDrawMode:`) 
does not invalidate the layout so the cached positions are retained.

It needs to call something like `InvalidateStyleRedraw` when there is a 
real change to the tab draw mode. `SetAppearance` may be useful.

This invalidation wasn't needed before as LongArrow versus StrikeOut are 
just cosmetic modes with no position change.

Neil

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion visit https://groups.google.com/d/msgid/scintilla-interest/00cf5932-8790-46e1-a7f5-6f22055858f0n%40googlegroups.com.

------=_Part_255143_320808332.1771452301766
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div><div dir=3D"auto">Robin:</div><blockquote style=3D"margin: 0px 0px 0px=
 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">So h=
ere it is (see attachment). It is built against a Scintilla (GTK3) with
<br />the patch applied cleanly on top of the tip commit.
<br />
...<br />@Neil: What version did you test against?</blockquote><div><br /><=
/div><div>Tested against current repositories. I added code to set editor.T=
abDrawMode in a Lua script in SciTE to exercise this as can be seen in my s=
creenshot.</div><div><br /></div><div>The issue is that changing the proper=
ty (`case Message::SetTabDrawMode:`) does not invalidate the layout so the =
cached positions are retained.</div><div><br /></div><div>It needs to call =
something like `InvalidateStyleRedraw` when there is a real change to the t=
ab draw mode. `SetAppearance` may be useful.</div><div><br /></div><div>Thi=
s invalidation wasn't needed before as LongArrow versus StrikeOut are just =
cosmetic modes with no position change.</div><div><br /></div><div>Neil</di=
v></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;scintilla-interest&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:[email protected]">=
[email protected]</a>.<br />
To view this discussion visit <a href=3D"https://groups.google.com/d/msgid/=
scintilla-interest/00cf5932-8790-46e1-a7f5-6f22055858f0n%40googlegroups.com=
?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/d/msgid/=
scintilla-interest/00cf5932-8790-46e1-a7f5-6f22055858f0n%40googlegroups.com=
</a>.<br />

------=_Part_255143_320808332.1771452301766--

------=_Part_255142_223484004.1771452301766--