summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterimsessiontab.cpp
AgeCommit message (Collapse)Author
8 daysMerge tag 'Second_Life_Release#db59a05a-26.5' into 26.5Erik Kundiman
2026-08-13Improve ChatService history readabilitypepper
Add phase-oriented comments around history synchronization, archive validation, asynchronous view updates, and transcript deletion. Expand dense control flow and restore readable spacing throughout the ChatService implementation and its integration points without changing behavior. Restore unrelated end-of-file formatting so it drops out of the overall PR diff.
2026-08-13Implement ChatService persistent history stitchingpepper
Synchronize eligible direct IM conversations through the ChatService capabilities into durable per-resident CSV archives. Validate deterministic conversation IDs, UUIDv1 ordering, complete discovery and history payloads, and the account-wide deletion cutoff before a bounded pass can append or rebuild an archive. Run discovery, pacing, retries, metadata resolution, and participant paging through one account-scoped manager. Immediately prioritize new Direct sessions, P2P previews, and accepted inbound IMs while honoring transcript consent, authoritative mute state, capability changes, and fail-closed account state. Stitch ordinary and monthly legacy plaintext before the oldest accumulated service row, keep normal plaintext logging active, and merge the first validated service page in memory while older backfill continues. Drive Direct and Preview reloads and their nonmodal loading status from shared resident snapshots. Maintain the human-readable chat_service_index.csv manifest and protect archive updates with strict validation, torn-tail repair, corrupt-file preservation, private file stamps, and atomic replacement. Extend Delete Transcripts with a durable TimeUUID boundary and an asynchronous sweep that suppresses every historical source until cleanup completes safely. Add core coverage for deterministic IDs, UUIDv1 and timestamp validation, strict page and list contracts, RFC 4180 CSV quoting, archive scanning, torn tails, and corrupt records.
2026-04-23Merge tag 'Second_Life_Release#84f50b9d-26.2' into 2026.02Erik Kundiman
2026-04-22Update notify panel width; remove "To" from chat labelMnikolenko Productengine
2026-03-07Merge tag 'Second_Life_Release#3529bc5f-2026.02' into 2026.02Erik Kundiman
2026-02-17#2938 show confirmation before closing Conference chatMaxim Nikolenko
2025-10-25Merge tag 'Second_Life_Release#01823996-2025.08' into 2025.08Erik Kundiman
2025-09-10viewer#2172 AM/PM selectorAndrey Kleshchev
2025-08-08Merge tag 'Second_Life_Release#55f1c8b9-2025.06' into 2025.06Erik Kundiman
2025-06-27#4184 clearAndDeparentModels crashAndrey Kleshchev
To resolve dual ownership switched children to LLPointer
2025-05-09Merge tag 'Second_Life_Release#377d1b38-2025.04' into 2025.04Erik Kundiman
2025-05-05#4028 Crash at onEmojiPickerClosedMaxim Nikolenko
2025-04-30Merge tag 'Second_Life_Release#d9e55c44-Second_Life_Release#d9e55c4-2025.04' ↵Erik Kundiman
into 2025.04
2025-04-19Merge tag 'Second_Life_Release#9a333e65-2025.04' into 2025.04Erik Kundiman
2025-04-18#3758 initial chat mention supportMnikolenko Productengine
2025-03-19viewer#2270 The "More" button does not close the "Choose emoji" floaterAndrey Kleshchev
2025-01-21Merge remote-tracking branch 'secondlife/release/2024.12-ForeverFPS' into ↵Erik Kundiman
2024.12-ForeverFPS
2025-01-20#3319 Crash at LLInitParam::Param::setProvidedAndrey Kleshchev
Most crashes are related to LLStyle, log analysis suggests that it might be a number of different issues, including memory and disk issues. Just avoid recreating expensive LLStyle without reason.
2024-11-06Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-11-06Merge branch 'main' into 2024.09-ExtraFPSErik Kundiman
2024-11-04Add seconds to compact view timestampsErik Kundiman
https://megapahit.com/show_bug.cgi?id=81 Without the date, though.
2024-11-01viewer#2985 Odd crash when notifying voice observersAndrey Kleshchev
Crash points at enableDisableCallBtn, but button's floater was cleaned earlier and has a removeObserver call so an observer record should be long gone. Likely something else is going on. Went over various callbacks and made sure they are cleaned. But in case floater somehow remained, added mSession = nullptr.
2024-09-09Callback button for groups was not being reenabled after hanging up on group ↵Roxie Linden
call. For #2532, callback button was remaining disabled after hanging up on a group call. Also, fix an issue where user was automatically added to a group call after the initiator of the group call hangs up and re-calls the group.
2024-08-22#2325 WebRTC: p2p voice calling option sometimes becomes disabled after ↵Alexander Gavriliuk
calling another agent back too soon
2024-08-20Merge remote-tracking branch 'origin/release/2024.06-atlasaurus' into developBrad Linden
# Conflicts: # autobuild.xml # indra/newview/llvoicewebrtc.cpp
2024-08-15Merge remote-tracking branch 'origin/release/webrtc-voice' into ↵Brad Linden
release/2024.06-atlasaurus # Conflicts: # indra/newview/llpanelpeople.cpp
2024-08-13viewer-private#262 webrtc crashes on shutdownAndrey Kleshchev
removeObserver failed to remove an im session floater
2024-08-12#2257 BugSplat Crash #1503682: ↵Alexander Gavriliuk
SecondLifeViewer!LLFloaterIMSessionTab::enableDisableCallBtn(438)
2024-07-25Fix getChild calls during draw from LLFloaterIMSessionTabRye Mutt
2024-06-26Convert tabs to spacesRoxie Linden
2024-06-25Issue#880 Crash on a dead pointer in a chat sessionAndrey Kleshchev
2024-05-24Introduce LLWStringView to prevent unnecessary memory allocationsAnsariel
2024-05-22Fix line endlingsAnsariel
2024-05-22Merge remote-tracking branch 'origin/main' into DRTVWR-600-maint-AAnsariel
# 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
2024-05-07secondlife/viewer#1333 BOOL to bool conversion leftovers: ternariesAlexander Gavriliuk
2024-05-01Merge branch 'marchcat/w-whitespace' into marchcat/x-ws-mergeAndrey Lihatskiy
2024-04-29#824 Process source files in bulk: replace tabs with spaces, convert CRLF to ↵Andrey Lihatskiy
LF, and trim trailing whitespaces as needed
2024-03-12Merge branch 'main' of https://github.com/secondlife/viewer into ↵Ansariel
DRTVWR-600-maint-A # Conflicts: # autobuild.xml # indra/llrender/llfontbitmapcache.cpp # indra/llrender/llfontbitmapcache.h # indra/llrender/llfontfreetype.cpp # indra/llrender/llfontfreetype.h # indra/llrender/llfontgl.cpp # indra/llrender/llfontgl.h # indra/llui/llbutton.h # indra/llui/llfloater.cpp # indra/llui/llfloater.h # indra/llui/llfolderviewitem.cpp # indra/llui/lllineeditor.cpp # indra/llui/lllineeditor.h # indra/llui/llscrollcontainer.cpp # indra/llui/llscrollingpanellist.cpp # indra/llui/llscrollingpanellist.h # indra/llui/llscrolllistctrl.h # indra/llui/lltextbase.cpp # indra/llui/lltextbase.h # indra/llui/lltexteditor.cpp # indra/llui/lltexteditor.h # indra/llui/lluictrl.cpp # indra/llui/llview.cpp # indra/llui/llview.h # indra/newview/llchicletbar.h # indra/newview/llconversationlog.h # indra/newview/llfloaterimsessiontab.cpp # indra/newview/llfloaterimsessiontab.h # indra/newview/llfloateruipreview.cpp # indra/newview/llnavigationbar.h # indra/newview/llpaneltopinfobar.h # indra/newview/llpathfindingpathtool.h # indra/newview/lltextureview.cpp # indra/newview/lltoolbrush.h # indra/newview/lltoolcomp.h # indra/newview/lltooldraganddrop.h # indra/newview/lltoolface.h # indra/newview/lltoolfocus.h # indra/newview/lltoolindividual.h # indra/newview/lltoolobjpicker.h # indra/newview/lltoolpie.h # indra/newview/lltoolpipette.h # indra/newview/lltoolselectland.h # indra/newview/llviewermediafocus.h # indra/newview/llviewerparcelmediaautoplay.h # indra/newview/llviewerwindow.cpp # indra/newview/llvoicechannel.h # indra/newview/llvoicevivox.h # indra/newview/llworldmapview.cpp
2024-03-07triage#103 The focused state of the 'Recently used emojis' is not visibleAlexander Gavriliuk
2024-02-25Issue#884 Crash on ~LLSearchEditorAndrey Kleshchev
Crash seems to be specific to LLFilterEditor and only in a couple specific floaters. Based on older calltacks, commiting on exit was crashing. So I'm making sure that panels that potentially do not own the element in question clean the callback in case panels get deleted before the search editor.
2024-02-23Issue#880 Crash on a dead pointer in a chat sessionAndrey Kleshchev
2024-02-21Convert remaining BOOL to boolAnsariel
2024-02-21Convert BOOL to bool in lluiAnsariel
2024-02-09#68 The 'Recently used emoji' can not be selected by the 'Tab' keyAlexander Gavriliuk
2024-01-24SL-20416 Use image from file for emoji_recent_panel_toggle_btnAlexander Gavriliuk
2024-01-24SL-20416 Avoid of taking focus by EmojiPickerAlexander Gavriliuk
2023-11-28Mac build fixAlexander Gavriliuk
2023-11-10SL-20416 Choose emoji floater puts emoji in the chat window that opened itAlexander Gavriliuk
2023-11-10SL-20521 Focus does not move to the Nearby Chat fieldAlexander Gavriliuk