Re: Add TEXT and LINE_COUNT flags to SCN_UPDATEUI

Neil Hodgson <[email protected]> Sun, 19 Jul 2026 12:56:49 +1000
Newsgroups gmane.comp.lib.scintilla.devel
Message-ID <CACWkrTi4CLeMZqt4ZKqRFzLOCz+OV3c5-9bjUP5VxKf7-iZBMA@mail.gmail.com>
--00000000000091a8730656edf13c
Content-Type: text/plain; charset="UTF-8"

Added the start position of changes to SC_UPDATE_TEXT as this allowed
switching the spell checking implementation on macOS SciTE from
SCN_MODIFIED to SCN_UPDATEUI.

This could eliminate the need to watch for detailed content insertions
and deletions in SciTE's own code but these updates may still be
needed by Lua scripts. There might be a property to remove these
notifications in future.

It would be possible to also provide the range of changes but this
adds complexity and wasn't needed for the cases examined.

Potential patch attached.

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/CACWkrTi4CLeMZqt4ZKqRFzLOCz%2BOV3c5-9bjUP5VxKf7-iZBMA%40mail.gmail.com.

--00000000000091a8730656edf13c
Content-Type: text/plain; charset="US-ASCII"; name="UPDATE_TEXT.patch"
Content-Disposition: attachment; filename="UPDATE_TEXT.patch"
Content-Transfer-Encoding: base64
Content-ID: <f_mrr7eii20>
X-Attachment-Id: f_mrr7eii20

ZGlmZiAtciBhYWEyMTY4ZjIyOWMgaW5jbHVkZS9TY2ludGlsbGEuaAotLS0gYS9pbmNsdWRlL1Nj
aW50aWxsYS5oCVN1biBKdWwgMTkgMTA6MjA6MTMgMjAyNiArMTAwMAorKysgYi9pbmNsdWRlL1Nj
aW50aWxsYS5oCVN1biBKdWwgMTkgMTI6NDA6MjYgMjAyNiArMTAwMApAQCAtMTI2Miw2ICsxMjYy
LDggQEAKICNkZWZpbmUgU0NfVVBEQVRFX1NFTEVDVElPTiAweDIKICNkZWZpbmUgU0NfVVBEQVRF
X1ZfU0NST0xMIDB4NAogI2RlZmluZSBTQ19VUERBVEVfSF9TQ1JPTEwgMHg4CisjZGVmaW5lIFND
X1VQREFURV9URVhUIDB4MTAKKyNkZWZpbmUgU0NfVVBEQVRFX0xJTkVfQ09VTlQgMHgyMAogI2Rl
ZmluZSBTQ0VOX0NIQU5HRSA3NjgKICNkZWZpbmUgU0NFTl9TRVRGT0NVUyA1MTIKICNkZWZpbmUg
U0NFTl9LSUxMRk9DVVMgMjU2CmRpZmYgLXIgYWFhMjE2OGYyMjljIGluY2x1ZGUvU2NpbnRpbGxh
LmlmYWNlCi0tLSBhL2luY2x1ZGUvU2NpbnRpbGxhLmlmYWNlCVN1biBKdWwgMTkgMTA6MjA6MTMg
MjAyNiArMTAwMAorKysgYi9pbmNsdWRlL1NjaW50aWxsYS5pZmFjZQlTdW4gSnVsIDE5IDEyOjQw
OjI2IDIwMjYgKzEwMDAKQEAgLTM0NzgsNiArMzQ3OCw4IEBACiB2YWwgU0NfVVBEQVRFX1NFTEVD
VElPTj0weDIKIHZhbCBTQ19VUERBVEVfVl9TQ1JPTEw9MHg0CiB2YWwgU0NfVVBEQVRFX0hfU0NS
T0xMPTB4OAordmFsIFNDX1VQREFURV9URVhUPTB4MTAKK3ZhbCBTQ19VUERBVEVfTElORV9DT1VO
VD0weDIwCiAKICMgRm9yIGNvbXBhdGliaWxpdHksIHRoZXNlIGdvIHRocm91Z2ggdGhlIENPTU1B
TkQgbm90aWZpY2F0aW9uIHJhdGhlciB0aGFuIE5PVElGWQogIyBhbmQgc2hvdWxkIGhhdmUgaGFk
IGV4YWN0bHkgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBFTl8qIGNvbnN0YW50cy4KZGlmZiAtciBh
YWEyMTY4ZjIyOWMgaW5jbHVkZS9TY2ludGlsbGFUeXBlcy5oCi0tLSBhL2luY2x1ZGUvU2NpbnRp
bGxhVHlwZXMuaAlTdW4gSnVsIDE5IDEwOjIwOjEzIDIwMjYgKzEwMDAKKysrIGIvaW5jbHVkZS9T
Y2ludGlsbGFUeXBlcy5oCVN1biBKdWwgMTkgMTI6NDA6MjYgMjAyNiArMTAwMApAQCAtNjAyLDYg
KzYwMiw4IEBACiAJU2VsZWN0aW9uID0gMHgyLAogCVZTY3JvbGwgPSAweDQsCiAJSFNjcm9sbCA9
IDB4OCwKKwlUZXh0ID0gMHgxMCwKKwlMaW5lQ291bnQgPSAweDIwLAogfTsKIAogZW51bSBjbGFz
cyBGb2N1c0NoYW5nZSB7CmRpZmYgLXIgYWFhMjE2OGYyMjljIHNyYy9FZGl0b3IuY3h4Ci0tLSBh
L3NyYy9FZGl0b3IuY3h4CVN1biBKdWwgMTkgMTA6MjA6MTMgMjAyNiArMTAwMAorKysgYi9zcmMv
RWRpdG9yLmN4eAlTdW4gSnVsIDE5IDEyOjQwOjI2IDIwMjYgKzEwMDAKQEAgLTI2NDgsOCArMjY0
OCwxMCBAQAogCQlOb3RpZmljYXRpb25EYXRhIHNjbiA9IHt9OwogCQlzY24ubm1oZHIuY29kZSA9
IE5vdGlmaWNhdGlvbjo6VXBkYXRlVUk7CiAJCXNjbi51cGRhdGVkID0gbmVlZFVwZGF0ZVVJOwor
CQlzY24ucG9zaXRpb24gPSB1cGRhdGVUZXh0U3RhcnQ7CiAJCU5vdGlmeVBhcmVudChzY24pOwog
CQluZWVkVXBkYXRlVUkgPSBVcGRhdGU6Ok5vbmU7CisJCXVwZGF0ZVRleHRTdGFydCA9IEludmFs
aWRQb3NpdGlvbjsKIAkJcmV0dXJuIHRydWU7CiAJfQogCXJldHVybiBmYWxzZTsKQEAgLTI4MDYs
NiArMjgwOCwxNCBAQAogCiB2b2lkIEVkaXRvcjo6Tm90aWZ5TW9kaWZpZWQoRG9jdW1lbnQgKiwg
RG9jTW9kaWZpY2F0aW9uIG1oLCB2b2lkICopIHsKIAlDb250YWluZXJOZWVkc1VwZGF0ZShVcGRh
dGU6OkNvbnRlbnQpOworCWlmIChGbGFnU2V0KG1oLm1vZGlmaWNhdGlvblR5cGUsIE1vZGlmaWNh
dGlvbkZsYWdzOjpJbnNlcnRUZXh0IHwgTW9kaWZpY2F0aW9uRmxhZ3M6OkRlbGV0ZVRleHQpKSB7
CisJCUNvbnRhaW5lck5lZWRzVXBkYXRlKFVwZGF0ZTo6VGV4dCk7CisJCXVwZGF0ZVRleHRTdGFy
dCA9IHVwZGF0ZVRleHRTdGFydCA9PSBJbnZhbGlkUG9zaXRpb24gPyBtaC5wb3NpdGlvbiA6IHN0
ZDo6bWluKHVwZGF0ZVRleHRTdGFydCwgbWgucG9zaXRpb24pOworCX0KKwlpZiAobWgubGluZXNB
ZGRlZCAhPSAwKSB7CisJCUNvbnRhaW5lck5lZWRzVXBkYXRlKFVwZGF0ZTo6TGluZUNvdW50KTsK
Kwl9CisKIAlpZiAocGFpbnRTdGF0ZSA9PSBQYWludFN0YXRlOjpwYWludGluZykgewogCQlDaGVj
a0ZvckNoYW5nZU91dHNpZGVQYWludChSYW5nZShtaC5wb3NpdGlvbiwgbWgucG9zaXRpb24gKyBt
aC5sZW5ndGgpKTsKIAl9CmRpZmYgLXIgYWFhMjE2OGYyMjljIHNyYy9FZGl0b3IuaAotLS0gYS9z
cmMvRWRpdG9yLmgJU3VuIEp1bCAxOSAxMDoyMDoxMyAyMDI2ICsxMDAwCisrKyBiL3NyYy9FZGl0
b3IuaAlTdW4gSnVsIDE5IDEyOjQwOjI2IDIwMjYgKzEwMDAKQEAgLTI2Miw2ICsyNjIsNyBAQAog
CVNjaTo6UG9zaXRpb24gbGVuZ3RoRm9yRW5jb2RlOwogCiAJU2NpbnRpbGxhOjpVcGRhdGUgbmVl
ZFVwZGF0ZVVJOworCVNjaTo6UG9zaXRpb24gdXBkYXRlVGV4dFN0YXJ0ID0gSW52YWxpZFBvc2l0
aW9uOwogCiAJZW51bSBjbGFzcyBQYWludFN0YXRlIHsgbm90UGFpbnRpbmcsIHBhaW50aW5nLCBh
YmFuZG9uZWQgfSBwYWludFN0YXRlOwogCWJvb2wgcGFpbnRBYmFuZG9uZWRCeVN0eWxpbmc7Cg==
--00000000000091a8730656edf13c--