This attempts to be pretty close to the 80-20 style guide (sizewise probably a bit closer than we were before) while remaining pragmatically close to what we've already been using in viewer2.
The main goal is to bring fonts to parity across all platforms to the extent that truncation issues and layout glitches need to be fixed and tested on only one platform, not 3+.
In the viewer-2 code base, the "tos" case is detected inline, a sibling of the
other types of login failure, and doesn't reach the notification. Our new
logic needs to detect "tos" as well.
Also, the case of process_login_success_response() returning false was
inconsistent, attempting a notification with an empty string.
secondlife:///app/classifieds URLs because we do not have handlers for
these SLAPPs in 2.0.
Added support for secondlife://<location/<x>/<y>/<z> URLs, in addition
to the http://slurl.com SLURLs.
Also optimized LLUrlRegistry:findUrl() so that it avoids lots of
expensive regex calls when there is no URL in the text.
following SLAPP URL types in an untrusted browser:
secondlife:///app/agent/...
secondlife:///app/group/...
secondlife:///app/parcel/...
In order to find a compromise between supporting these commands and
security concerns over potential griefing vectors, we use a throttling
solution when these commands are issued by untrusted web browsers.
That is, we only process one command per 15 seconds.
This applies to external browsers, like Firefox, as well as the
internal SL browser.
Notably, we continue to block secondlife:///app/teleport URLs.
Reviewed by james.
brings up a notification telling you this; rather than displaying
the Place side panel with N/A information.
Now, if you click on an Event or Classified SLURL, you get this
unsupported alert (2.0 does not have side panels for these types
of assets, instead they are integrated into Search).
LLFloater's destructor calls LLFloaterReg::removeInstance() with its own name
and key. But for the new LLFloaterTOS invocation, we pass a key that's an LLSD
map. removeInstance() critically depends on LLFloater::KeyCompare::equate() --
but equate() never considered a non-scalar LLSD key value. Fortunately
llsdutil.h already provides a deep-equality function for LLSD: llsd_equals().
Making equate() trivially call llsd_equals() fixes the crash on TOS cancel.
Neither lllogininstance.cpp nor lllogininstance_test.cpp need llfloatertos.h
any more, since LLLoginInstance talks to LLFloaterTOS only via LLFloaterReg
and LLEventPumps. However, both sources depended on llfloatertos.h dragging in
llnotifications.h, so include that explicitly instead of llfloatertos.h.
* Bugs: EXT-888 EXT-866 EXT-861 EXT-858 EXT-864 EXT-875 EXT-884 EXT-718 EXT-786 EXT-885 EXT-910 EXT-845 EXT-312 EXT-823 EXT-868
* New Development: EXT-748 EXT-863 EXT-835
QA: Please test Recent List to verify it has no troubles.
DEV-30182 Tooltips lose their translucent background
DEV-30508 Chat bar changes from white to dark upon text entry
DEV-30830 Text color change after UI size change
DEV-30751 Create object Name text field is grey out
reviewed by Q.