diff --git a/.hgtags b/.hgtags index 02fa2bd659..b781c271d8 100644 --- a/.hgtags +++ b/.hgtags @@ -11,6 +11,8 @@ a563f7e215c7883c1cfd20908085687a0ed96284 RLVa-1.4.0 6522747820037cc11e5b7d0491a0a9808a958709 RLVa-1.4.5 0c8f23b2c4cf96d1a08bd527b3ccb6339a9fdb60 RLVa-1.4.6 674db463770b78f836fc9c87a1b2235e212a576c RLVa-1.4.7 +c72973e6837e94b7eee1d63b2e9eab84f0f19e2d RLVa 1.4.8 +b15fdd026026f843464c29eb21116409d3234a29 RLVa-1.4.9 a656486925e85b49757f272a685de2f888dfaa13 FS_preFUI 931cb0061118b59a6ef542d7695459cf956a3902 V/Dev-to-FSFUI e5b70a2c841dab82151fa23638b7d590ff579d02 merge_FSFUI_to_FS @@ -30,6 +32,8 @@ cab4bd0390a6afef05de7427c65a8a1ddb7727b5 LL 3.4.1 Release Merge 47ff8041abcc1650736f54aa12fe3232521338b2 Firestorm_4.3.0_Beta d1723a46b2470fc718a51b6e0c5df6a7f2c02d14 Firestorm_4.3.1_Release 13c2058a91bb72610b0241f5d0e8224cb5ad91ee Firestorm_4.4.0_Release +e76135ef78cb1f63c10eecec5d043e24d4358bf6 Firestorm_4.4.1_Release +ad5581d9b1142e48cd41727cb2262580988aafb2 Firestorm_4.4.2_Release bb38ff1a763738609e1b3cada6d15fa61e5e84b9 2.1.1-release 003dd9461bfa479049afcc34545ab3431b147c7c v2start 52d96ad3d39be29147c5b2181b3bb46af6164f0e alpha-3 diff --git a/README_BUILD_FIRESTORM_MACOSX.txt b/README_BUILD_FIRESTORM_MACOSX.txt index 64a3ab5d6b..804b7ba50f 100755 --- a/README_BUILD_FIRESTORM_MACOSX.txt +++ b/README_BUILD_FIRESTORM_MACOSX.txt @@ -61,3 +61,4 @@ Logs: Output: Look for output in build-darwin-i386/newview/Release + diff --git a/README_BUILD_FIRESTORM_WIN32.txt b/README_BUILD_FIRESTORM_WIN32.txt index 1b6a7e68a5..b3289a0e9a 100755 --- a/README_BUILD_FIRESTORM_WIN32.txt +++ b/README_BUILD_FIRESTORM_WIN32.txt @@ -54,4 +54,3 @@ Logs: Output: Look for output in build-vc100/newview/Release - diff --git a/indra/newview/app_settings/scriptlibrary_lsl.xml b/indra/newview/app_settings/scriptlibrary_lsl.xml index 508e281380..11c0c1087c 100644 --- a/indra/newview/app_settings/scriptlibrary_lsl.xml +++ b/indra/newview/app_settings/scriptlibrary_lsl.xml @@ -2197,7 +2197,7 @@ Clears (deletes) the media and all params from the given face. llSetLinkPrimitiveParamsFast(integer linknumber,list rules) Set primitive parameters for linknumber based on rules. - llSetLinkPrimitiveParams + llGetLinkPrimitiveParams desc llGetLinkPrimitiveParams(integer linknumber,list rules) diff --git a/indra/newview/app_settings/settings_phoenix.xml b/indra/newview/app_settings/settings_phoenix.xml index cd3605b923..a590a6ac73 100644 --- a/indra/newview/app_settings/settings_phoenix.xml +++ b/indra/newview/app_settings/settings_phoenix.xml @@ -447,5 +447,29 @@ 0 + FSLegacyMinimize + + Comment + Minimize floaters to bottom left instead of top left. + Persist + 1 + Type + Boolean + Value + 1 + + + FSLegacyEdgeSnap + + Comment + Use old method for adjusting edge snap regions. + Persist + 1 + Type + Boolean + Value + 1 + + diff --git a/indra/newview/fsareasearch.cpp b/indra/newview/fsareasearch.cpp index 98b754157a..39774cba2d 100644 --- a/indra/newview/fsareasearch.cpp +++ b/indra/newview/fsareasearch.cpp @@ -54,6 +54,7 @@ #include "llcombobox.h" #include "llnotificationsutil.h" #include "fswsassetblacklist.h" +#include "llworld.h" // max number of objects that can be (de-)selected in a single packet. @@ -112,6 +113,8 @@ FSAreaSearch::FSAreaSearch(const LLSD& key) : mExcludeAttachment(true), mExcludeTempary(true), mExcludePhysics(true), + mExcludeChildPrims(true), + mExcludeNeighborRegines(true), mColumnDistance(true), mColumnName(true), mColumnDescription(true), @@ -120,8 +123,7 @@ FSAreaSearch::FSAreaSearch(const LLSD& key) : mColumnCreator(true), mColumnLastOwner(true), mRequestQueuePause(false), - mRequestNeedsSent(false), - mOutstandingRequests(0) + mRequestNeedsSent(false) { //TODO: Multi-floater support and get rid of the singletin. mInstance = this; @@ -252,13 +254,25 @@ void FSAreaSearch::checkRegion() if (mInstance && mActive) { // Check if we changed region, and if we did, clear the object details cache. - LLViewerRegion* region = gAgent.getRegion(); - if (region != mLastRegion) + LLViewerRegion* region = gAgent.getRegion(); // getRegion can return NULL if disconnected. + if (region && (region != mLastRegion)) { + if (!mExcludeNeighborRegines) + { + std::vector uniqueRegions; + region->getNeighboringRegions(uniqueRegions); + if(std::find(uniqueRegions.begin(), uniqueRegions.end(), mLastRegion) != uniqueRegions.end()) + { + // Crossed into a neighboring regine, no need to clear everything. + mLastRegion = region; + return; + } + // else teleported into a new regine + } mLastRegion = region; mRequested = 0; mObjectDetails.clear(); - mOutstandingRequests = 0; + mRegionRequests.clear(); mLastProptiesRecievedTimer.start(); mPanelList->getResultList()->deleteAllItems(); mPanelList->setCounterText(); @@ -276,7 +290,7 @@ void FSAreaSearch::refreshList(bool cache_clear) { mRequested = 0; mObjectDetails.clear(); - mOutstandingRequests = 0; + mRegionRequests.clear(); mLastProptiesRecievedTimer.start(); } else @@ -304,6 +318,13 @@ void FSAreaSearch::findObjects() return; } + LLViewerRegion* our_region = gAgent.getRegion(); + if (!our_region) + { + // Got disconnected or is in the middle of a teleport. + return; + } + LL_DEBUGS("FSAreaSearch_spammy") << "Doing a FSAreaSearch::findObjects" << LL_ENDL; mLastUpdateTimer.stop(); // stop sets getElapsedTimeF32() time to zero. @@ -313,7 +334,6 @@ void FSAreaSearch::findObjects() mRefresh = false; mSearchableObjects = 0; S32 object_count = gObjectList.getNumObjects(); - LLViewerRegion* our_region = gAgent.getRegion(); for (S32 i = 0; i < object_count; i++) { @@ -338,6 +358,7 @@ void FSAreaSearch::findObjects() FSObjectProperties& details = mObjectDetails[object_id]; details.id = object_id; details.local_id = objectp->getLocalID(); + details.region_handle = objectp->getRegion()->getHandle(); mRequestNeedsSent = true; mRequested++; } @@ -354,6 +375,7 @@ void FSAreaSearch::findObjects() // object came back into view details.request = FSObjectProperties::NEED; details.local_id = objectp->getLocalID(); + details.region_handle = objectp->getRegion()->getHandle(); mRequestNeedsSent = true; mRequested++; } @@ -396,15 +418,9 @@ void FSAreaSearch::findObjects() } bool FSAreaSearch::isSearchableObject(LLViewerObject* objectp, LLViewerRegion* our_region) -{ - //TODO: add child prim support - if (!(objectp->isRoot() || (objectp->isAttachment() && objectp->isRootEdit()))) - { - return false; - } - - //TODO: add mult-region support - if (!(objectp->getRegion() == our_region)) +{ + // need to be connected to regine object is in. + if (!objectp->getRegion()) { return false; } @@ -431,6 +447,16 @@ bool FSAreaSearch::isSearchableObject(LLViewerObject* objectp, LLViewerRegion* o // Excludes //----------------------------------------------------------------------- + if (mExcludeChildPrims && !(objectp->isRoot() || (objectp->isAttachment() && objectp->isRootEdit()))) + { + return false; + } + + if (mExcludeNeighborRegines && !(objectp->getRegion() == our_region)) + { + return false; + } + if (mExcludeAttachment && objectp->isAttachment()) { return false; @@ -477,9 +503,10 @@ void FSAreaSearch::processRequestQueue() failed_count++; } } - - mOutstandingRequests = 0; + + mRegionRequests.clear(); mLastProptiesRecievedTimer.start(); + if (!mRequestNeedsSent) { LL_DEBUGS("FSAreaSearch") << "No pending requests found."<< LL_ENDL; @@ -496,46 +523,60 @@ void FSAreaSearch::processRequestQueue() { return; } + mRequestNeedsSent = false; - if (mOutstandingRequests > (MAX_OBJECTS_PER_PACKET + 128)) + for (LLWorld::region_list_t::const_iterator iter = LLWorld::getInstance()->getRegionList().begin(); + iter != LLWorld::getInstance()->getRegionList().end(); ++iter) { - return; - } - - std::vector request_list; - - for (std::map::iterator object_it = mObjectDetails.begin(); - object_it != mObjectDetails.end(); - ++object_it) - { - if (object_it->second.request == FSObjectProperties::NEED) + LLViewerRegion* regionp = *iter; + U64 region_handle = regionp->getHandle(); + if (mRegionRequests[region_handle] > (MAX_OBJECTS_PER_PACKET + 128)) { - request_list.push_back(object_it->second.local_id); - object_it->second.request = FSObjectProperties::SENT; - mOutstandingRequests++; - if (mOutstandingRequests >= ((MAX_OBJECTS_PER_PACKET * 3) - 3)) + mRequestNeedsSent = true; + return; + } + + std::vector request_list; + bool need_continue = false; + + for (std::map::iterator object_it = mObjectDetails.begin(); + object_it != mObjectDetails.end(); + ++object_it) + { + if (object_it->second.request == FSObjectProperties::NEED && object_it->second.region_handle == region_handle) { - requestObjectProperties(request_list, true); - requestObjectProperties(request_list, false); - return; + request_list.push_back(object_it->second.local_id); + object_it->second.request = FSObjectProperties::SENT; + mRegionRequests[region_handle]++; + if (mRegionRequests[region_handle] >= ((MAX_OBJECTS_PER_PACKET * 3) - 3)) + { + requestObjectProperties(request_list, true, regionp); + requestObjectProperties(request_list, false, regionp); + mRequestNeedsSent = true; + need_continue = true; + break; + } } } - } - if (!request_list.empty()) - { - requestObjectProperties(request_list, true); - requestObjectProperties(request_list, false); + if (need_continue) + { + continue; + } + + if (!request_list.empty()) + { + requestObjectProperties(request_list, true, regionp); + requestObjectProperties(request_list, false, regionp); + } } - mRequestNeedsSent = false; } -void FSAreaSearch::requestObjectProperties(const std::vector& request_list, bool select) +void FSAreaSearch::requestObjectProperties(const std::vector& request_list, bool select, LLViewerRegion* regionp) { bool start_new_message = true; S32 select_count = 0; LLMessageSystem* msg = gMessageSystem; - LLViewerRegion* regionp = gAgent.getRegion(); for (std::vector::const_iterator iter = request_list.begin(); iter != request_list.end(); ++iter) @@ -564,7 +605,7 @@ void FSAreaSearch::requestObjectProperties(const std::vector& request_list, if(msg->isSendFull(NULL) || select_count >= MAX_OBJECTS_PER_PACKET) { LL_DEBUGS("FSAreaSearch") << "Sent one full " << (select ? "ObjectSelect" : "ObjectDeselect") << " message with " << select_count << " object data blocks." << LL_ENDL; - msg->sendReliable(regionp->getHost() ); + msg->sendReliable(regionp->getHost()); select_count = 0; start_new_message = true; } @@ -573,7 +614,7 @@ void FSAreaSearch::requestObjectProperties(const std::vector& request_list, if (!start_new_message) { LL_DEBUGS("FSAreaSearch") << "Sent one partcial " << (select ? "ObjectSelect" : "ObjectDeselect") << " message with " << select_count << " object data blocks." << LL_ENDL; - msg->sendReliable(regionp->getHost() ); + msg->sendReliable(regionp->getHost()); } } @@ -626,7 +667,7 @@ void FSAreaSearch::processObjectProperties(LLMessageSystem* msg) { mRequested--; } - mOutstandingRequests--; + mRegionRequests[details.region_handle]--; counter_text_update = true; } @@ -1687,6 +1728,14 @@ BOOL FSPanelAreaSearchFilter::postBuild() mCheckboxExcludeTempary->set(TRUE); mCheckboxExcludeTempary->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this)); + mCheckboxExcludeChildPrim = getChild("exclude_childprim"); + mCheckboxExcludeChildPrim->set(TRUE); + mCheckboxExcludeChildPrim->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this)); + + mCheckboxExcludeNeighborRegines = getChild("exclude_neighbor_regine"); + mCheckboxExcludeNeighborRegines->set(TRUE); + mCheckboxExcludeNeighborRegines->setCommitCallback(boost::bind(&FSPanelAreaSearchFilter::onCommitCheckbox, this)); + mButtonApply = getChild("apply"); mButtonApply->setClickedCallback(boost::bind(&FSAreaSearch::onButtonClickedSearch, mFSAreaSearch)); @@ -1758,6 +1807,10 @@ void FSPanelAreaSearchFilter::onCommitCheckbox() mFSAreaSearch->setExcludeAttachment(false); } mFSAreaSearch->setFilterAttachment(mCheckboxAttachment->get()); + + mFSAreaSearch->setExcludeChildPrims(mCheckboxExcludeChildPrim->get()); + + mFSAreaSearch->setExcludeNeighborRegines(mCheckboxExcludeNeighborRegines->get()); } void FSPanelAreaSearchFilter::onCommitSpin() diff --git a/indra/newview/fsareasearch.h b/indra/newview/fsareasearch.h index a7cfda109d..f45527532d 100644 --- a/indra/newview/fsareasearch.h +++ b/indra/newview/fsareasearch.h @@ -80,6 +80,7 @@ struct FSObjectProperties uuid_vec_t texture_ids; bool name_requested; U32 local_id; + U64 region_handle; typedef enum e_object_properties_request { @@ -143,6 +144,8 @@ public: void setExcludeAttachment(bool b) { mExcludeAttachment = b; } void setExcludeTempary(bool b) { mExcludeTempary = b; } void setExcludePhysics(bool b) { mExcludePhysics = b; } + void setExcludeChildPrims(bool b) { mExcludeChildPrims = b; } + void setExcludeNeighborRegines(bool b) { mExcludeNeighborRegines = b; } void setFilterForSaleMin(S32 s) { mFilterForSaleMin = s; } void setFilterForSaleMax(S32 s) { mFilterForSaleMax = s; } @@ -161,9 +164,11 @@ public: void setColumnGroup(bool b) { mColumnGroup = b; } void setColumnCreator(bool b) { mColumnCreator = b; } void setColumnLastOwner(bool b) { mColumnLastOwner = b; } + + bool isActive() { return mActive; } private: - void requestObjectProperties(const std::vector& request_list, bool select); + void requestObjectProperties(const std::vector< U32 >& request_list, bool select, LLViewerRegion* regionp); void matchObject(FSObjectProperties& details, LLViewerObject* objectp); void getNameFromUUID(LLUUID& id, std::string& name, BOOL group, bool& name_requested); @@ -178,7 +183,7 @@ private: bool mActive; bool mRequestQueuePause; bool mRequestNeedsSent; - S32 mOutstandingRequests; + std::map mRegionRequests; std::string mSearchName; std::string mSearchDescription; @@ -225,6 +230,8 @@ private: bool mExcludeAttachment; bool mExcludeTempary; bool mExcludePhysics; + bool mExcludeChildPrims; + bool mExcludeNeighborRegines; bool mFilterLocked; bool mFilterPhysicial; @@ -377,6 +384,8 @@ private: LLCheckBoxCtrl* mCheckboxExcludeAttachment; LLCheckBoxCtrl* mCheckboxExcludePhysics; LLCheckBoxCtrl* mCheckboxExcludeTempary; + LLCheckBoxCtrl* mCheckboxExcludeChildPrim; + LLCheckBoxCtrl* mCheckboxExcludeNeighborRegines; }; diff --git a/indra/newview/gpu_table.txt b/indra/newview/gpu_table.txt index 1fe9c7de6f..ec68a2c035 100644 --- a/indra/newview/gpu_table.txt +++ b/indra/newview/gpu_table.txt @@ -20,12 +20,12 @@ // // // Class Numbers: -// 0 - Defaults to low graphics settings. No shaders on by default -// 1 - Defaults to mid graphics settings. Basic shaders on by default -// 2 - Defaults to high graphics settings. Atmospherics on by default. -// 3 - Same as 2, but with lighting and shadows enabled. -// 4 - Same as 3, but with ambient occlusion enabled. -// 5 - Same as 4, but with shadows set to "Sun/Moon+Projectors." +// 0 - Defaults to low graphics settings. No shaders on by default +// 1 - Defaults to low-mid graphics settings. Basic shaders on by default +// 2 - Defaults to mid graphics settings. Atmospherics on by default +// 3 - Defaults to mid-high graphics settings. Advanced Lighting Model on by default +// 4 - Defaults to high graphics settings. Ambient Occlusion on by default +// 5 - Defaults to high-ultra graphics settings. Shadows set to "Sun/Moon+Projectors." // // Supported Number: // 0 - We claim to not support this card. @@ -103,18 +103,6 @@ ATI M56 .*ATI.*M56.* 1 1 0 0 ATI M71 .*ATI.*M71.* 1 1 0 0 ATI M72 .*ATI.*M72.* 1 1 0 0 ATI M76 .*ATI.*M76.* 3 1 0 0 -ATI Radeon HD 64xx .*ATI.*AMD Radeon.* HD [67]4..[MG] 2 1 1 4.2 -ATI Radeon HD 65xx .*ATI.*AMD Radeon.* HD [67]5..[MG] 2 1 1 4.2 -ATI Radeon HD 66xx .*ATI.*AMD Radeon.* HD [67]6..[MG] 3 1 1 4.2 -ATI Radeon HD 7100 .*ATI.*AMD Radeon.* HD 71.* 2 1 0 0 -ATI Radeon HD 7200 .*ATI.*AMD Radeon.* HD 72.* 2 1 0 0 -ATI Radeon HD 7300 .*ATI.*AMD Radeon.* HD 73.* 2 1 0 4.2 -ATI Radeon HD 7400 .*ATI.*AMD Radeon.* HD 74.* 2 1 0 4.2 -ATI Radeon HD 7500 .*ATI.*AMD Radeon.* HD 75.* 3 1 1 4.2 -ATI Radeon HD 7600 .*ATI.*AMD Radeon.* HD 76.* 3 1 0 4.2 -ATI Radeon HD 7700 .*ATI.*AMD Radeon.* HD 77.* 4 1 1 4.2 -ATI Radeon HD 7800 .*ATI.*AMD Radeon.* HD 78.* 5 1 1 4.2 -ATI Radeon HD 7900 .*ATI.*AMD Radeon.* HD 79.* 5 1 1 4.2 ATI ASUS HD7100 .*ATI.*ASUS.* HD71.* 2 1 0 0 ATI ASUS HD7200 .*ATI.*ASUS.* HD72.* 2 1 0 0 ATI ASUS HD7300 .*ATI.*ASUS.* HD73.* 2 1 0 0 @@ -124,6 +112,8 @@ ATI ASUS HD7600 .*ATI.*ASUS.* HD76.* 3 1 0 0 ATI ASUS HD7700 .*ATI.*ASUS.* HD77.* 4 1 1 4.2 ATI ASUS HD7800 .*ATI.*ASUS.* HD78.* 5 1 1 4.2 ATI ASUS HD7900 .*ATI.*ASUS.* HD79.* 5 1 1 4.2 +ATI ASUS EAH5400 .*ATI.*ASUS EAH54.. 3 1 1 4.2 +ATI ASUS EAH5500 .*ATI.*ASUS EAH55.. 3 1 1 4.2 ATI Mobility Radeon 4100 .*ATI.*Mobility.*41.. 1 1 1 3.3 ATI Mobility Radeon 7xxx .*ATI.*Mobility.*Radeon 7.* 0 1 1 1.3 ATI Mobility Radeon 8xxx .*ATI.*Mobility.*Radeon 8.* 0 1 0 0 @@ -157,52 +147,82 @@ ATI Mobility Radeon HD 5400 .*ATI.*Mobility.*HD *54.* 2 1 1 4.2 ATI Mobility Radeon HD 5500 .*ATI.*Mobility.*HD *55.* 3 1 0 0 ATI Mobility Radeon HD 5600 .*ATI.*Mobility.*HD *56.* 3 1 1 4.2 ATI Mobility Radeon HD 5700 .*ATI.*Mobility.*HD *57.* 3 1 1 4.1 -ATI Mobility Radeon HD 6200 .*ATI.*Mobility.*HD *62.* 3 1 0 0 -ATI Mobility Radeon HD 6300 .*ATI.*Mobility.*HD *63.* 3 1 1 4.2 -ATI Mobility Radeon HD 6400M .*ATI.*Mobility.*HD *64.* 3 1 0 0 -ATI Mobility Radeon HD 6500M .*ATI.*Mobility.*HD *65.* 5 1 1 4.2 -ATI Mobility Radeon HD 6600M .*ATI.*Mobility.*HD *66.* 5 1 0 0 -ATI Mobility Radeon HD 6700M .*ATI.*Mobility.*HD *67.* 5 1 0 0 -ATI Mobility Radeon HD 6800M .*ATI.*Mobility.*HD *68.* 5 1 0 0 -ATI Mobility Radeon HD 6900M .*ATI.*Mobility.*HD *69.* 5 1 0 0 -ATI Radeon HD 2300 .*ATI.*Radeon HD *23.. 0 1 1 3.3 -ATI Radeon HD 2400 .*ATI.*Radeon HD *24.. 1 1 1 4 -ATI Radeon HD 2600 .*ATI.*Radeon HD *26.. 2 1 1 3.3 -ATI Radeon HD 2900 .*ATI.*Radeon HD *29.. 3 1 1 3.3 -ATI Radeon HD 3000 .*ATI.*Radeon HD *30.. 0 1 0 0 -ATI Radeon HD 3100 .*ATI.*Radeon HD *31.. 1 1 0 0 -ATI Radeon HD 3200 .*ATI.*Radeon HD *32.. 1 1 1 4 -ATI Radeon HD 3300 .*ATI.*Radeon HD *33.. 1 1 1 3.3 -ATI Radeon HD 3400 .*ATI.*Radeon HD *34.. 1 1 1 4 -ATI Radeon HD 3500 .*ATI.*Radeon HD *35.. 2 1 0 0 -ATI Radeon HD 3600 .*ATI.*Radeon HD *36.. 3 1 1 3.3 -ATI Radeon HD 3700 .*ATI.*Radeon HD *37.. 3 1 0 0 +ATI Radeon HD 6200M .*ATI.*Radeon.*HD *62..[DGM].* 3 1 0 0 +ATI Radeon HD 6300M .*ATI.*Radeon.*HD *63..[DGM].* 3 1 1 4.2 +ATI Radeon HD 6400M .*ATI.*Radeon.*HD *64..[DGM].* 3 1 0 0 +ATI Radeon HD 6500M .*ATI.*Radeon.*HD *65..[DGM].* 4 1 1 4.2 +ATI Radeon HD 6600M .*ATI.*Radeon.*HD *66..[DGM].* 4 1 0 0 +ATI Radeon HD 6700M .*ATI.*Radeon.*HD *67..[DGM].* 4 1 0 0 +ATI Radeon HD 6800M .*ATI.*Radeon.*HD *68..[DGM].* 4 1 0 0 +ATI Radeon HD 6900M .*ATI.*Radeon.*HD *69..[DGM].* 4 1 0 0 +ATI Radeon HD 7200M .*ATI.*Radeon.*HD *72..[DGM].* 3 1 0 0 +ATI Radeon HD 7300M .*ATI.*Radeon.*HD *73..[DGM].* 3 1 0 0 +ATI Radeon HD 7400M .*ATI.*Radeon.*HD *74..[DGM].* 3 1 0 0 +ATI Radeon HD 7500M .*ATI.*Radeon.*HD *75..[DGM].* 4 1 0 0 +ATI Radeon HD 7600M .*ATI.*Radeon.*HD *76..[DGM].* 4 1 0 0 +ATI Radeon HD 7700M .*ATI.*Radeon.*HD *77..[DGM].* 4 1 0 0 +ATI Radeon HD 7800M .*ATI.*Radeon.*HD *78..[DGM].* 4 1 0 0 +ATI Radeon HD 7900M .*ATI.*Radeon.*HD *79..[DGM].* 4 1 0 0 +ATI Radeon HD 8200M .*ATI.*Radeon.*HD *82..[DGM].* 3 1 0 0 +ATI Radeon HD 8300M .*ATI.*Radeon.*HD *83..[DGM].* 3 1 0 0 +ATI Radeon HD 8400M .*ATI.*Radeon.*HD *84..[DGM].* 4 1 0 0 +ATI Radeon HD 8500M .*ATI.*Radeon.*HD *85..[DGM].* 4 1 0 0 +ATI Radeon HD 8600M .*ATI.*Radeon.*HD *86..[DGM].* 4 1 0 0 +ATI Radeon HD 8700M .*ATI.*Radeon.*HD *87..[DGM].* 4 1 0 0 +ATI Radeon HD 8800M .*ATI.*Radeon.*HD *88..[DGM].* 4 1 0 0 +ATI Radeon HD 8900M .*ATI.*Radeon.*HD *89..[DGM].* 4 1 0 0 +ATI Radeon HD 2300 .*ATI.*Radeon HD *23.* 0 1 1 3.3 +ATI Radeon HD 2400 .*ATI.*Radeon HD *24.* 1 1 1 4 +ATI Radeon HD 2600 .*ATI.*Radeon HD *26.* 2 1 1 3.3 +ATI Radeon HD 2900 .*ATI.*Radeon HD *29.* 3 1 1 3.3 +ATI Radeon HD 3000 .*ATI.*Radeon HD *30.* 0 1 0 0 +ATI Radeon HD 3100 .*ATI.*Radeon HD *31.* 1 1 0 0 +ATI Radeon HD 3200 .*ATI.*Radeon HD *32.* 1 1 1 4 +ATI Radeon HD 3300 .*ATI.*Radeon HD *33.* 1 1 1 3.3 +ATI Radeon HD 3400 .*ATI.*Radeon HD *34.* 1 1 1 4 +ATI Radeon HD 3500 .*ATI.*Radeon HD *35.* 2 1 0 0 +ATI Radeon HD 3600 .*ATI.*Radeon HD *36.* 3 1 1 3.3 +ATI Radeon HD 3700 .*ATI.*Radeon HD *37.* 3 1 0 0 ATI HD3700 .*ATI.* HD37.. 3 1 0 3.3 -ATI Radeon HD 3800 .*ATI.*Radeon HD *38.. 3 1 1 4 -ATI Radeon HD 4100 .*ATI.*Radeon HD *41.. 1 1 0 0 -ATI Radeon HD 4200 .*ATI.*Radeon HD *42.. 1 1 1 4 -ATI Radeon HD 4300 .*ATI.*Radeon HD *43.. 2 1 1 4 -ATI Radeon HD 4400 .*ATI.*Radeon HD *44.. 2 1 0 0 -ATI Radeon HD 4500 .*ATI.*Radeon HD *45.. 2 1 1 3.3 -ATI Radeon HD 4600 .*ATI.*Radeon HD *46.. 3 1 1 4 -ATI Radeon HD 4700 .*ATI.*Radeon HD *47.. 3 1 1 3.3 -ATI Radeon HD 4800 .*ATI.*Radeon HD *48.. 3 1 1 4 -ATI ASUS EAH5400 .*ATI.*ASUS EAH54.. 3 1 1 4.2 -ATI Radeon HD 5400 .*ATI.*Radeon HD *54.. 3 1 1 4.2 -ATI Radeon HD 5500 .*ATI.*Radeon HD *55.. 3 1 1 4.2 -ATI ASUS EAH5500 .*ATI.*ASUS EAH55.. 3 1 1 4.2 -ATI Radeon HD 5600 .*ATI.*Radeon HD *56.. 3 1 1 4.2 -ATI Radeon HD 5700 .*ATI.*Radeon HD *57.. 3 1 1 4.2 -ATI Radeon HD 5800 .*ATI.*Radeon HD *58.. 4 1 1 4.2 -ATI Radeon HD 5900 .*ATI.*Radeon HD *59.. 4 1 1 4.2 -ATI Radeon HD 6200 .*ATI.*Radeon HD *62.. 0 1 1 4.2 -ATI Radeon HD 6300 .*ATI.*Radeon HD *63.. 1 1 1 4.2 -ATI Radeon HD 6400 .*ATI.*Radeon HD *64.. 3 1 1 4.2 -ATI Radeon HD 6500 .*ATI.*Radeon HD *65.. 3 1 1 4.2 -ATI Radeon HD 6600 .*ATI.*Radeon HD *66.. 3 1 1 4.2 -ATI Radeon HD 6700 .*ATI.*Radeon HD *67.. 3 1 1 4.2 -ATI Radeon HD 6800 .*ATI.*Radeon HD *68.. 4 1 1 4.2 -ATI Radeon HD 6900 .*ATI.*Radeon HD *69.. 5 1 1 4.2 +ATI Radeon HD 3800 .*ATI.*Radeon HD *38.* 3 1 1 4 +ATI Radeon HD 4100 .*ATI.*Radeon HD *41.* 1 1 0 0 +ATI Radeon HD 4200 .*ATI.*Radeon HD *42.* 1 1 1 4 +ATI Radeon HD 4300 .*ATI.*Radeon HD *43.* 2 1 1 4 +ATI Radeon HD 4400 .*ATI.*Radeon HD *44.* 2 1 0 0 +ATI Radeon HD 4500 .*ATI.*Radeon HD *45.* 2 1 1 3.3 +ATI Radeon HD 4600 .*ATI.*Radeon HD *46.* 3 1 1 4 +ATI Radeon HD 4700 .*ATI.*Radeon HD *47.* 3 1 1 3.3 +ATI Radeon HD 4800 .*ATI.*Radeon HD *48.* 3 1 1 4 +ATI Radeon HD 5400 .*ATI.*Radeon HD *54.* 3 1 1 4.2 +ATI Radeon HD 5500 .*ATI.*Radeon HD *55.* 3 1 1 4.2 +ATI Radeon HD 5600 .*ATI.*Radeon HD *56.* 3 1 1 4.2 +ATI Radeon HD 5700 .*ATI.*Radeon HD *57.* 3 1 1 4.2 +ATI Radeon HD 5800 .*ATI.*Radeon HD *58.* 4 1 1 4.2 +ATI Radeon HD 5900 .*ATI.*Radeon HD *59.* 4 1 1 4.2 +ATI Radeon HD 6200 .*ATI.*Radeon HD *62.* 0 1 1 4.2 +ATI Radeon HD 6300 .*ATI.*Radeon HD *63.* 1 1 1 4.2 +ATI Radeon HD 6400 .*ATI.*Radeon HD *64.* 3 1 1 4.2 +ATI Radeon HD 6500 .*ATI.*Radeon HD *65.* 3 1 1 4.2 +ATI Radeon HD 6600 .*ATI.*Radeon HD *66.* 3 1 1 4.2 +ATI Radeon HD 6700 .*ATI.*Radeon HD *67.* 3 1 1 4.2 +ATI Radeon HD 6800 .*ATI.*Radeon HD *68.* 4 1 1 4.2 +ATI Radeon HD 6900 .*ATI.*Radeon HD *69.* 5 1 1 4.2 +ATI Radeon HD 7100 .*ATI.*Radeon HD *71.* 2 1 0 0 +ATI Radeon HD 7200 .*ATI.*Radeon HD *72.* 2 1 0 0 +ATI Radeon HD 7300 .*ATI.*Radeon HD *73.* 2 1 0 4.2 +ATI Radeon HD 7400 .*ATI.*Radeon HD *74.* 2 1 0 4.2 +ATI Radeon HD 7500 .*ATI.*Radeon HD *75.* 3 1 1 4.2 +ATI Radeon HD 7600 .*ATI.*Radeon HD *76.* 3 1 0 4.2 +ATI Radeon HD 7700 .*ATI.*Radeon HD *77.* 4 1 1 4.2 +ATI Radeon HD 7800 .*ATI.*Radeon HD *78.* 5 1 1 4.2 +ATI Radeon HD 7900 .*ATI.*Radeon HD *79.* 5 1 1 4.2 +ATI Radeon HD 8300 (OEM) .*ATI.*Radeon HD *83.* 2 1 0 4.2 +ATI Radeon HD 8400 (OEM) .*ATI.*Radeon HD *84.* 2 1 0 4.2 +ATI Radeon HD 8500 (OEM) .*ATI.*Radeon HD *85.* 3 1 1 4.2 +ATI Radeon HD 8600 (OEM) .*ATI.*Radeon HD *86.* 3 1 0 4.2 +ATI Radeon HD 8700 (OEM) .*ATI.*Radeon HD *87.* 4 1 1 4.2 +ATI Radeon HD 8800 (OEM) .*ATI.*Radeon HD *88.* 5 1 1 4.2 +ATI Radeon HD 8900 (OEM) .*ATI.*Radeon HD *89.* 5 1 1 4.2 ATI Radeon OpenGL .*ATI.*Radeon OpenGL.* 0 0 0 0 ATI Radeon 2100 .*ATI.*Radeon 21.. 0 1 1 2.1 ATI Radeon 3000 .*ATI.*Radeon 30.. 1 1 1 4 diff --git a/indra/newview/llpreviewtexture.cpp b/indra/newview/llpreviewtexture.cpp index 1444ff1b2f..18647e4ea8 100644 --- a/indra/newview/llpreviewtexture.cpp +++ b/indra/newview/llpreviewtexture.cpp @@ -788,6 +788,13 @@ void LLPreviewTexture::onButtonClickUUID() std::string uuid = mImageID.asString(); LLClipboard::instance().copyToClipboard(utf8str_to_wstring(uuid), 0, uuid.size()); } + +/* static */ +void LLPreviewTexture::onTextureLoaded(BOOL success, LLViewerFetchedTexture* src_vi, LLImageRaw* src, LLImageRaw* aux_src, S32 discard_level, BOOL final, void* userdata) +{ + LLPreviewTexture* self = (LLPreviewTexture*)userdata; + self->mUpdateDimensions = TRUE; +} // texture comment decoder // Return true if everything went fine, false if we somewhat modified the ratio as we bumped on border values @@ -840,6 +847,9 @@ void LLPreviewTexture::loadAsset() mImageOldBoostLevel = mImage->getBoostLevel(); mImage->setBoostLevel(LLGLTexture::BOOST_PREVIEW); mImage->forceToSaveRawImage(0) ; + // texture comment decoder + mImage->setLoadedCallback(LLPreviewTexture::onTextureLoaded, 0, TRUE, FALSE, this, NULL); + // mAssetStatus = PREVIEW_ASSET_LOADING; mUpdateDimensions = TRUE; updateDimensions(); diff --git a/indra/newview/llpreviewtexture.h b/indra/newview/llpreviewtexture.h index d96af975d4..183a56f4ee 100644 --- a/indra/newview/llpreviewtexture.h +++ b/indra/newview/llpreviewtexture.h @@ -89,6 +89,7 @@ public: void callbackLoadName(const LLUUID& agent_id, const LLAvatarName& av_name); void onButtonClickProfile(); void onButtonClickUUID(); + static void onTextureLoaded(BOOL success, LLViewerFetchedTexture *src_vi, LLImageRaw* src, LLImageRaw* aux_src, S32 discard_level, BOOL final, void* userdata); // protected: diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp index 2e7fd7dc5e..9fb62e223e 100644 --- a/indra/newview/llselectmgr.cpp +++ b/indra/newview/llselectmgr.cpp @@ -100,6 +100,7 @@ #include "llviewernetwork.h" #include "llworld.h" // Aurora Sim +#include "fsareasearch.h" #include "llglheaders.h" @@ -5113,7 +5114,15 @@ void LLSelectMgr::processObjectProperties(LLMessageSystem* msg, void** user_data if (!node) { + // area search + FSAreaSearch* area_search_floater = LLFloaterReg::getTypedInstance("area_search"); + if(!(area_search_floater && area_search_floater->isActive())) // Don't spam the log when areasearch is active. + { + // llwarns << "Couldn't find object " << id << " selected." << llendl; + // area search + } + // } else { diff --git a/indra/newview/skins/default/xui/de/floater_fs_area_search.xml b/indra/newview/skins/default/xui/de/floater_fs_area_search.xml index 94731db7a1..c2e5dc8c8d 100644 --- a/indra/newview/skins/default/xui/de/floater_fs_area_search.xml +++ b/indra/newview/skins/default/xui/de/floater_fs_area_search.xml @@ -81,6 +81,8 @@ + +