Commit Graph

172 Commits (8f892d0f36fda170a5cecf0aea89887d6d0e45ef)

Author SHA1 Message Date
Loren Shih 0bcfbde3a4 EXT-6536 : Make LLVOAvatarSelf a singleton
Lots of superficial cleanup, particularly around "if (" formatting.
Removed LLAgent as a friend of LLAgentCamera and refactored to use accessors.
2010-03-26 13:58:19 -04:00
Loren Shih 0a56031bd3 automated merge 2010-03-25 20:15:51 -04:00
Loren Shih 885fc3f9b5 EXT-6536 : Make LLVOAvatarSelf a singleton
Minor superficial cleanup to have all references to getAvatarObject use LLVOAvatarSelf *avatarp = gAgent.getAvatarObject()
2010-03-25 19:56:52 -04:00
Loren Shih 853d9e4453 EXT-6539 : Take out mAvatarObject from LLAgentWearables
Removed mAvatarObject / gAgentWearables.mAvatarObject since it's redundant with gAgent.mAvatarObject.
2010-03-25 17:27:50 -04:00
Loren Shih fc49539b36 EXT-2959 : Full out camera functions from llagent to llagentcamera
First check-in; only compiles, nothing more.
2010-03-23 15:59:52 -04:00
Tofu Linden e7d9999359 Merge from viewer-2-0 2010-03-23 14:08:11 +00:00
Brad Payne (Vir Linden) 2b4158c4a0 cleaning up dead code, comments 2010-03-19 15:38:23 -04:00
Nyx (Neal Orman) 6fc719813e EXT-6445 After copying an item, changes to new item affect old item
Since multiple inventory items can refer to the same asset ID, we needed to
revert changes to old_wearable (indexed by asset ID) after saving changes
made to a wearable to a new asset ID. This prevents user confusion around
unsaved changes.

Code reviewed by vir.
2010-03-19 11:15:46 -04:00
Loren Shih 896b88063e EXT-6252 : "Duplicate items (not links) in inventory are both displayed in bold as (worn) when only one is actually worn"
Simple special-case fix for this specific issue, although I added a comment to llwearablelist.h that eventually the whole LLWearableList class will need some redesign.
Core issue is that you can have multiple itemIDs pointing to the same assetID and LLWearableList doesn't account for this possibility during lookup-wearable-by-assetID operations.
2010-03-17 17:55:12 -04:00
Tofu Linden 3bb628ff73 merge from viewer-2-0 2010-03-16 17:39:32 +00:00
Nyx (Neal Orman) 8112ba5baf EXT-6010 Appearance reverts to an old outfit while attempting to wear new outfit
Added code to suppress local composite updates while wearables are loaded. This
makes sure that we don't update your appearance until all your wearables are
added to gAgentWearables. Hackish for 2.0, but will be inherently better for 2.1

code reviewed by vir.
2010-03-15 12:08:57 -04:00
Nyx (Neal Orman) 51010803df First draft of changes for avatar outfit panel, so PE can start working on it.
Demo code, will get cleaned up / extended through future work on the project - just need to check it in to collaborate.
2010-03-10 16:38:00 -05:00
Loren Shih 6ebc1d8858 EXT-5547 : Autopopulation broken due to new web deploy accounts
EXT-5673 : Autopopulation: Created outfits copy subfolder contents as well as immediate folder contents
EXT-5632 : Autopopulation is including subfolders even if those aren't outfits
DEV-46683 : Post-Deployment Cleanup

This is a series of changes to fix autopopulation behavior that was broken due to the new surprise web avatar deploy.  That deploy surfaced a number of serious issues with the original AP code.  I did not write this code and the person who did is no longer here, so I've done my best to fix those issues up.
This is a fairly comprehensive set of changes, but it's necessary given the poor state of the pre-existing code and how many problems it caused the new web avatar deploy.

This new version of the AP code will:
(1) Look for a Library->Clothing->Initial Outfits folder and use that if it exists
(2) Not create outfits out of folders that aren't complete outfits
(3) No longer string match against "More Outfits" in order to ignore outfits
(4) No longer recursively collect folder contents when creating an outfit (i.e. will only look at direct descendents)
2010-03-02 19:56:28 -05:00
Brad Payne (Vir Linden) 8e5d95cba8 For EXT-5333: Bodyparts missing from appearance and COF. createStandardWearables() now COF-based 2010-02-25 10:59:59 -05:00
Brad Payne (Vir Linden) 00fdc0acd5 Work in progress on EXT-5333: Cleanup. 2010-02-22 14:03:29 -05:00
Brad Payne (Vir Linden) 284eb11a10 Work in progress on EXT-5333: Bodyparts missing from appearance and COF 2010-02-18 16:10:35 -05:00
Brad Payne (Vir Linden) 000106dd3f merge 2010-02-17 18:18:19 -05:00
Brad Payne (Vir Linden) 2aacee62ad Work in progress on EXT-5333: Bodyparts missing from appearance and COF 2010-02-17 18:17:48 -05:00
Nyx (Neal Orman) 587b8e737d EXT-5364 New users appear fully naked before resolving.
We were pushing off redrawing your local texture composite
while waiting for a baked texture cache response from the server.
If this happens when your textures come in, your avatar will de-cloud
but the composite will not update, resulting in nudity.

Changed the logic so we will re-generate a local composite even if
we have a pending baked texture query (we still suppress uploading the
composite until a response is received). Verified several times that this does
fix the issue. Will update the JIRA with reliable repro.

Q verified issue is worthy of a hotfix checkin

Code has been reviewed by vir, bigpapi, and seraph

This is necessary for new user experience. Patch should be contained enough to be low-risk. Contact Nyx if any further questions.
2010-02-17 11:50:13 -05:00
Brad Payne (Vir Linden) dc8a9dc57d merge 2010-02-12 13:46:21 -05:00
Brad Payne (Vir Linden) 1e76fc2b1f Log spam cleanup 2010-02-12 13:44:32 -05:00
Brad Payne (Vir Linden) a3d8338cdc For EXT-5259: Major regression in load time for new users from 1.23 to 2.0. Moved autopopulate to after avatar appearance resolves 2010-02-12 13:12:26 -05:00
Tofu Linden 21e86251c0 CID-218
Checker: REVERSE_INULL
Function: LLAgentWearables::setWearableOutfit(const LLDynamicArray<LLPointer<LLInventoryItem>, (int)32> &, LLDynamicArray<LLWearable *, (int)32>&, int)
File: /indra/newview/llagentwearables.cpp
2010-02-12 17:51:23 +00:00
Tofu Linden 290a5846fc CID-218
Checker: REVERSE_INULL
Function: LLAgentWearables::setWearableOutfit(const LLDynamicArray<LLPointer<LLInventoryItem>, (int)32> &, LLDynamicArray<LLWearable *, (int)32>&, int)
File: /indra/newview/llagentwearables.cpp
2010-02-12 17:49:55 +00:00
Nyx (Neal Orman) 0459dd1e39 EXT-5343 appearance editor "save as" does not affect Current outfit
changed logic of the save as button to copy a link from the newly created
inventory item to the current outfit folder. This makes your changes
persist on relog.

Reviewed by Vir.
2010-02-11 15:22:38 -05:00
Tofu Linden a1e2ce7fa2 CID-153
Checker: NULL_RETURNS
Function: LLAgentWearables::makeNewOutfit(const std::basic_string<char, std::char_traits<char>, std::allocator<char>>&, const LLDynamicArray<int, (int)32> &, const LLDynamicArray<int, (int)32> &, int)
File: /indra/newview/llagentwearables.cpp
2010-02-11 14:21:59 +00:00
Tofu Linden 612df63956 CID-97
Checker: FORWARD_NULL
Function: LLAgentWearables::setWearableOutfit(const LLDynamicArray<LLPointer<LLInventoryItem>, (int)32> &, LLDynamicArray<LLWearable *, (int)32>&, int)
File: /indra/newview/llagentwearables.cpp
2010-02-10 17:33:28 +00:00
Tofu Linden d398131bd7 CID-96 2010-02-10 17:31:51 +00:00
Brad Payne (Vir Linden) 5dda2516ad merge 2010-02-08 09:50:04 -05:00
Brad Payne (Vir Linden) d8f0bc021f For EXT-4919: Initial gesture setup is wrong for new users. Checkpointing work in progress. 2010-02-05 16:37:23 -05:00
Nyx (Neal Orman) 20c49c7848 Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2010-02-04 15:56:46 -05:00
Eric M. Tulla (BigPapi) b3f4c6fb7a EXT-4841 - Expand one of the outfits in the outfits tab for new users so they can get a sense of their contents.
Also moved the My Outfits autopopulation from the library out of where it was done before (as a result of
initial wearables message) to be done in the idle login during the precaching state.
-Reviewed by Nyx
2010-02-04 15:52:07 -05:00
Nyx (Neal Orman) 303b84c533 Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2010-02-04 14:53:39 -05:00
Nyx (Neal Orman) b4d61b6e63 EXT-4003 Appearance problemw earing City Chic Female - probably param related
cross-wearable params are fun! Values were not being updated properly for
parameters that cross multiple wearables. Created a few functions to ensure
that these values get updated and made them called from
LLAgentWearables::wearableUpdated().

Also prevented cross-wearable params from writing back to the avatar, as they
are being driven by another wearable.

Code reviewed by Bigpapi
2010-02-04 14:53:18 -05:00
Eric M. Tulla (BigPapi) 9df8583ea8 Moss rocks! Thanks for noticeing the paste error that resulted in a double \'\!\' bool op. 2010-02-03 14:01:36 -05:00
Eric M. Tulla (BigPapi) 594b1ac679 EXT-4868: Callback was getting triggered at shutdown, leading to crash. Now test isExiting() first.
-Reviewed by vir
2010-02-03 11:42:03 -05:00
Tofu Linden 7dc1e2eedb CID-195
Checker: RESOURCE_LEAK
Function: LLAgentWearables::addLocalTextureObject(EWearableType, LLVOAvatarDefines::ETextureIndex, unsigned int)
File: /indra/newview/llagentwearables.cpp
2010-01-27 15:04:12 -08:00
Tofu Linden f8f34c14c4 follow-up fix to leak fix. 2010-01-27 14:45:44 -08:00
Tofu Linden f257f26746 CID 201
Checker: RESOURCE_LEAK
Function: LLInitialWearablesFetch::processWearablesMessage()
File: /indra/newview/llagentwearables.cpp
2010-01-27 14:27:57 -08:00
Nyx (Neal Orman) b0b6890373 EXT-4253 "unsaved" detection seems buggy
Corrected bug where saving an outfit wouldn't update the "unsaved" marker on
the UI. Also switched the UI to use a popup dialog to request the name of
the outfit being made, as we could not convey everything we needed to on the
button alone.

Code reviewed by Vir
2010-01-15 14:57:00 -05:00
Eric M. Tulla (BigPapi) 6d27a9e28d EXT-4038: Typo fix & proper handling of autopopulation if library clothing already imported
-Reviewed by vir
2010-01-08 19:28:23 -05:00
Eric M. Tulla (BigPapi) 9f401893c0 Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2010-01-08 18:21:52 -05:00
Eric M. Tulla (BigPapi) c9542b5d05 EXT-4038: Autopopulating My Outfits now happens correctly (creates links instead of folder copies).
-Reviewed by Seraph
2010-01-08 18:21:08 -05:00
Nyx (Neal Orman) cdb6f67f71 EXT-3958 title needs to update appropriately when changes made to outfit
We now show a string "(unsaved)" under the appearance panel outfit title
when the currently loaded outfit has been modified from its original state.

Tested with following conditions:
1) item added to loaded outfit
2) item removed from loaded outfit
3) item replaced in loaded outfit

Appears to work properly on login as well. Checking is a manual folder compare,
but should be fairly efficient.

XUI changes submitted by Erica

Entire diff reviewed by Vir
2010-01-08 13:10:15 -05:00
Eric M. Tulla (BigPapi) d1f71f7727 EXT-3962: added "MyOutfitsAutofill" debug setting to force auto population. 2010-01-06 16:51:04 -05:00
Brad Payne (Vir Linden) 2b63486542 merge 2010-01-05 16:27:12 -05:00
Brad Payne (Vir Linden) 09326838c5 For EXT-3923: added additional warnings to catch corrupted wearables in inventory 2010-01-05 16:26:17 -05:00
Nyx (Neal Orman) 60959b39c6 EXT-3948 outfit title does not update on outfit creation
now on creating a new outfit we remove the old base folder link and replace it
with a link to the newly created outfit folder. Responsive UI FTW!

Code reviewed by Vir
2010-01-05 16:20:01 -05:00
Loren Shih 6703cbc8af EXT-3827 : Some accounts have no library outfits
EXT-3616 : My Outfits folders don't always auto-populate on first login
EXT-3796 : Sidepanel not picking up changes to "My Outfits" from autopopulation
EXT-3915 : Memory leak in autopopulation code

Largely rewrote the autopopulation code because it was buggy, was causing llwarns messages, and had a memory leak.  My approach to this should fix everything.
2010-01-04 13:44:48 -05:00
Eric M. Tulla (BigPapi) eef77735ce EXT-3616: Fix for my outfits autopopulation. Readding the fetch observer.
-Review by seraph
2009-12-31 19:03:41 -05:00
Loren Shih 65dfc74688 Minor comment change. 2009-12-21 17:46:46 -05:00
Loren Shih c26034531a EXT-3582 : My Outfits populates from library if I delete my last outfit
Autopopulation logic is now smarter and only triggers if this is the first time you're logging into viewer2.0.
2009-12-21 16:49:14 -05:00
Loren Shih 37b04c1507 EXT-3582 : My Outfits populates from library if I delete my last outfit
Tracking a "Is this my first time in viewer2.0?" flag and only populating My Outfits folder if it's true.
2009-12-21 14:54:55 -05:00
Loren Shih e0f5ce4ecf EXT-3582 : My Outfits populates from library if I delete my last outfit
Now checking if this is the first time a user has logged into viewer2.0, via checking against COF existence.

This doesn't quite work yet because something before LLAgentWearables is also looking up COF.
2009-12-18 15:18:40 -05: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
Loren Shih d629be01cb Automated merge avp->avp
--HG--
branch : avatar-pipeline
2009-12-02 12:16:24 -05:00
Loren Shih 8fdd2e0b28 EXT-3028 : "Find Original" does nothing if floater inventory isn't open
Changed logic for getActiveInventory so that it considers InventorySP.
Removed getActiveInventory and replaced with getActiveInventoryPanel since that follows its current usage.
This currently contains a bug because the InventorySP always thinks it's open.

--HG--
branch : avatar-pipeline
2009-12-01 21:12:34 -05:00
Nyx (Neal Orman) 5642d7d012 EXT-2749 Appearance editor still uses the name for items that have been renamed.
The name stored in an LLWearable object is not always in sync with the
LLInventoryItem name. Since we reference these by asset id, which does not
change when you rename something (only the LLInventoryItem changes).

Fixed by refreshing the name from the LLInventoryItem every time we wear the
object. If we are already wearing the object, the wearable's name is already
explicitly updated.

Code reviewed by Bigpapi

--HG--
branch : avatar-pipeline
2009-12-01 19:21:39 -05:00
Loren Shih 27351b8bf5 automated merge for viewer-2.0 -> avp.
--HG--
branch : avatar-pipeline
2009-12-01 12:52:21 -05:00
Nyx (Neal Orman) 4c90bcd574 Automated merge with ssh://hg.lindenlab.com/tulla/avatar-pipeline-2-0/
--HG--
branch : avatar-pipeline
2009-11-30 15:22:12 -05:00
Brad Payne (Vir Linden) 4899fea006 For EXT-2857: Open 'Outfits Bar' accordion when creating/renaming new outfit
--HG--
branch : avatar-pipeline
2009-11-30 11:58:28 -05:00
James Cook 957055396d merge in changes from viewer-2-0, manually fixed conflict in llviewermessages.cpp 2009-11-25 12:31:24 -08:00
Nyx (Neal Orman) 43d52671c8 EXT-2769 hair alpha not applied immediately
Apparently none of the texture pickers were invalidating the baked textures
causing selected textures to not appear on the avatar until you actually saved
the wearable. This patch forces the composites to update when you change any
texture or color (or invisibility flag).

Code reviewed by Seraph

--HG--
branch : avatar-pipeline
2009-11-25 13:59:23 -05:00
Brad Payne (Vir Linden) c60165a93c For EXT-2584: Select and rename new folder when creating new outfit
--HG--
branch : avatar-pipeline
2009-11-25 13:39:45 -05:00
James Cook cbc0783cd1 Created lightweight LLNotificationsUtil::add(), switched most alerts to use it
Cuts number of includes of llnotifications.h from 300+ to 40.
2009-11-25 01:15:50 -08:00
James Cook 0e351bedb6 Removed llnotifications.h from all headers by adding llnotificationsptr.h
Fixed many more includes
2009-11-24 22:55:56 -08:00
Nyx (Neal Orman) 4821134aa7 EXT-2671 avatar rebaking on every login
We were querying agent wearables (baked texture) cache before setting
mWearablesLoaded. First thing the function does is checks mWearablesLoaded.
Moving the call down to later in the function allows us to request & use
cached baked textures again.

Code reviewed by Seraph

--HG--
branch : avatar-pipeline
2009-11-24 15:34:31 -05:00
Nyx (Neal Orman) ef63c80766 EXT-2535 wearables created in 2.0 don't load in 1.23
Re-opening issue for a second pass at it. This pass updates the code that was
intended to make all loaded wearables auto-save themselves back to wearable
version 22 (from 24). Code was not being hit, so relocated it to after wearable
had been added to llagentwearables to ensure the save succeeded.

Will be post-reviewed before push.

--HG--
branch : avatar-pipeline
2009-11-23 11:46:15 -05:00
Brad Payne (Vir Linden) 3263a6cbad merge
--HG--
branch : avatar-pipeline
2009-11-20 10:01:06 -05:00
Brad Payne (Vir Linden) fae7834991 cleanup: log file spam
--HG--
branch : avatar-pipeline
2009-11-19 17:36:13 -05:00
Brad Payne (Vir Linden) 62ce5fa462 For EXT-2623 - object missing wearables and attachments on initial login
--HG--
branch : avatar-pipeline
2009-11-19 16:00:40 -05:00
Brad Payne (Vir Linden) 0c95f8bf30 For EXT-2623 - object missing wearables and attachments on initial login
--HG--
branch : avatar-pipeline
2009-11-19 12:03:11 -05:00
Loren Shih 5dea0791f7 EXT-2581 : Old items still display as "(worn)" even after I change outfits
Added gInventory.notifyObservers to idle callbacks so it gets triggered without explicit notifyObservers synchronization.
Added more state tracking for attachments, wearables, and links of those types, so that they're marked as changed properly.
2009-11-18 14:51:14 -05:00
Eric M. Tulla (BigPapi) 3217887356 Merge of viewer2 into avp
--HG--
branch : avatar-pipeline
2009-11-17 17:58:17 -05:00
Brad Payne (Vir Linden) 9c823a1d40 Deferring work to idle time to avoid recursive notifyObservers calls - added wrapper class to defer an arbitrary boost::bind or other callable
--HG--
branch : avatar-pipeline
2009-11-17 10:33:47 -05:00
Steve Bennetts f17399212e Compile fix for Windows 2009-11-14 11:09:07 -08:00
Eric M. Tulla (BigPapi) 68c6ff791f Fix for post-merge compile error. 2009-11-13 22:22:30 -05:00
Eric M. Tulla (BigPapi) cd9c5e5d70 merging avatar-pipeline branch into viewer-2-0 2009-11-13 20:34:55 -05:00
Loren Shih acdce23299 Header file cleanup
Removed unnecessary "#include llinventorymodel.h" now that llinventoryobserver was split from llinventorymodel.

--HG--
branch : avatar-pipeline
2009-11-13 17:47:00 -05:00
Loren Shih 3b730cef75 merge
--HG--
branch : avatar-pipeline
2009-11-13 11:10:29 -05:00
Loren Shih b685895dd0 EXT-2426 : Remove COF processing that is causing recursive calls to gInventory.notifyObservers
Changing COF processing to happen during idle(), versus within done().

Reviewed by: Vir

--HG--
branch : avatar-pipeline
2009-11-12 18:11:25 -05:00
Brad Payne (Vir Linden) 0b104e2a41 LLAppearanceManager cleanup - turning into proper singleton
--HG--
branch : avatar-pipeline
2009-11-12 15:10:06 -05:00
Eric M. Tulla (BigPapi) 4272ecaabe Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2009-11-12 11:54:14 -05:00
Brad Payne (Vir Linden) de6ca4c5ea Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2009-11-12 11:20:57 -05:00
Loren Shih 9b1680927f merge 2009-11-11 20:41:24 -05:00
Eric M. Tulla (BigPapi) 7e74e18548 Fix for EXT-2244 - Auto fill the My Outfits folder from library/clothing if empty
-Reviewed by Seraph
2009-11-11 20:27:29 -05:00
Brad Payne (Vir Linden) 9245322706 Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2009-11-11 18:57:12 -05:00
Brad Payne (Vir Linden) 4f3d32f5c7 Believe this fixes the remaining issues with missing attachment links on first use of 2.0 - EXT-1593 and EXT-1591. 2009-11-11 18:23:54 -05:00
Nyx (Neal Orman) f6406b7174 EXT-2173 use of visual param animation inconsistent at best
removed ambiguous parameter "set_by_user" from many places in codebase,
renaming it to be upload_bake, which is a more accurate descriptor.
This allowed me to see several inconsistencies in how this variable was
being set - these errors were also fixed. User-visible result should be
that baked textures are not reuploaded on changing avatar sex until the
save button is pressed. primary win here is code clarity.

Code reviewed by Bigpapi.
2009-11-11 16:37:59 -05:00
Loren Shih ae9c4e3ae9 Minor comment cleanup for llagentwearables.cpp. 2009-11-10 17:41:54 -05:00
Brad Payne (Vir Linden) 6f6d1314e6 Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0/ 2009-11-05 08:33:31 -05:00
Brad Payne (Vir Linden) 5c2d187d6f Small cleanup in LLAgentWearables.cpp 2009-11-04 18:58:27 -05:00
Brad Payne (Vir Linden) dc365be4d2 For EXT-1985: Clothing previously taken off is re-worn when creating a new clothing item in appearance mode.
General problem with failing to update the COF when clothing items were removed.  Added hook in removeWearableFinal, which should guarantee that we're always removing clothing links when we need to.
2009-11-04 18:03:04 -05:00
Bryan O'Sullivan b806edf4ac Redo Bao's broken merge 2009-11-04 14:59:23 -08:00
Brad Payne (Vir Linden) 8f6b28d89f Automated merge with ssh://hg.lindenlab.com/tulla/avatar-pipeline-2-0
--HG--
branch : avatar-pipeline
2009-11-03 12:53:40 -05:00
Brad Payne (Vir Linden) 9109809fb1 For EXT-1591: Current Outfit Folder contains duplicate attachment items after relog.
--HG--
branch : avatar-pipeline
2009-11-03 12:22:31 -05:00
Loren Shih 310a7b60f7 Merge conflict resolution for previous commit.
--HG--
branch : avatar-pipeline
2009-11-02 16:22:18 -05:00
Loren Shih bde7d67066 EXT-1866 : Inventory Side Panel
svn merge -r137106:137808 svn+ssh://svn.lindenlab.com/svn/linden/branches/avatar-pipeline/inventory-panel

Porting over changes from svn Inventory Panel work.
2009-11-02 15:39:55 -05:00
James Cook f553f7fd15 Fix signed/unsigned mismatch breaking the build. 2009-10-29 16:07:00 -07:00
Nyx (Neal Orman) 8bf1dd2f1b previous checkin had a signed/unsigned mismatch. Using a cast to fix it. 2009-10-29 17:42:32 -04:00