<feed xmlns='http://www.w3.org/2005/Atom'>
<title>viewer.git/indra/llui/llxuiparser.cpp, branch 26.4</title>
<subtitle>Megapahit's fork of the Second Life viewer.
</subtitle>
<id>https://megapahit.org/viewer.git/atom?h=26.4</id>
<link rel='self' href='https://megapahit.org/viewer.git/atom?h=26.4'/>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/'/>
<updated>2026-09-04T13:58:53Z</updated>
<entry>
<title>Merge remote-tracking branch 'secondlife/release/26.4' into 26.4</title>
<updated>2026-09-04T13:58:53Z</updated>
<author>
<name>Erik Kundiman</name>
<email>erik@megapahit.org</email>
</author>
<published>2026-09-01T10:35:23Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=00bb3bb6f07660bd914d29a1389342bb3060d254'/>
<id>urn:sha1:00bb3bb6f07660bd914d29a1389342bb3060d254</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge tag 'Second_Life_Release#3529bc5f-2026.02' into 2026.02</title>
<updated>2026-03-07T06:55:05Z</updated>
<author>
<name>Erik Kundiman</name>
<email>erik@megapahit.org</email>
</author>
<published>2026-03-07T06:55:05Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=eac10375e294cd24c21c09497e838e70dcf4d74a'/>
<id>urn:sha1:eac10375e294cd24c21c09497e838e70dcf4d74a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/develop' into develop-linux</title>
<updated>2026-01-21T21:05:51Z</updated>
<author>
<name>Rye</name>
<email>rye@alchemyviewer.org</email>
</author>
<published>2026-01-21T20:33:19Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=8896239134a40f41d845c78551d24e005d691d7c'/>
<id>urn:sha1:8896239134a40f41d845c78551d24e005d691d7c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reduce temporary allocations during xui parsing via move optimizations</title>
<updated>2026-01-21T20:07:08Z</updated>
<author>
<name>Rye</name>
<email>rye@alchemyviewer.org</email>
</author>
<published>2026-01-11T18:37:11Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=c9286ffea7b47fb634d57585d0214ce4aa9c703e'/>
<id>urn:sha1:c9286ffea7b47fb634d57585d0214ce4aa9c703e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Modernize std::type_info* usage in containers with std::type_index</title>
<updated>2026-01-21T20:07:08Z</updated>
<author>
<name>Rye</name>
<email>rye@alchemyviewer.org</email>
</author>
<published>2026-01-10T09:54:56Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=ebde7519a8846fbe036767ef6dfef576977d8c05'/>
<id>urn:sha1:ebde7519a8846fbe036767ef6dfef576977d8c05</id>
<content type='text'>
Introduce operator&lt;&lt; for std::type_index for logging output
Utilize std::unordered_map inside llheteromap, llinitparam, llregistry
Remove unused Comparator template parameter from LLRegistry
</content>
</entry>
<entry>
<title>Address feedback from copilot</title>
<updated>2026-01-07T00:15:43Z</updated>
<author>
<name>Rye</name>
<email>rye@alchemyviewer.org</email>
</author>
<published>2026-01-05T20:01:23Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=9873abfb94f0d9cbc6df60fef9df622ef51355ec'/>
<id>urn:sha1:9873abfb94f0d9cbc6df60fef9df622ef51355ec</id>
<content type='text'>
Signed-off-by: Rye &lt;rye@alchemyviewer.org&gt;
</content>
</entry>
<entry>
<title>Clean up LLFile and LLFilesystem operations to reduce temporaries allocations and utf8-&gt;utf16 conversions</title>
<updated>2026-01-07T00:15:43Z</updated>
<author>
<name>Rye</name>
<email>rye@alchemyviewer.org</email>
</author>
<published>2025-12-30T16:39:16Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=25dc8660efedecfd9f021142ac1e4ff3639e80d4'/>
<id>urn:sha1:25dc8660efedecfd9f021142ac1e4ff3639e80d4</id>
<content type='text'>
Fix LLFile::tmpdir failing when temp directory is located in a unicode path on windows
Add Tracy profiler tagging to LLFile that's disabled by default
Replace LLFile::utf8StringToWstring with our fsyspath std::filesystem::path adapter
Introduce std::filesystem::path to llifstream/llofstream wrappers
Add move operators to fsyspath to match copy operator
Restore LLUniqueFile RAII class for direct c file io wrapping and reducing merge conflicts with downstream code that may depend upon it

Signed-off-by: Rye &lt;rye@alchemyviewer.org&gt;
</content>
</entry>
<entry>
<title>Have unencapsulated Expat headers in any condition</title>
<updated>2025-05-12T12:14:23Z</updated>
<author>
<name>Erik Kundiman</name>
<email>erik@megapahit.org</email>
</author>
<published>2025-05-12T12:14:23Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=0500c78b1bccda71a8623785c9765a7adaec0071'/>
<id>urn:sha1:0500c78b1bccda71a8623785c9765a7adaec0071</id>
<content type='text'>
The only condition where Expat headers would be encapsulated is when
using LL's Autobuild-based prebuilt libraries, and we're never using
any of LL's prebuilt binary for Expat on desktop, since Expat is
practically available on any supported desktop platform.
The system Expat headers are never encapsulated in any of those
platforms.
This is the beginning of not relying on the LL_USESYSTEMLIBS macro
any more (eventually not relying on the custom USESYSTEMLIBS CMake
setting either).
Keeping the build system still flexible to have the option to use
LL's prebuilt libraries *fully* (we still use some of them in cases
where the platform may not have the related system library or for
convenience, so the term USESYSTEMLIBS may not always be consistent),
is getting harder to maintain.
The way it's done is using #if 1, in order to minimise difference
from upstream.
</content>
</entry>
<entry>
<title>Fix line endlings</title>
<updated>2024-05-22T19:40:26Z</updated>
<author>
<name>Ansariel</name>
<email>ansariel.hiller@phoenixviewer.com</email>
</author>
<published>2024-05-22T19:25:21Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=e2e37cced861b98de8c1a7c9c0d3a50d2d90e433'/>
<id>urn:sha1:e2e37cced861b98de8c1a7c9c0d3a50d2d90e433</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/main' into DRTVWR-600-maint-A</title>
<updated>2024-05-22T17:04:52Z</updated>
<author>
<name>Ansariel</name>
<email>ansariel.hiller@phoenixviewer.com</email>
</author>
<published>2024-05-22T17:04:52Z</published>
<link rel='alternate' type='text/html' href='https://megapahit.org/viewer.git/commit/?id=1b67dd855c41f5a0cda7ec2a68d98071986ca703'/>
<id>urn:sha1:1b67dd855c41f5a0cda7ec2a68d98071986ca703</id>
<content type='text'>
# Conflicts:
#	autobuild.xml
#	indra/cmake/CMakeLists.txt
#	indra/cmake/GoogleMock.cmake
#	indra/llaudio/llaudioengine_fmodstudio.cpp
#	indra/llaudio/llaudioengine_fmodstudio.h
#	indra/llaudio/lllistener_fmodstudio.cpp
#	indra/llaudio/lllistener_fmodstudio.h
#	indra/llaudio/llstreamingaudio_fmodstudio.cpp
#	indra/llaudio/llstreamingaudio_fmodstudio.h
#	indra/llcharacter/llmultigesture.cpp
#	indra/llcharacter/llmultigesture.h
#	indra/llimage/llimage.cpp
#	indra/llimage/llimagepng.cpp
#	indra/llimage/llimageworker.cpp
#	indra/llimage/tests/llimageworker_test.cpp
#	indra/llmessage/tests/llmockhttpclient.h
#	indra/llprimitive/llgltfmaterial.h
#	indra/llrender/llfontfreetype.cpp
#	indra/llui/llcombobox.cpp
#	indra/llui/llfolderview.cpp
#	indra/llui/llfolderviewmodel.h
#	indra/llui/lllineeditor.cpp
#	indra/llui/lllineeditor.h
#	indra/llui/lltextbase.cpp
#	indra/llui/lltextbase.h
#	indra/llui/lltexteditor.cpp
#	indra/llui/lltextvalidate.cpp
#	indra/llui/lltextvalidate.h
#	indra/llui/lluictrl.h
#	indra/llui/llview.cpp
#	indra/llwindow/llwindowmacosx.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappearancemgr.cpp
#	indra/newview/llappearancemgr.h
#	indra/newview/llavatarpropertiesprocessor.cpp
#	indra/newview/llavatarpropertiesprocessor.h
#	indra/newview/llbreadcrumbview.cpp
#	indra/newview/llbreadcrumbview.h
#	indra/newview/llbreastmotion.cpp
#	indra/newview/llbreastmotion.h
#	indra/newview/llconversationmodel.h
#	indra/newview/lldensityctrl.cpp
#	indra/newview/lldensityctrl.h
#	indra/newview/llface.inl
#	indra/newview/llfloatereditsky.cpp
#	indra/newview/llfloatereditwater.cpp
#	indra/newview/llfloateremojipicker.h
#	indra/newview/llfloaterimsessiontab.cpp
#	indra/newview/llfloaterprofiletexture.cpp
#	indra/newview/llfloaterprofiletexture.h
#	indra/newview/llgesturemgr.cpp
#	indra/newview/llgesturemgr.h
#	indra/newview/llimpanel.cpp
#	indra/newview/llimpanel.h
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorybridge.h
#	indra/newview/llinventoryclipboard.cpp
#	indra/newview/llinventoryclipboard.h
#	indra/newview/llinventoryfunctions.cpp
#	indra/newview/llinventoryfunctions.h
#	indra/newview/llinventorygallery.cpp
#	indra/newview/lllistbrowser.cpp
#	indra/newview/lllistbrowser.h
#	indra/newview/llpanelobjectinventory.cpp
#	indra/newview/llpanelprofile.cpp
#	indra/newview/llpanelprofile.h
#	indra/newview/llpreviewgesture.cpp
#	indra/newview/llsavedsettingsglue.cpp
#	indra/newview/llsavedsettingsglue.h
#	indra/newview/lltooldraganddrop.cpp
#	indra/newview/llurllineeditorctrl.cpp
#	indra/newview/llvectorperfoptions.cpp
#	indra/newview/llvectorperfoptions.h
#	indra/newview/llviewerparceloverlay.cpp
#	indra/newview/llviewertexlayer.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/macmain.h
#	indra/test/test.cpp
</content>
</entry>
</feed>
