summaryrefslogtreecommitdiff
path: root/indra/newview/llspeakers.cpp
AgeCommit message (Collapse)Author
2024-05-02Introduce LLLater::getRemaining(handle).Nat Goodspeed
Some timer use cases need to know not only whether the timer is active, but how much time remains before it (next) fires. Introduce LLLater::mDoneTimes to track, for each handle, the timestamp at which it's expected to fire. We can't just look up the target timestamp in mQueue's func_at entry because there's no documented way to navigate from a handle_type to a node iterator or pointer. Nor can we store it in mHandles because of order dependency: we need the mDoneTimes iterator so we can bind it into the Periodic functor for doPeriodically(), but we need the mQueue handle to store in mHandles. If we could find the mQueue node from the new handle, we could update the func_at entry after emplace() -- but if we could find the mQueue node from a handle, we wouldn't need to store the target timestamp separately anyway. Split LLLater::doAtTime() into internal doAtTime1() and doAtTime2(): the first creates an mDoneTimes entry and returns an iterator, the second finishes creating new mQueue and mHandles entries based on that mDoneTimes entry. This lets doPeriodically()'s Periodic bind the mDoneTimes iterator. Then instead of continually incrementing an internal data member, it increments the mDoneTimes entry to set the next upcoming timestamp. That lets getRemaining() report the next upcoming timestamp rather than only the original one. Add LLEventTimer::isRunning() and getRemaining(), forwarding to its LLLater handle. Fix various LLEventTimer subclass references to mEventTimer.stop(), etc. Fix non-inline LLEventTimer subclass tick() overrides for bool, not BOOL. Remove LLAppViewer::idle() call to LLEventTimer::updateClass(). Since LLApp::stepFrame() already calls LLCallbackList::callFunctions(), assume we've already handled that every tick.
2022-10-27DRTVWR-570 Mac build fix: unused variables cleanupAndrey Lihatskiy
2021-11-05SL-16320 Remove references to AvaLine from the viewerAndrey Kleshchev
2017-09-13MAINT-7794 Wrap getCapability(..) calls to avoid crashesMnikolenko Productengine
2017-02-15MAINT-7118 Swapping legacy people API with new cacheandreykproductengine
2016-04-04merge with 4.0.3-releaseOz Linden
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-10-19Merge from viewer release.Rider Linden
2015-09-18Set consistent terminology for yield/wait -> suspend for coroutines.Rider Linden
2015-07-10Backed out changeset bab1000e1b2d: restore 'selfless' changesNat Goodspeed
2015-07-07Backout selfles merge 738255dbbfd679d9e615baab3398e5e345bbb3c5Rider Linden
2015-07-01MAINT-5351: Remove 'self' parameter from coroutine functions.Nat Goodspeed
lleventcoro_test.cpp runs clean (as modified for new API), and all the rest builds clean, but the resulting viewer is as yet untested.
2015-06-08MAINT-5240 FIXED Viewer will request the full group member list for group ↵AndreyL ProductEngine
chat in some cases - need to remove this
2015-06-05build fixMnikolenko ProductEngine
2015-06-03Remove vestigial httpclient.h include from files that no longer need it.Rider Linden
2015-06-04MAINT-5240 FIXED Per Kelly, added delay to GroupPropertiesRequest tooAndreyL ProductEngine
2015-06-04MAINT-5240 FIXED Viewer will request the full group member list for group ↵AndreyL ProductEngine
chat in some cases
2015-05-29Set media viewer mime probe to follow redirection.Rider Linden
Coroutines for group moderation.
2014-10-24MAINT-4614 - fix viewer warning about bad membership list updatesimon
2014-09-17A patch for maint-4414Aura Linden
2014-05-13sunshine-external merge WIPBrad Payne (Vir Linden)
2013-08-09second phase summer cleaningRichard Linden
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-07-30Summer cleaning - removed a lot of llcommon dependencies to speed up build timesRichard Linden
consolidated most indra-specific constants in llcommon under indra_constants.h fixed issues with operations on mixed unit types (implicit and explicit) made LL_INFOS() style macros variadic in order to subsume other logging methods such as ll_infos added optional tag output to error recorders
2013-06-20merge with releaseRichard Linden
2013-06-05merge with viewer-releaseRichard Linden
2013-05-21mergeBrad Payne (Vir Linden)
2013-05-05Spring cleaning: removed unused .cpp and.h files, and cleaned up header ↵Richard Linden
dependencies
2013-04-19merge changes for DRTVWR-294Oz Linden
2013-04-08WIP SH-4035: confirmation when closing appearance window when changes presentprep
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2013-03-21Folded in changes from sunshine-stableprep
2013-03-20Merge with viewer-chuiprep@lindenlab.com
2013-03-13Merging LLCURL::Responder changes with CHUI changes. Fixed gcc 4.6 compile ↵Don Kjer
failures
2013-03-13Large changes to the LLCurl::Responder API, as well as pulling in some ↵Don Kjer
changes to common libraries from the server codebase: * Additional error checking in http handlers. * Uniform log spam for http errors. * Switch to using constants for http heads and status codes. * Fixed bugs in incorrectly checking if parsing LLSD xml resulted in an error. * Reduced spam regarding LLSD parsing errors in the default completedRaw http handler. It should not longer be necessary to short-circuit completedRaw to avoid spam. * Ported over a few bug fixes from the server code. * Switch mode http status codes to use S32 instead of U32. * Ported LLSD::asStringRef from server code; avoids copying strings all over the place. * Ported server change to LLSD::asBinary; this always returns a reference now instead of copying the entire binary blob. * Ported server pretty notation format (and pretty binary format) to llsd serialization. * The new LLCurl::Responder API no longer has two error handlers to choose from. Overriding the following methods have been deprecated: ** error - use httpFailure ** errorWithContent - use httpFailure ** result - use httpSuccess ** completed - use httpCompleted ** completedHeader - no longer necessary; call getResponseHeaders() from a completion method to obtain these headers. * In order to 'catch' a completed http request, override one of these methods: ** httpSuccess - Called for any 2xx status code. ** httpFailure - Called for any non-2xx status code. ** httpComplete - Called for all status codes. Default implementation is to call either httpSuccess or httpFailure. * It is recommended to keep these methods protected/private in order to avoid triggering of these methods without using a 'push' method (see below). * Uniform error handling should followed whenever possible by calling a variant of this during httpFailure: ** llwarns << dumpResponse() << llendl; * Be sure to include LOG_CLASS(your_class_name) in your class in order for the log entry to give more context. * In order to 'push' a result into the responder, you should no longer call error, errorWithContent, result, or completed. * Nor should you directly call httpSuccess/Failure/Completed (unless passing a message up to a parent class). * Instead, you can set the internal content of a responder and trigger a corresponding method using the following methods: ** successResult - Sets results and calls httpSuccess ** failureResult - Sets results and calls httpFailure ** completedResult - Sets results and calls httpCompleted * To obtain information about a the response from a reponder method, use the following getters: ** getStatus - HTTP status code ** getReason - Reason string ** getContent - Content (Parsed body LLSD) ** getResponseHeaders - Response Headers (LLSD map) ** getHTTPMethod - HTTP method of the request ** getURL - URL of the request * It is still possible to override completeRaw if you want to manipulate data directly out of LLPumpIO. * See indra/llmessage/llcurl.h for more information.
2013-03-11CHUI-793 : Fixed! Introduced ChatLoadGroupTimeout and ↵merov
ChatLoadGroupMaxMembers to mitigate slow group loading.
2013-03-11Viewer-chui mergeprep
2013-03-08CHUI-793 : WIP : Limit the number of participants we load on groups when we ↵Merov Linden
load from the local group data
2013-03-05Fixing issues with not detecting when LLSD XML parsing fails. Changing most ↵Don Kjer
http error handlers to understand LLSD error responses. Fleshing out most http error handler message spam.
2013-02-20CHUI-395 : Fixed! Check the moderator status in the group data when loading ↵Merov Linden
the group list
2013-01-23CHUI-480 : Fixed : Flagged when local update is made and prevent doing it ↵Merov Linden
multiple times, allow group to graw by 1 (me) then the rest (prevent having group remaining hidden).
2013-01-23CHUI-480 : Fixed : Fetch group membership when starting group chat and ↵Merov Linden
populate speakers list
2012-11-15CHUI-397 (Delay in removing names from participant list in nearby chat)MaximB ProductEngine
CHUI-440 (Nearby chat participant list does not clear after teleport when conversation floater is closed/minimized) fixed
2012-11-09CHUI-450 : Fixed how the list of speakers is updated, always add the agent ↵Merov Linden
avatar in it, takes voice activation into account
2012-11-07CHUI-450 (Your own name does not appear in nearby chat participant list if ↵MaximB ProductEngine
voice chat disabled) Added audio module initialization without faking mVoiceEnabled value
2012-10-19CHUI-422 : Add invited non buddies to the initial set of speakersMerov Linden
2012-10-17CHUI-422 : Update the ad-hoc conversation with the known list of on line ↵Merov Linden
agents without waiting for server message (which often doesn't come...).
2012-10-17MAINT-1551 : WIP : More tests to elicit a correct answer from the backbone ↵Merov Linden
server
2012-10-15MAINT-1551 : WIP : Added a hack : send an accept invitation message so to ↵Merov Linden
trigger the sending of the agent list.
2012-10-15MAINT-1551 : WIP : MergeMerov Linden
2012-10-15MAINT-1551 : WIP : More IM comm tracing and attempt to fixMerov Linden