Commit Graph

46099 Commits (39a50b0face299bbcae2a63f3fd51a41f8bb35cd)

Author SHA1 Message Date
Andrey Kleshchev 39a50b0fac SL-19134 Fix thumbnail ctrl not drawing an 'X' for empty texture 2023-02-08 21:41:43 +02:00
Andrey Kleshchev e06c322971 SL-19134 Multiline description field 2023-02-08 17:43:49 +02:00
Andrey Kleshchev 83cd767b24 SL-19134 Fix owner and creator names not being clickable 2023-02-08 16:37:45 +02:00
Andrey Kleshchev 6e6ec9d10e SL-19134 Hide item properties when moving to trash 2023-02-08 15:45:54 +02:00
Andrey Kleshchev 693825158f SL-19134 Remove lock icon, add item type icon 2023-02-08 14:35:56 +02:00
Andrey Kleshchev 1cc41cb9c4 SL-19134 Remove llfloaterproperties
Looks like it wasn't used for a while and LLFloaterItemPropertie does the same thing now
2023-02-08 14:27:52 +02:00
Andrey Kleshchev 97d58e6184 SL-19134 Item Profile redesign #4 2023-02-07 21:55:18 +02:00
Andrey Kleshchev c97de5ac48 SL-19134 [WIP] Item Profile redesign #3 2023-02-07 13:01:58 +02:00
Andrey Kleshchev 627c7de801 SL-19134 Some texture related adjustments 2023-02-07 12:36:20 +02:00
Andrey Kleshchev a654989812 SL-19134 Replace icon in profiles with thumbnail
Mostly to make sure it works, but avatar images can be fairly large, so this prevents them from being permanently stored
2023-02-07 01:12:31 +02:00
Andrey Kleshchev 3ecfeda2fd SL-19134 Thumbnail ctrl
LLIconCtrl stores icons indefinitely which is undesired for fairly large and expected to be numerous thumbnails, LLTextureCtrl is tied to texture picker and has a number of limitations (already processes clicks, enforces label area). Intent behind LLThumbnailCtrl is to bridge the gap - to not store texture indefinitely and to allow further customisation.
2023-02-07 01:12:31 +02:00
Andrey Kleshchev 7a99ce16d1 SL-19109 Turn LLSidepanelTaskInfo into a normal panel 2023-02-04 19:54:23 +02:00
Andrey Kleshchev 13a65319e0 SL-19109 Turn LLSidepanelItemInfo into a normal panel 2023-02-04 19:54:23 +02:00
Andrey Kleshchev 25b42dd190 SL-19109 Cut out object profiles from inventory 2023-02-04 18:35:20 +02:00
Andrey Kleshchev c9ba8f1fce SL-19109 Decouple object profiles from inventory
Potentially this won't stay as sidepanels, but such rework is planned for SL-19134, for now just making it possible to open multiple instances of item profiles
2023-02-03 23:56:35 +02:00
Andrey Kleshchev 2f4902967a Merge branch 'xcode-14.1' into andreyk/SL-19134
# Conflicts:
#	indra/llcommon/llsdserialize.cpp
#	indra/llcommon/llsdserialize.h
2023-02-03 22:59:50 +02:00
Mnikolenko Productengine c5fcf3066f SL-7277 show Advanced permissions in Item profile that was opened from inventory 2023-02-03 22:35:09 +02:00
Maxim Nikolenko 2d6edb088e SL-19149 Highlight string match is misplaced when searching worn items 2023-02-03 22:22:11 +02:00
Maxim Nikolenko 51142d1341 Merge branch 'main' into DRTVWR-567
# Conflicts:
#	indra/newview/llappearancemgr.cpp
#	indra/newview/llpanelmaininventory.cpp
2023-02-03 16:53:33 +02:00
Nat Goodspeed 8d21d29bd7 Increment viewer version to 6.6.10
following promotion of DRTVWR-570
2023-02-02 14:33:39 -05:00
Maxim Nikolenko db80fdb55b SL-19104 update label and permissions display 2023-02-01 23:57:36 +02:00
Maxim Nikolenko ac3f1b54ec
SL-19104 Clean up inventory UI to prepare for thumbnails (#66) 2023-02-01 18:44:26 +02:00
Andrey Kleshchev 999c8cd3b9 SL-19117 Textures should return asset id when thumbnail is not set 2023-02-01 16:38:47 +02:00
Andrey Kleshchev 6ada89ce0b SL-19117 Extend texture preview to show thumbnails when present 2023-02-01 16:38:47 +02:00
Andrey Lihatskiy aa6c7902af SL-18988 OSX buildfix 2023-02-01 16:38:47 +02:00
Andrey Lihatskiy b2e3a07ab4 SL-18988 Updated contributions.txt 2023-02-01 16:38:47 +02:00
Kitty Barnett 1140ae3489 Add a texture inspector and show it when hovering over an inventory textory (or folder containing - among others - exactly one texture) and when hovering over notecard embedded textures 2023-02-01 16:38:47 +02:00
Andrey Lihatskiy 71657b66f9 Revert "SL-18581 Don't show the starter avatar toolbar button for NUX"
This reverts commit 4d429b7ea3.
2023-01-27 22:04:11 +02:00
Brad Payne (Vir Linden) 3375e1a7b5 Merge branch 'DRTVWR-567' of ssh://github.com/secondlife/viewer into DRTVWR-567 2023-01-24 20:15:43 +00:00
Brad Payne (Vir Linden) ce5ac93883 SL-18629 - various notes on work for D567 2023-01-24 20:15:22 +00:00
Mnikolenko Productengine 111fc04e5d Merge branch 'main' into DRTVWR-567 2023-01-23 16:29:56 +02:00
Andrey Kleshchev b3201e75b1 SL-18945 Links have no 'cut' option
Links can be drag and dropped so they should be movable via 'cut' as well
2023-01-11 16:03:33 +02:00
Andrey Kleshchev 007939f0a7 SL-18939 Cannot copy inventory folders with copiable links 2023-01-11 08:30:32 +02:00
akleshchev f3cd329b58
SL-18911 My Land Holdings floater crashes viewer on the Xcode/+Monterey branches (#47)
Revert part of "DRTVWR-575: Address review comments on Xcode 14.1 type tweaks."
Crash was reproduced when assigning areastr to llsd, but likely present in other cases of assigning ui strings to llsd (instead of going for lluistring's result directly copy constructor was engaged and either copy or original crashed due to invalid pointers, copy shouldn't have been created).
2023-01-10 19:38:44 +02:00
Brad Payne (Vir Linden) 819eec6f8c SL-18924 - basic get/set functions for thumbnail UUID, removed obsolete binary pack/unpack functions for inventory 2023-01-09 21:14:16 +00:00
Andrey Kleshchev 30678472ee Revert "SL-18911 [MAC] My Land Holdings floater crashes when not empty"
This reverts commit d6f5e5bc94.
2023-01-07 18:59:39 +02:00
Andrey Kleshchev d6f5e5bc94 SL-18911 [MAC] My Land Holdings floater crashes when not empty 2023-01-07 01:10:22 +02:00
Andrey Kleshchev 73933fe778 SL-18894 The change of 'modify rights' is not recorded in IM history if the user is in DND mode
Revert of commit for SL-15401. Messages are supposed to handle 'mute' on their own.
2023-01-05 18:21:53 +02:00
Andrey Kleshchev 3fd86c2f23 SL-18871 Debug setting's description is not scrollable 2023-01-05 01:34:03 +02:00
Nat Goodspeed 99c040ea99 DRTVWR-575: Fix possible bad indexing in LLSD::operator[](size_t).
One could argue that passing a negative index to an LLSD array should do
something other than shrug and reference element [0], but as that's legacy
behavior, it seems all too likely that the viewer sometimes relies on it.

This specific problem arises if the index passed to operator[]() is negative
-- either with the previous Integer parameter or with size_t (which of course
reinterprets the negative index as hugely positive). The non-const
ImplArray::ref() overload checks parameter 'i' and, if it appears negative,
sets internal 'index' to 0.

But in the next stanza, if (index >= existing size()), it calls resize() to
scale the internal array up to one more than the requested index. The trouble
is that it passed resize(i + 1), not the adjusted resize(index + 1).

With a requested index of exactly -1, that would pass resize(0), which would
result in the ensuing array[0] reference being invalid.

With a requested index less than -1, that would pass resize(hugely positive)
-- since, whether operator[]() accepts signed LLSD::Integer or size_t,
resize() accepts std::vector::size_type. Given that the footprint of an LLSD
array element is at least a pointer, the number of bytes required for
resize(hugely positive) is likely to exceed available heap storage.

Passing the adjusted resize(index + 1) should defend against that case.
2023-01-04 17:18:31 -05:00
Nat Goodspeed 4093d5b1eb DRTVWR-575: Use llsdutil.h functions for LLFloaterLandHoldings LLSD
LLFloaterLandHoldings::postBuild() was constructing an LLSD structure by
assigning each map entry and array element one at a time. Chorazinallen
identified a crash bug possibly caused by destroying that LLSD structure.
Diagnostically try building it using nested llsd::map() and llsd::array()
calls instead to see if that improves matters.
2023-01-04 15:13:02 -05:00
Nat Goodspeed aa112ef17f DRTVWR-575: Fix bug in macOS micro_sleep().
The compiler was deducing an unsigned type for the difference (U64 desired
microseconds - half KERNEL_SLEEP_INTERVAL_US). When the desired sleep was less
than that constant, the difference went hugely positive, resulting in a very
long snooze.

Amusingly, forcing that U64 result into an S32 num_sleep_intervals worked only
*because* of integer truncation: the high-order bits were discarded, resulting
in a negative result as intended.

Ensuring that both integer operands are signed at the outset, though, produces
a more formally correct result.
2023-01-04 12:04:56 -05:00
Nat Goodspeed bb718155bd DRTVWR-575: Replace some LLSDArray() usage with llsd::array().
It seems newer compilers have a different interpretation of exactly when to
engage LLSDArray's copy constructor. In particular, this assignment:

some_LLSD_map[key] = LLSDArray(...)(...)...;

used to convert the LLSDArray object directly to LLSD; now it first calls the
custom copy constructor, which embeds the intended array within an outer array
before assigning it into the containing map.

The newer llsd::array() function avoids that problem because what it returns
is already an LLSD object.

Taking inventory of LLSDArray assignments of that form turned up a number of
workarounds like LLSD(LLSDArray(...)). Replacing those with llsd::array() is
both simpler and more readable.

Tip of the hat to Chorazinallen for surfacing this issue!
2023-01-03 18:06:45 -05:00
Andrey Kleshchev 6f522084ed SL-18426 At log in only a part friends reported to chat as online
Server sends updates in bulk now, so notify per agent instead of per update
2022-12-20 02:03:03 +02:00
Andrey Kleshchev 07baa83ef2 SL-18384 Fix NSException for keyboard handling
Affects accent keys for diacritical marks
2022-12-16 16:31:42 +02:00
Andrey Lihatskiy f836194516 Merge branch 'main' into DRTVWR-570-maint-Q
# Conflicts:
#	doc/contributions.txt
#	indra/newview/app_settings/shaders/class1/deferred/materialF.glsl
#	indra/newview/llfloater360capture.cpp
2022-12-12 20:53:11 +02:00
Nat Goodspeed a0c3d69c62 Increment viewer version to 6.6.9
following promotion of DRTVWR-565
2022-12-12 13:41:50 -05:00
Andrey Lihatskiy b4dd4271a1 SL-16874 Added tool tips to buttons displayed by llDialog() 2022-12-12 20:22:50 +02:00
Maxim Nikolenko ab8dc07630 SL-18826 limit teleport command usage 2022-12-12 13:13:48 +02:00
Nat Goodspeed 7d9249d180 DRTVWR-575: Try to avoid comparison warnings in llclamp() 2022-12-06 17:16:56 -05:00