summaryrefslogtreecommitdiff
path: root/indra/llui
AgeCommit message (Collapse)Author
2019-11-28BuildfixAndreyL ProductEngine
2019-11-27Upstream merge from viewer-nekoAndreyL ProductEngine
2019-11-27Downstream merge from lindenlab/viewer-lynxAndreyL ProductEngine
2019-11-27Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-11-22SL-12100 Premium Enhancements - Changes to rates to create Groups, UI Workandreykproductengine
2019-11-22SL-12317 UI Changes to Group limitsmaxim_productengine
2019-11-18SL-12305 More missing-file handlingandreykproductengine
instance().getCurFileName() was returning empty value despite supposedly non-empty filename
2019-11-14Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-11-13Merge in from viewer-release 6.3.5Dave Houlton
2019-11-13Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-11-12Downstream merge from 494-maint-wassailAndreyL ProductEngine
2019-11-12BuildfixAndreyL ProductEngine
2019-11-12Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-11-11SL-6109 Removed LLDrawFrustum and used changes from EEP to prevent merge ↵andreykproductengine
conflicts
2019-11-07Add text_valign to LLTextBase to specify the vertical alignment within a ↵Kitty Barnett
single document line The existing font_valign property is used as to position the entire document so it's impossible to top align a text editor with each line's text centered within that line's extents
2019-11-07FIXED Calling LLTextBase::insertStringNoUndo() with more than one segment ↵Kitty Barnett
results in overlapping segment ranges Text is only inserted into the view model *after* the segments are added so if seg1_pos_start is the current EOF: -> 1st segment: getSegIterContaining(seg1_pos_start) returns the last segment and insertSegment() ends up properly adjusting its start/end position -> 2nd segment: getSegIterContaining(seg2_pos_start) returns mSegments.end() since its position is beyond the available and insertSegment() leaves the last 2 segments with overlapping ranges After the fix: -> if index runs past the end of all segments then mSegments.end() is returned (no change) -> if index is a position past the length of text but claimed by a segment then that segment is returned (change) -> if index specifies a position in the middle of the document unclaimed by any segment then the first segment after that position is returned (no change) (this does break the assertion that segment->mStart <= index <= segment->mEnd?)
2019-11-06Characters can have more than one representation in LLFontFreetypeKitty Barnett
* By default all viewer text will use B/W glyphs * Added temporary use_color attribute to LLTextBase for testing
2019-10-31Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-10-28SL-6109 Fixed conflict resolution issue caused by menu acceleratorsandreykproductengine
2019-10-23MAC build fixandreykproductengine
2019-10-23Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-10-16mergeBrad Payne (Vir Linden)
2019-10-15Merge from viewer-releaseandreykproductengine
2019-10-03SL-6109 Remade 'ignore' list processing, renamed and reformed keybindingsandreykproductengine
2019-10-03SL-6109 Better menu accelerator support and slight reorganizationandreykproductengine
2019-10-01SL-6109 Cell selection supportandreykproductengine
2019-09-26SL-6109 Conflict resolutionandreykproductengine
2019-09-25SL-6109 Mouse support readyandreykproductengine
2019-09-17SL-6109 Keyaboard support readyandreykproductengine
2019-09-10Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-09-10Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-09-10Merge viewer-release 6.3.2Graham Linden
2019-09-10Merged in lindenlab/viewer-releaseandreykproductengine
2019-09-10Merge viewer-release 6.3.2Graham Linden
2019-09-10SL-11910 [Win] Horizontal scrollandreykproductengine
2019-09-05SL-11315 Viewer asks to play media and retains selected choiceandreykproductengine
2019-08-30SL-1171 [Dev tools] UI controls <-> settings connection issuesandreykproductengine
2019-09-19SL-6109 Extended Key-to-string functionalityandreykproductengine
2019-09-19SL-6109 New cell type with icon and text (and 1 pixel offset for all text cells)andreykproductengine
2019-08-19Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2019-08-14Merge viewer-release 6.2.5Graham Linden
2019-08-14Merged in lindenlab/viewer-releaseandreykproductengine
2019-08-13Merge viewer-release 6.2.5Graham Linden
2019-08-12DRTVWR-493: Streamline LLParamSingleton, LLLockedSingleton.Nat Goodspeed
Simplify LLSingleton::SingletonLifetimeManager to SingletonInitializer: that struct has not been responsible for deletion ever since LLSingletonBase acquired dependency-ordered deleteAll(). Move SingletonData::mInitState changes from SingletonLifetimeManager to constructSingleton() method. Similarly, constructSingleton() now sets SingletonData::mInstance instead of making its caller store the pointer. Add variadic arguments to LLSingleton::constructSingleton() so we can reuse it for LLParamSingleton. Add finishInitializing() method to encapsulate logic reused for getInstance()'s INITIALIZING and DELETED cases. Make LLParamSingleton a subclass of LLSingleton, just as LLLockedSingleton is a subclass of LLParamSingleton. Make LLParamSingleton a friend of LLSingleton, so it can access private members of LLSingleton without also granting access to any DERIVED_CLASS subclass. This eliminates the need for protected getInitState(). LLParamSingleton::initParamSingleton() reuses LLSingleton::constructSingleton() and finishInitializing(). Its getInstance() method completely replaces LLSingleton::getInstance(): in most EInitStates, LLParamSingleton::getInstance() is an error. Use a std::mutex to serialize calls to LLParamSingleton::initParamSingleton() and getInstance(). While LLSingleton::getInstance() relies on the "initialized exactly once" guarantee for block-scope static declarations, LLParamSingleton cannot rely on the same mechanism. LLLockedSingleton is now a very succinct subclass of LLParamSingleton -- they have very similar functionality. Giving the LLSINGLETON() macro variadic arguments eliminates the need for a separate LLPARAMSINGLETON() macro, while continuing to support existing usage.
2019-08-10DRTVWR-493 LLUI to LLParamSingletonandreykproductengine
2019-08-10DRTVWR-493 LLRender2D init cleanupandreykproductengine
2019-07-26SL-8380 Ability to disable 2D UI tooltipsandreykproductengine
2019-07-25DRTVWR-493 LLRender2D to LLParamSingletonandreykproductengine
2019-07-05SL-11551 tilia-inc.com as an official Linden Lab URL should have SL iconmaxim_productengine
2019-06-27DRTVWR-493 LLSpellcheck doesn't need separate initandreykproductengine