Commit Graph

59 Commits

Author SHA1 Message Date
Liru Færs
4b2e358783 Sync LLInventoryModel and LLViewerInventory with upstream 2020-01-21 03:18:44 -05:00
Liru Færs
278b617290 [BOM] Add Universal wearables functionality 2019-10-14 21:53:01 -04:00
Lirusaito
a1d06e682e Switch to using typedef'd uuid types everywhere and auto for iterators
Oh, and some related opts.
2019-04-04 22:20:21 -04:00
Lirusaito
9affd767e4 [EEP] II_FLAGS_WEARABLES_MASK -> II_FLAGS_SUBTYPE_MASK 2019-03-24 22:52:29 -04:00
Lirusaito
b755880dd3 Fetch inventory via udp if http inventory is off 2019-03-17 17:49:58 -04:00
Lirusaito
fb39f2d511 Merge branch 'master' into ManagedMarketplace
# Conflicts:
#	indra/newview/llinventorybridge.cpp
#	indra/newview/lltooldraganddrop.h
2019-02-28 23:58:08 -05:00
Lirusaito
a62d433262 Favorites on the login screen
Adds some guts for the favorites bar, I'll get to that eventually
2019-02-05 05:17:08 -05:00
Inusaito Sayori
f140b4f35c Giant VMM merge, still need to compile it and fix llfloatermarketplacelistings
Merge VMM up to change 187902d9c4afd2990acddeb964c928179a52d189

mAllowWear=>mAllowOpen (should probably just remove this altogether though
inventory_panels now accept the "show_root_folder", "allow_drop_on_root", "allow_open", and "use_marketplace_folders" attributes.

Other stuff in this commit:
LLPanelInjector~
Sync lltooldraganddrop to alchemy
Sync notifications up with alchemy
Reorganize notifications some, to better merge with upstream
Remove duplicate InventorySortOrder in settings map
There's a bit of a weird folderview merge mixed into here, I wouldn't trust it, but this thing is so god damn tangled I can't go back now~

Wouldn't have been possible without help from Shyotl and music by Amanda Palmer
2019-01-25 19:33:15 -05:00
Inusaito Sayori
167d336274 Up to compile phase
at 20fd3e98b4
2019-01-25 19:32:15 -05:00
Shyotl
7dd616357f Match AISAPI refactoring. 2017-03-13 23:58:56 -05:00
Shyotl
2065e45011 Removed some old rlva code that was breaking serverside baking. Also merge some other minor inventory/appearance related changes from v3. 2016-06-15 00:02:18 -05:00
Inusaito Sayori
9dadc8c054 Warnings fixes, mostly signed/unsigned mismatch 2015-08-12 14:54:49 -04:00
Shyotl
dedd75dc4f Implement all aisv3 HTTP requests. Added PATCH and COPY methods. 2015-07-23 01:02:02 -05:00
Shyotl
2b9245ba2e Nullptr crash fix that has been sitting unstaged for too long. 2015-07-13 15:09:15 -05:00
Shyotl
a380161283 Merge in select parts of https://bitbucket.org/Kitty_Barnett/rlva-development @ 1adfc2cd210c4cf3a8800b31915d363bfe47d045 2015-06-26 20:59:31 -05:00
Shyotl
9f10d9510d Initial AISv3 merge. New HTTP messages not plugged in yet. 2015-06-25 20:16:30 -05:00
Shyotl
1c627317ec No longer include llerrorlegacy.h. Updated llstl to include deletion utilites. 2015-06-19 03:54:20 -05:00
Inusaito Sayori
036d5b84d1 UseHTTPInventory can never be turned off on SL anymore. 2015-04-07 18:37:34 -04:00
Inusaito Sayori
eebee9b7c1 [STORM-68b] Default permissions floater overhaul
Adds separated default permissions for Objects, Uploads, Scripts, Notecards, Gestures and Wearables.

Compatible with Export Permission
Backwards compatible with default permissions for objects on regions where AgentPreferences capability is not available (opensim users rejoice!)

These changes to llfloaterperms are made available under lgpl, if there's a v3 that wants to adopt default export permission for opensim.
2014-06-14 15:32:50 -04:00
Latif Khalifa
3430a31e9d Fixed fetching inventory when UseHTTPInventory is disabled 2013-11-11 11:50:07 +01:00
Aleric Inglewood
cc9fc6b868 First attempt to deal with broken (pre multiwear) inventory items.
Since multiwear, the low 8 bit of inventory items, if they are of type
IT_WEARABLE, is used for the wearable type (WT_*). Older viewers and
bots (like Second Inventory) create inventory items with 0 in those
bits. This causes all those item to appear as shapes in multi-wear
capable viewers.

This gives rise to many problems:
1) You can't wear them, because the inventory and asset wearable type
mismatch, which makes Singularity just abort.
2) Before it aborts, it already removed your old shape, thinking you
are about to wear another shape - and told the server that you are
wearing this broken item now. The result is that you see no change,
until you relog when you are suddenly wearing the broken "shape"
and stay a cloud forever.

This commit detects the problem for AT_CLOTHING wearables, because
they are not compatible with the type 'shape' after all (which is
is AT_BODYPART). It still doesn't know what the wearable type is, but
sets the type temporarily to the new value WT_UNKNOWN. Since this is
at least not a shape anymore, it doesn't cause you shape to be removed
when wearing it. Moreover, once the asset is downloaded, the mismatch
is detected and corrected: you can now wear -say- pants, or other
clothing.

Inventory clothing items with an unknown wearable type now have a
red question mark icon in the inventory.

What does NOT work yet:

1) If you copy such an item and paste it, then the new copy has
a shape icon again (and all the previously mentioned problems).

2) If you wear broken hair, skin or eyes (which still show as
shapes in the inventory) then your shape is still removed, and
wearing them fails because they are not multiwear capable and you
are already wearing such a body part. What should be done here
is that the removed shape is added back and the real body part
that you're trying to wear is removed.

3) Although this code attempts to fix the mFlags in the inventory,
the icon in the inventory doesn't change from question mark to the
right thing.
2013-08-18 02:50:31 +02:00
Drake Arconis
43a7cbaa85 Rip out the globals :D 2013-06-21 03:23:52 -04:00
Lirusaito
8d10a21a7a One more fix for removing system folders, thanks Swiftkill! 2013-05-30 19:56:49 -04:00
Lirusaito
5fc712104a Merge branch 'master' of https://bitbucket.org/SingularityViewer/singularityviewer into Frosting
Conflicts:
	indra/newview/linux_tools/wrapper.sh
2013-05-12 03:33:34 -04:00
Aleric Inglewood
4983fd6ab6 Allow switching between HTTP and UDP inventory without relogging.
This also makes the viewer immune for grids that send the FetchInventory2 et al
capabilities regardsless of whether we requested them (in fact, we always
request them now: we need them when someone switches in the middle of a session).

Note that (I tested that) textures could already be switched between
HTTP and UDP without relogging.
2013-05-03 18:24:33 +02:00
Lirusaito
126eeb9244 Inventory Updates and Clean Up
Better viewed without space changes
Adds translatable inventory strings
2013-03-29 03:25:03 -04:00
Shyotl
e622e03d2a Bulk of server-baking impelmentation and a bit of cleanup. 2013-01-13 02:37:12 -06:00
Shyotl
b49ad1cd34 RLVa impl updated to that used in v3. Hooked RLVa restrictions back into wearables. New RLVa floater: 'Locks...' Also updated 'Restrictions...' floater. 2012-04-12 10:29:45 -05:00
Shyotl
0fdab061b9 Some spring cleaning. 2012-03-21 02:22:27 -05:00
Shyotl
a6a69caa4f Merge branch 'master' of git://github.com/siana/SingularityViewer.git into V2MultiWear
Conflicts:
	indra/newview/llfloateravatarlist.cpp
	indra/newview/llfloateropenobject.cpp
	indra/newview/llinventorybridge.cpp
	indra/newview/llviewerinventory.cpp
2012-02-24 13:21:59 -06:00
Aleric Inglewood
f381b0c2dd LLViewerRegion WIP: Use LLViewerRegion::getCapAPI
Viewer 3 uses this in LLAgent::setStartPosition and
copy_inventory_from_notecard; so I brought those
up to speed with V3.

The viewer now uses LLViewerRegion::getCapAPI in all
the same place as V3.
2012-02-18 02:22:49 +01:00
Shyotl
ae7b12f230 Interim commit before diving into reworking the inventory panel. 2012-02-16 19:25:59 -06:00
Shyotl
a0c549534f Pulled apart LLInventoryPanel and LLInventoryView. TODO: LLInventoryView needs to be chopped apart into a floater (LLFloaterInventory) and a panel (LLPanelMainInventory). 2012-01-29 17:10:04 -06:00
Shyotl
4a4b786a60 New inventory observer implementation. 2012-01-21 04:54:39 -06:00
Shyotl
d7d65df9e0 HTTP inventory fetching enabled. 2012-01-21 02:37:22 -06:00
Shyotl
40400d696b Updated inv fetching impl. Haven't ticked on new caps. 2012-01-21 00:11:19 -06:00
Shyotl
4c201a9b83 Inv fetch migrated from LLInventoryModel to LLInventoryModelBackgroundFetch singleton. 2012-01-20 19:09:44 -06:00
Shyotl
dbad00ae66 Missing utility functions added to LLViewerInventoryItem, and cleaned up a few things. 2011-10-12 02:33:37 -05:00
Shyotl
d40dcfa1cd Updated LLInventoryModel a bit. Safer cleanup, prevention of recursive notifyObservers calls, more sanity checks, added idleNotifyObservers that will call notifyObservers if stale flag(s) found. 2011-10-10 00:19:01 -05:00
Shyotl
cd86b3a69b Refactoring.
-New LLWearableType class, uses LLDictionary for typeindex<->typename<->assettype<->typelabel conversions.
-LLAvatarDefines cleaned up. Uses LLDictionary for Mesh, TE, Baked lookups/conversions.
-LLAgentWearables TEWearable stuff removed. Use LLAvatarDefines.
-LLWearable WearableType conversions yanked. Use LLWearableType.
-LLVOAvatar TEWEarable stuff removed. Use LLAvatarDefines.
-EWearableType now LLWearableType::EType
-LLWearable::getID() renamed to LLWearable::getAssetID()
VOAvatar cleanup.
-Removed redundant TEWearable functions.
-Some code migrated to F32 LLVOAvatar::calcMorphAmount(). No functional change.
-LLVOAvatar::removeMissingBakedTextures virtual. Implementation moved to VOAvatarSelf
2011-10-03 15:00:43 -05:00
Shyotl
36600462d1 Merge branch 'future' of git://github.com/siana/SingularityViewer.git into BatchIndexing
Conflicts:
	indra/newview/hippopanelgrids.cpp
	indra/newview/llstartup.cpp
	indra/newview/llsurface.cpp
	indra/newview/llviewermessage.cpp
	indra/newview/llviewerparceloverlay.cpp
	indra/newview/llviewertexturelist.cpp
	indra/newview/llworld.cpp
2011-09-09 16:53:12 -05:00
Shyotl
417f5084b4 Added LLNotificationsUtil and switched LLNotifications::instance().add to LLNotificationsUtil::add in a bazillion places. 2011-09-03 19:30:42 -05:00
Shyotl
7b2aa741aa LLGestureManager renamed to LLGestureMgr. Also, derived from LLSingleton. 2011-09-03 06:46:47 -05:00
Shyotl
1f187b09ee LLCommon cleanup and updating to V2 (V3 now, I guess.) 2011-08-27 01:57:10 -05:00
Aleric Inglewood
dfa10281ea LLFrameTimer review and resulting changes.
This makes the class API a bit more sane, although
only a bit, because I had to leave it working with
possibly new code merged in from LL: the API can't
really change. I also removed some unused code.

While reviewing how LLFrameTimer worked however,
I did find a few instances where things where broken:

* sFrameDeltaTime wasn't correctly updated (more
  than once per frame and therefore erratic). This
  only influenced scrolling speed, but still.
* While dragging an inventory item, the scroll
  arrows of a tab container didn't work
  (LLTabContainer::handleDragAndDrop).
* Map zoom interpolation was broken (it interpolated
  between A and B, but used the already updated
  interpolation for A the next frame...
  (added mCurZoomValInterpolationStart).
2011-08-18 19:30:43 +02:00
Siana Gearz
fcd37f3a45 Linuxy fixes 2011-08-01 19:55:57 +02:00
Shyotl
f93bcae65b Removed some frequent llinfos/llwarns spam. 2011-07-12 03:44:26 -05:00
Siana Gearz
6348635d3f Ïntroduced LLFolderType and LLViewerAssetType (by Shyotl) 2011-06-23 21:11:52 +02:00
Shyotl
a07e399801 LLAgentCamera transition (1/2) 2011-06-07 21:35:10 -05:00
Shyotl
49b893c806 Removed most OGPX related code. 2011-05-28 17:11:10 -05:00