summaryrefslogtreecommitdiff
path: root/indra/newview/llviewertexturelist.cpp
AgeCommit message (Collapse)Author
2012-10-10Introduce new LLDir::findSkinnedFilenames() method. Use as needed.Nat Goodspeed
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-09-05Merge in latest viewer-developmentsimon@Simon-PC.lindenlab.com
2012-09-04Split gl-specific LLViewerTexture implementation into llrender/LLGLViewerTextureDon Kjer
2012-08-29SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
further cleanup of LLStat removed llfloaterlagmeter
2012-08-24Automated merge with http://bitbucket.org/lindenlab/viewer-catRichard Linden
2012-08-07Automated merge with ssh://hg.lindenlab.com/richard/viewer-interestingRichard Linden
2012-08-07SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
cleaned up LLStat and removed unnecessary includes
2012-07-30mergeBrad Payne (Vir Linden)
2012-07-23a trivial code change for SH-3073. The change makes sure to clear the ↵Xiaohong Bao
texture fetching queue ONLY once during a teleporting.
2012-07-18SH-3275 WIP Run viewer metrics for object update messagesRichard Linden
continued clean up of llstats stuff
2012-07-20MAINT-570 Remove unused memory tracking system LLMemTypeDave Parks
2012-06-28MergeDave Parks
2012-06-26fix merge conflicts: v-r to dranoXiaohong Bao
2012-06-26v-r to drano merge conflicts wipBrad Payne (Vir Linden)
2012-06-22mergeDave Parks
2012-06-12for SH-3073: implement a fast cache system for texture fetchingXiaohong Bao
2012-06-08SH-3145 : Expose update fetch and update priorities magic numbers in ↵Merov Linden
settings.xml
2012-05-31fix for MAINT-1113: [PUBLIC_JIRA_USERS][crashhunters] crash at ↵Xiaohong Bao
LLViewerTextureList::removeImageFromList(LLViewerFetchedTexture *) [secondlife-bin llviewertexturelist.cpp]
2012-05-29fo SH-3074: clear ghost and stale texture fetching requests in time.Xiaohong Bao
2012-05-25Merge pull from lindenlab/viewer-development as requested by Oz for DRTVWR-148simon@Simon-PC.lindenlab.com
2012-05-03For SH-3086: add functions to refetch all previous textures through HTTP and ↵Xiaohong Bao
from cache
2012-04-12for SH-3074: clear ghost and stale texture fetching requests in timeXiaohong Bao
2012-04-05SH-3060 : Implement new byte range computation, cleaned up use of ↵Merov Linden
compression rate as well.
2012-04-20MAINT-775 More edge case cleanup -- spinning child prims still break on ↵Dave Parks
deselect until the next LoD update
2012-04-18MAINT-775 More aggressive removal of textures from video memory.Dave Parks
2012-03-07MAINT-708 Don't compress UI textures. Use GL_NICEST as compression hint to ↵Dave Parks
avoid artifacts.
2011-12-22trivial: some debug code for SH-2623: [PUBLIC_JIRA_USERS][crashhunters] ↵Xiaohong Bao
crash at LLViewerTextureList::removeImageFromList(LLViewerFetchedTexture *)
2011-11-24merge changes for vmrg-193Oz Linden
2011-11-04trivial: fix a linux compiling warning.Xiaohong Bao
2011-10-31mergeBrad Payne (Vir Linden)
2011-10-26fix for SH-2586: Texture Memory (MB) preference refuses to set above 128mb ↵Xiaohong Bao
(when --noprobe switch is used)
2011-10-25debug code for SH-2623: crash at LLViewerTextureList::removeImageFromList()Xiaohong Bao
2011-10-21fix for SH-2516: Full Bright Geometry Rendering Increases Rapidly, ↵Xiaohong Bao
Destroying Frame Rate.
2011-10-19mergeDave Parks
2011-10-05SH-2031 Fix for stall in image update -- don't use the CPU to convert a ↵Dave Parks
height map into a normal map -- use the GPU instead via a shader. Also, WTF glFinish?
2011-09-30made toolbars conform to visual specsRichard Nelson
added ability to specify clip rects in textures.xml
2011-07-17SH-2031 High risk changeset, but potentially high reward. Addresses frame ↵Dave Parks
stalls in renderer by never using the fixed function pipeline if shaders are available.
2011-06-21fix for SH-1642: [PUBLIC_JIRA_USERS][crashhunters] crash at ↵Xiaohong Bao
LLViewerTextureList::removeImageFromList(LLViewerFetchedTexture *) [secondlife-bin llviewertexturelist.cpp]
2011-06-03more fix for STORM-1298: Crash on startup of Second Life 2.7.1(231307)Xiaohong Bao
2011-06-01fix for STORM-1298: Crash on startup of Second Life 2.7.1(231307)Xiaohong Bao
2011-05-25fix for SH-1624: Crash during viewer startup: ↵Xiaohong Bao
LLViewerTextureList::addImageToList
2011-05-20fix more DOS line endingsOz Linden
2011-05-16mergeDave Parks
2011-05-12mergeDave Parks
2011-05-12Automated merge with ssh://hg.lindenlab.com/richard/viewer-experienceRichard Linden
2011-05-11yOz Linden
2011-05-10MergeXiaohong Bao
2011-05-04EXP-664 : Fix call to initialization encodingMerov Linden
2011-05-02mergeDave Parks
2011-04-25EXP-664 : Add JPEG2000 compression settings for test, fix one crash on ↵Merov Linden
compression, enhanced error handling on image upload