Commit Graph

100 Commits (cc8af5f37df1e200bc0b55740887a99157066e35)

Author SHA1 Message Date
Dave Parks 8d20480c5f SL-16148 SL-16244 SL-16270 SL-16253 Remove most BlockTimers, remove LLMemTracked, introduce alignas, hook most/all reamining allocs, disable synchronous occlusion, and convert frequently accessed LLSingletons to LLSimpleton 2021-10-28 18:06:21 +00:00
andreykproductengine c61d0f4297 DRTVWR-493 LLUI to LLParamSingleton 2019-08-10 15:31:03 +03:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Richard Linden a10eb7b240 further fix of inventory keyboard focus and tab order calculations 2013-11-05 19:30:38 -08:00
Richard Linden 697d2e720b renamed TimeBlock to BlockTimerStatHandle 2013-10-15 20:24:42 -07:00
Richard Linden cbe397ad13 changed fast timer over to using macro
another attempt to move mem stat into base class
2013-09-05 14:04:13 -07:00
Richard Linden e340009fc5 second phase summer cleaning
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Richard Linden 0a96b47663 merge with viewer-release 2013-06-05 19:05:43 -07:00
Richard Linden 41b4374760 SH-3931 WIP Interesting: Add graphs to visualize scene load metrics
renamed LLView::handleVisibilityChange to onVisibilityChange to reflect
standard naming conventions for handlers vs. reactors
2013-05-10 17:57:12 -07:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Richard Linden c0224cc47a merge with viewer-development 2012-11-19 19:06:36 -08:00
Richard Linden f8eaee7531 SH-3499 Ensure asset stats output is correct
improvements to predicate API
default rules encapsulated in LLInitParam
removed empty flag from viewer asset stats
2012-11-02 20:03:44 -07:00
Richard Linden bb6bda9eef SH-3499 Ensure asset stats output is correct
added support for specifying predicates for xui and llsd serialization
2012-11-01 19:55:06 -07:00
Nat Goodspeed 3653727e7f Introduce new LLDir::findSkinnedFilenames() method. Use as needed.
In a number of different places, for different reasons, the viewer wants to
load a UI-related file that might be overridden by a non-default skin; and
within that skin, might further be overridden by a non-default language.
Apparently, for each of those use cases, every individual developer approached
it as an entirely new problem, solving it idiosyncratically for that one case.
Not only is this a maintenance problem, but it rubs one's nose in the fact
that most such solutions consider only a subset of the relevant skin
directories.
Richard and I evolved an API intended to address all such cases: a central
LLDir method returning a list of relevant pathnames, from most general to most
localized, filtered to present only existing files; plus a couple of
convenience methods to specifically obtain the most general and most localized
available file.
There were several load-skinned-file methods (LLFloater::buildFromFile(),
LLPanel::buildFromFile() and LLUICtrlFactory::createFromFile() -- apparently
cloned-and-modified from each other) that contained funky bolted-on logic to
output the loaded data to an optional passed LLXMLNodePtr param. The trouble
is that passing that param forced each of these methods to subvert its normal
search: specifically for that case, it needed to find the baseline XML file
instead of the localized one. Richard agreed that for the intended usage
(reformatting XML files) we should use XML schema instead, and that the hacky
functionality should be removed. Remove it. Also remove
LLUICtrlFactory::getLocalizedXMLNode(), only used for those three special cases.
Some callers explicitly passed the optional LLXMLNodePtr param as NULL. Remove
that.
Remove LLFloaterUIPreview::displayFloater(save) param, which relied on the
optional output LLXMLNodePtr param. Make onClickSaveFloater() and
onClickSaveAll() emit popupAndPrintWarning() about discontinued functionality.
Recast LLFloater::buildFromFile(), LLPanel::buildFromFile(),
LLUICtrlFactory::createFromFile(), LLNotifications::loadTemplates(),
LLUI::locateSkin(), LLFontRegistry::parseFontInfo(),
LLUIColorTable::loadFromSettings(), LLUICtrlFactory::loadWidgetTemplate(),
LLUICtrlFactory::getLayeredXMLNode(), LLUIImageList::initFromFile(),
LLAppViewer::launchUpdater() and LLMediaCtrl::navigateToLocalPage() to use
findSkinnedFilenames(). (Is LLAppViewer::launchUpdater() ever called any more?
Apparently so -- though the linux-updater.bin logic to process the relevant
command-line switch has been disabled. Shrug.) (Is
LLMediaCtrl::navigateToLocalPage() ever used?? If so, why?)
Remove LLUI::setupPaths(), getXUIPaths(), getSkinPath() and
getLocalizedSkinPath(). Remove the skins/paths.xml file read by setupPaths().
The only configuration it contained was the pair of partial paths "xui/en" and
"xui/[LANGUAGE]" -- hardly likely to change. getSkinPath() specifically
returned the first of these, while getLocalizedSkinPath() specifically
returned the second. This knowledge is now embedded in findSkinnedFilenames().
Also remove paths.xml from viewer_manifest.py.
Remove injected xui_paths from LLFontGL::initClass() and
LLFontRegistry::LLFontRegistry(). These are no longer needed since
LLFontRegistry can now directly consult LLDir for its path search. Stop
passing LLUI::getXUIPaths() to LLFontGL::initClass() in LLViewerWindow's
constructor and initFonts() method.
Add LLDir::append() and add() methods for the simple task of combining two
path components separated by getDirDelimiter() -- but only if they're both
non-empty. Amazing how often that logic is replicated. Replace some existing
concatenations with add() or append().
New LLDir::findSkinnedFilenames() method must know current language. Allow
injecting current language by adding an LLDir::setSkinFolder(language) param,
and pass it where LLAppViewer::init() and initConfiguration() currently call
setSkinFolder(). Also add LLDir::getSkinFolder() and getLanguage() methods.
Change LLFLoaterUIPreview's LLLocalizationResetForcer helper to "forcibly
reset language" using LLDir::setSkinFolder() instead of LLUI::setupPaths().
Update LLDir stubs in lldir_stub.cpp and llupdaterservice_test.cpp.
Add LLDir::getUserDefaultSkinDir() to obtain often-overlooked possible skin
directory -- like getUserSkinDir() but with "default" in place of the current
skin name as the last path component. (However, we hope findSkinnedFilenames()
obviates most explicit use of such individual skin directory pathnames.)
Add LLDir unit tests for new findSkinnedFilenames() and add() methods -- the
latter exercises append() as well.
Tweak indra/integration_tests/llui_libtest/llui_libtest.cpp for all the above.
Notably, comment out its export_test_floaters() function, since the essential
LLFloater::buildFromFile(optional LLXMLNodePtr) functionality has been
removed. This may mean that llui_libtest.cpp has little remaining value, not
sure.
2012-10-10 14:57:43 -04:00
Richard Linden b6858df0dd LLHandle<Derived> is now implicitly convertable to LLHandle<Base> and LLHandle<Base>
can be downcast to LLHandle<Derived> using the LLHandleProvider mixin
2011-11-08 13:47:08 -08:00
Richard Linden b183b6f141 EXP-1196 FIX Fix param block template ordering
changed ordering of template loading relative to constructor setting of params
moved a lot of constructor-set params to template files
reviewed by Leslie
2011-09-06 14:45:11 -07:00
Richard Nelson fd9f3b9fe9 EXP-1021 FIX Position of web content browser dictates position of profile panel - profile panel position changes do not persist
EXP-1030 FIX Search button toggle can get out of synch in bottom bar
made llinstancetracker::iterator do own nested level management (removing need for separate guard)
added support for filename= to floaters
can pass in arbitrary window_class to floaters
2011-07-26 14:26:27 -07:00
Leslie Linden 18e8d57b21 EXP-995 FIX -- New icon scrolls into Received Items panel heading
EXP-903 FIX -- Newness/Freshness number does not decrease as items are opened in Inbox

* Brought back freshness with the freshness
* New badge and label color from Gibson
* Inventory Panel now allows display of badges with proper clipping

Reviewed by Richard.
2011-07-11 17:45:29 -07:00
Leslie Linden 1aed984928 EXP-865 PROGRESS -- Modify LLBadge to allow it to hang off of non-buttons
Added the following for increased LLBadge functionality:
 * Panels now choose whether or not they accept buttons as children, which they
   do by default.
 * UI controls now shuffle controls with "requests_front" to the front of their
   children list at postBuild time.
 * Badges are set to "requests_front" by default
 * Badges now accept border image and color attributes

 Reviewed by Callum
2011-06-07 13:57:19 -07:00
Richard Linden ca2141ce90 merge with viewer-dev 2010-12-08 16:04:07 -08:00
Paul Guslisty e997a09343 STORM-593 FIXED Make transparent texteditor and lineeditor
Reason: If some child of transparent LLFloater has a visible non-transparent background then this part of floater is non-transparent. As a result floater became partially transparent.

Solution: When transparent floater changes focus, iterate through its children and set corresponding (corresponding to whether control in active or in inactive floater see STORM-535) transparency value.

- Added method LLUICtrl::getCurrentTransparency. This method calculates transparency level of a control. Calculated value should be used as an alpha chennel value in case we want this control to be transparent. For now this method is used by LLFloater to adjust transparency of its children.

- Added calculating of transparecny level for: LLLineEditor, LLTextBase, LLinventoryListItem, LLScrollContainer, LLScrollListCtrl, LLAccrodionCtrlTab.

- Added method LLFlaoter::updateChildrenTransparency which updates transparency value of its children
2010-11-24 19:12:02 +02:00
Richard Linden 50d21a75a7 merge 2010-11-15 15:52:54 -08:00
Paul Guslisty 211e141444 STORM-450 FIXED Incorrect help contexts for Sidebar People tab
- Added checking whether panel is in visible chain instead of just visibility checking
2010-11-04 16:16:18 +02:00
Richard Linden 67be46c78a made mIsFocusRoot a XUI param 2010-09-28 17:12:50 -07:00
Richard Linden 0edb695ea8 instead of exposing mutable container in LLInitParam::Multiple, just expose access functions, begin(), end(), etc.
this allows mutation of param block contents, without being able to change number of elements
2010-09-22 14:48:18 -07:00
Monroe Linden b62b10dd26 Post-convert merge by convert_monolith.py from ./viewer-experience 2010-08-27 16:58:33 -07:00
Richard Nelson 65c9914d23 made Params parsers not act as singletons 2010-08-23 11:03:19 -07:00
Richard Nelson 02d8197019 changed buildPanel/buildFloater to member functions buildFromFile
streamlined LLUICtrlFactory's interface
2010-08-20 10:14:28 -07:00
Richard Nelson d06500eadd fixed EOL 2010-08-16 15:02:24 -07:00
Richard Nelson c20bd2dfee cleaned up LLUICtrlFactory...
removed redundant functionality
moved buildPanel to LLPanel
2010-08-16 15:00:51 -07:00
Tofu Linden e416840f85 Backed out changeset c3d41f18ce2b
back-out the back-out for this branch.  yay.
2010-08-24 19:22:00 +01:00
Tofu Linden 98cc236503 Backed out changeset a62bf7c0af21
Backing out this merge that I pushed (prematurely) to the wrong place.
2010-08-24 18:44:39 +01:00
Tofu Linden 6ba23344c9 merge heads. whew. 2010-08-24 18:37:53 +01:00
Oz Linden 06b0d72efa Change license from GPL to LGPL (version 2.1) 2010-08-13 07:24:57 -04:00
Richard Nelson 989552161d added LLPanel::childSetAction() that does not take a void* argument
implemented childGetVisibleTab/PanelWithHelp using breadth-first-search iterator
moved tentative state from llview to lluictrl
changes llcallbackmap to use boost::function
2010-07-30 09:56:49 -07:00
Richard Linden 6e961cd9f2 EXT-7729 WIP LLWARNS: Tons of "Making dummy class..." warnings on startup
improved filename output for XUI parser errors
2010-06-22 18:26:29 -07:00
Dmitry Zaporozhan 2cf2fa6ad2 Fixed low bug EXT-5225 - Local chat doesn't go translucent when loses focus.
Added customizable background image overlay color to control background transparency. Default overlay color is White, as before.

--HG--
branch : product-engine
2010-02-18 18:28:13 +02:00
Tofu Linden d7060eb323 CID-205
Checker: REVERSE_INULL
Function: LLPanel::fromXML(LLPointer<LLXMLNode>, LLView *, LLPointer<LLXMLNode>)
File: /indra/llui/llpanel.cpp
2010-02-13 14:08:58 +00:00
richard ddfc6efbee EXT-5025 - Tooltips block mouse clicks
EXT-4547	[BSI] it is possible to highlight multiple layers of chat
EXT-3844 	Mouse wheel camera zoom is not reflected on View popup slider
EXT-3103 	Add an option to restrict entering non-ascii symbols in text editor.

reviewed by Leyla
2010-02-05 11:32:33 -08:00
Lynx Linden f3bd6481a5 EXT-4197: Search in sub-panels for help IDs too.
In order to support unique help IDs for the Landmark and Place Profile
panels off the Places sidetray, we need to also search within any
embedded (and visible) sub-panels.
2010-01-13 17:57:03 +00:00
Lynx Linden d24cd96ef8 EXT-3929: Also look in accordion tabs for help topic.
When the user clicks on the help "?" button, we try to find the
currently active tab and see if there is a help topic for that tab.
In addition, we now also look for a currently-visible accordion tab.
2010-01-11 10:41:01 +00:00
richard 2b22831dd0 ext-3307 - nearby chat stays scrolled at bottom 2009-12-18 15:18:16 -08:00
richard c84b6a28a0 made setupParams do coordinate flipping and negative coordinate magic only for XUI-based params 2009-12-17 11:49:41 -08:00
Alexei Arabadji 4fc7b91a79 implemented EXT-2323 “Get rid from obsolete notification widgets”;
--HG--
branch : product-engine
2009-12-11 14:26:27 +02:00
James Cook 7d3b3cc474 Linker optimization - use "extern template" for commonly regenerated templates
Also replaced many duplicate calls to LLViewerCamera::getInstance() with local pointer.
Reviewed with Ambroff
2009-11-30 14:41:52 -08:00
James Cook b50ba67bd8 Revert extern template link optimization until I can build/test on PC 2009-11-29 10:19:17 -08:00
James Cook 928b7cba3e Linker optimization, use extern template for LLView::getChild<> 2009-11-25 22:00:15 -08:00
richard 7fd1488c62 convert signals to allocate on demand in order to speed up widget construction
reviewed by James
2009-11-23 11:42:32 -08:00
richard f112356d77 added filenames to xui names output when using filename="" in XUI
reviewed by Richard
2009-11-10 14:01:55 -08:00
richard fd1e10a4ca merge 2009-10-30 11:45:27 -07:00