After a user spend three days trying to find out why certain
textures looked red (as if they had alpha and you pressed
control-alt-T, but not all of them were like that); and nothing
helped, not relogging, not clearing cache, not even reinstalling
the viewer... I decided to take this bug serious. Note that,
according to Shyotl, there have been more users every now and
then that reported this problem.
The problem (after doing a research for 1 hour) turned out
to be that she had beacons on, highlighting prims with scripts.
The immediate bug is, of course, that this was persistent over
a relog. Upon further investigation, this bug exists because
a Debug Setting had a double meaning: it meant both "beacon
floater is visible", which you want to be persistent, and it
was later renamed and given the meaning "Keep beacons when
closing the floater". Digging deeper it turned out that there
was a REAL mess with regard to the beacons: A non-finished
floater with immature comments (called "dingdong floater") was
half-created and replaced the original floater which, according
to the comment was "so fucked over and over" (== commented out
in several places), but then everything was commented out and
replaced with a menu (because they couldn't get it to work?).
The floater simply didn't exist anymore! That reduced the
meaning of the Debug Setting to "Show beacons", although you
now could only set it in the menu by clicking on "Beacons Always On"
where 'Always' refers to also on when the floater isn't there.
I nuked the immature dingdong code, brought back the original
floater as it was in snowglobe (and still is in Imprudence),
fixed it up a bit with a nicer layout (indentation and spacing)
and disabling (graying out) when needed, and added a new checkbox
that will allow people to still keep/see the beacons after closing
the floater.
In the end this requires THREE Debug Setting variables:
ShowBeaconsFloater : TRUE when the floater is visible, FALSE when not.
This is persistent, so the floater is still
there if you relog with the floater open.
BeaconsKeepVisible : TRUE when the new checkbox is checked.
Also persistent.
BeaconsVisible : TRUE when the beacons are rendered, FALSE otherwise.
This is NOT persistent: we don't want unsuspecting
users to try and get rid of the weird 'red prims'
by relogging and failing at that.
Added missing header to indra/newview/ascentkeyword.cpp now that
llviewerpluginmanager.h has a couple of header dependencies less.
Resolved Conflicts:
indra/llcommon/CMakeLists.txt
Proximity: addition of two independent things. Just included both.
Resolved Conflicts:
indra/newview/llviewermedia.cpp
indra/plugins/base_media/CMakeLists.txt
Trivial fix for indra/newview/llviewermedia.cpp.
Moved 'prepare' dependency from base_media to
base_basic because media already depends on basic.
This is the skeleton needed to implement classes that can be reused and
work together, which can perform asynchronous tasks (read: need to wait
for certain events before they can continue).
An example would be the task of waiting for a given inventory folder to
be read. This could then be used to improve the builtin AO
(automatically reading that folder when a notecard is dropped, and
continuing when the whole folder is read).
It's first use will be communication with a filepicker that runs
in a plugin.
Emerald physics demoted to legacy. Only enabled on av's that fail to send physics paramaters, or AvatarPhysics is completely disabled.
Params reset when AvatarPhysics is toggled off. (Bugfix for LL's code)
ScriptsCanShowUI:false disables LLMapDestination (from V2)
SH_SpamHandler, derived from Cryogenic's spam blocking:
If flooded by an object, all objects of same owner get blocked.
If flooded by an avatar, avatar will be blocked.
Dialog flood prevention. (Objects only)
Calling card flood prevention (Avatar only)
Chat flood prevention. (Avatar and objects)
IM/Inventory offer flood prevention (Avatar and objects)
See additions to settings_sh.xml for details on new settings pertaining to anti-spam.
Deferred fastalpha behaves a bit better.
Pulled over patch for https://jira.secondlife.com/browse/STORM-336 and https://jira.secondlife.com/browse/STORM-1011 from linden repo
Sky rendered using new LL method. Assuming this fixes issues on AMD cards(works on cat 11.2)
Added a few things missed related to spatial-parition updating.
Added 'SkipReflectOcclusionUpdates' setting that prevents occlusion updates for reflection pass. Less taxing on CPU.