Commit Graph

272 Commits (d4e9604700a1dbae3dbce58a3be0fda1465fd39c)

Author SHA1 Message Date
Ansariel 7427b46ea5 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	.gitignore
#	indra/cmake/Copy3rdPartyLibs.cmake
#	indra/llcommon/llcommon.cpp
#	indra/llcommon/llerror.cpp
#	indra/llcommon/llprofiler.h
#	indra/llcommon/llthread.cpp
#	indra/llimage/llimageworker.cpp
#	indra/llprimitive/llmodel.h
#	indra/llrender/llfontgl.cpp
#	indra/llrender/llfontgl.h
#	indra/llrender/llgl.cpp
#	indra/llrender/llvertexbuffer.cpp
#	indra/llrender/llvertexbuffer.h
#	indra/llwindow/llwindowmacosx.h
#	indra/llwindow/llwindowwin32.cpp
#	indra/llwindow/llwindowwin32.h
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewer.h
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/lldrawpoolavatar.h
#	indra/newview/lldynamictexture.cpp
#	indra/newview/llfloatermodelpreview.cpp
#	indra/newview/llimview.cpp
#	indra/newview/llmeshrepository.h
#	indra/newview/llmodelpreview.cpp
#	indra/newview/llnetmap.cpp
#	indra/newview/llskinningutil.cpp
#	indra/newview/llskinningutil.h
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llteleporthistory.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewerobject.cpp
#	indra/newview/llviewerobjectlist.cpp
#	indra/newview/llviewertexture.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llviewerwindow.cpp
#	indra/newview/llvoicevivox.cpp
#	indra/newview/llvosky.cpp
#	indra/newview/llvovolume.cpp
2021-11-12 15:21:52 +01:00
Nat Goodspeed 2cb09dd4a8 SL-16024: Return shared_ptr from LLInstanceTracker::getInstance().
It feels wrong to return a dumb LLInstanceTracker subclass* from getInstance()
when we use std::shared_ptr and std::weak_ptr internally. But tweak consumers
to use 'auto' or LLInstanceTracker::ptr_t in case we later revisit this
decision.

We did add a couple get() calls where it's important to obtain a dumb pointer.
2021-10-07 11:53:45 -04:00
Ansariel ae93dd240d Revert "FIRE-11339: Persisted group notifications get logged to IM on each login"
This reverts commit 5609fdbf3d.
2021-08-24 10:54:16 +02:00
Ansariel 1536fdd1c3 Merge branch 'DRTVWR-530-maint' of https://bitbucket.org/lindenlab/viewer 2021-08-24 10:47:18 +02:00
Andrey Lihatskiy 8b5fe507a4 Merge branch 'master' into DRTVWR-530-maint 2021-06-25 01:02:15 +03:00
Mnikolenko Productengine 9a1688322a SL-15195 The notification in chat history is multiplied after relogging 2021-05-13 17:51:24 +03:00
Ansariel 7735905d18 Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2020-11-12 17:56:43 +01:00
Ansariel 5609fdbf3d FIRE-11339: Persisted group notifications get logged to IM on each login 2020-10-29 17:46:28 +01:00
Andrey Lihatskiy 4e43097c77 Merge branch 'master' into DRTVWR-518-ui
# Conflicts:
#	indra/newview/llfloaterbuycurrency.cpp
#	indra/newview/llinventorybridge.cpp
#	indra/newview/llinventorypanel.h
#	indra/newview/skins/default/xui/en/floater_buy_currency.xml
2020-09-28 22:33:51 +03:00
Ansariel b677e01629 Merge branch 'DRTVWR-518-ui' of https://bitbucket.org/lindenlab/viewer 2020-09-23 19:02:19 +02:00
Mnikolenko Productengine 2c0814b00a SL-13335 Friendlier L$ Buy flow when no payment method on file 2020-09-23 11:43:53 +03:00
Ansariel fe10f171d3 Merge branch 'DRTVWR-503-maint' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llmessage/llcoproceduremanager.cpp
#	indra/newview/llinventorypanel.cpp
#	indra/newview/llpanelmaininventory.cpp
#	indra/newview/skins/default/xui/en/panel_main_inventory.xml
#	indra/newview/skins/default/xui/en/strings.xml
2020-09-09 19:34:33 +02:00
Andrey Kleshchev 1cd65a2447 SL-13498 Crash at ~LLPersistentNotificationChannel
Callstack is clearly broken since it points to LLNotifications::instance().clear(); after 'Goodbye!', my suspicion is that something reinitialized singleton so I fixed cleanup and added some logging to see if there is a dupplicate init
2020-08-25 22:22:12 +03:00
Ansariel 0f4933e2fc FIRE-29943: Fix item shared messaged logging to wrong IM logfile if user is offline 2020-07-31 14:03:04 +02:00
AndreyL ProductEngine 56056aa198 Upstream merge from viewer-neko 2019-11-27 23:20:03 +02:00
Ansariel fd4b8a7bb1 Merge Firestorm LGPL 2019-11-12 18:45:02 +01:00
Ansariel d79b79fbe2 Merge viewer-ordered-shutdown 2019-10-19 03:16:10 +02:00
Ansariel 438bb8c113 Merge viewer-neko 2019-09-10 20:03:09 +02:00
andreykproductengine e29b3605c3 SL-11315 Viewer asks to play media and retains selected choice 2019-09-05 17:15:57 +03:00
andreykproductengine c61d0f4297 DRTVWR-493 LLUI to LLParamSingleton 2019-08-10 15:31:03 +03:00
Ansariel 9f099336e7 Merge viewer-lynx 2017-08-04 18:28:07 +02:00
AndreyL ProductEngine dcb6a850aa MAINT-7356 Improved the notification appearance 2017-07-25 03:18:59 +03:00
AndreyL ProductEngine 2efa40fa60 MAINT-7356 Logic fix and cleanup 2017-07-21 05:29:51 +03:00
Ansariel 2347b25808 Merge viewer-neko 2017-06-09 11:49:10 +02:00
Kitty Barnett d7edeb2df8 STORM-2149: Add a warning notification when deleting a folder of filtered content 2017-06-02 16:44:00 +02:00
Ansariel 099d988fe2 Merge viewer-neko 2017-05-25 22:49:53 +02:00
Mnikolenko Productengine 561cee12d8 MAINT-2585 Make permission request notifications permanent until action taken 2017-05-25 16:51:45 +03:00
Ansariel dcac0dce59 Merge viewer-bear 2017-05-07 13:11:50 +02:00
andreykproductengine 0dcb423cf3 MAINT-7145 Eliminate LLSingleton circular references 2017-04-25 17:48:34 +03:00
Ansariel a0188a5358 Merge Firestorm LGPL 2016-05-09 12:41:24 +02:00
Oz Linden 950c41d184 merge 4.0.4-release and MAINT-5974 2016-05-06 10:28:42 -04:00
Ansariel 1bba3dfbe4 Merge viewer-bear 2016-03-17 21:14:49 +01:00
andreykproductengine 230fc28d8a MAINT-6097 FIXED On required update, clicking link to release notes opens browser behind menu 2016-03-11 20:16:03 +02:00
Ansariel 3192fe832f Merge viewer-quickgraphics 2016-03-08 01:41:31 +01:00
Oz Linden bc22e58743 merge changes for 4.0.1-release 2016-01-15 16:55:04 -05:00
Ansariel 5f7b0c5a59 Merge viewer-bear 2016-01-13 12:34:02 +01:00
AndreyL ProductEngine 30446d6afc MAINT-6018 Open URL dialog spam
Added the ability to close all notifications from one owner at once
2016-01-11 03:24:36 +02:00
AndreyL ProductEngine 29cb3a4a93 MAINT-6018 Open URL dialog spam
Added the ability to close all notifications from one owner at once
2016-01-11 03:24:36 +02:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
Ansariel 4ce6691cf8 Merge viewer-xp_tools 2015-06-25 11:57:17 +02:00
Ansariel a45088cb6b Merge LL V3.7.11 2015-01-12 12:54:15 +01:00
dolphin 487fce4afa Merge with 3.7.11-release 2014-07-09 15:22:12 -07:00
Cho 43d12faffe Added COMBINE_WITH_NEW for notifications for ACME-1471 2014-05-17 04:21:56 +01:00
Nat Goodspeed b4796595f2 Automated merge with http://hg.secondlife.com/viewer-release 2014-05-06 16:03:07 -04:00
Nat Goodspeed ba892274b3 DRTVWR-363: Fix LLNotificationsListener::listChannels() channel walk.
LLNotifications::ChannelMap went away when LLNotificationChannel became an
LLInstanceTracker subclass. Iterate the universe of channels using
LLNotificationChannel::beginInstances(), endInstances() instead.
More troubling is that LLNotificationChannel::getParentChannelName() went away
too. When LLNotificationChannel acquired a Params block and corresponding
constructor, it acquired the ability to listen on multiple upstream sources.
That meant that a single mParent string became inapplicable, and its access
method was removed. (Curiously, mParent was not itself removed, but it was
left unused.) Change mParent to mParents, a vector<string>, built by
connectToChannel(). Introduce getParents(), an accessor returning an
iterator_range over that vector.
Change LLNotificationsListener::listChannels() to collect a "parents" key in
the map returned for each channel, and -- for backwards compatibility --
capture the first entry in the "parents" array as "parent".
2014-03-28 10:30:03 -04:00
Tank_Master 6babf8abd2 Merge LL 3.7.7 2014-06-09 11:29:57 -07:00
Ansariel ac7a978f27 Disable notifications test API support 2014-02-18 23:31:29 +01:00
Richard Linden fe518bde8e merge with release 2013-11-06 17:22:04 -08:00
Oz Linden 9c313aea13 merge changes for DRTVWR-336 2013-10-15 17:47:37 -04:00
Richard Linden 80dfbbaacd merge from viewer-release 2013-10-08 11:59:24 -07:00
Richard Linden 52da9f5f49 merge with viewer-release 2013-09-09 18:58:41 -07:00
simon 27d637d0f1 Merge downstream code from CHUIStorm release 2013-08-26 14:43:23 -07:00
Oz Linden 7ca10e5161 merge changes for 3.6.4-release 2013-08-26 15:14:12 -04:00
Graham Madarasz (Graham Linden) 19726783cd MAINT-3046 make LLNotifications clear out vecs of LLNotificationChannelPtr so singleton cleanup doesn't do things it really ought not do 2013-08-23 14:44:46 -07:00
Richard Linden e340009fc5 second phase summer cleaning
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
2013-08-09 17:11:19 -07:00
Nat Goodspeed d2386652f8 CHOP-962: Make LLControlVariable::setPersist() accept only enum.
Initial change made LLControlVariable::mPersist an enum, but retained
bool/BOOL public API. setPersist(true) set one value, setPersist(false) set
another, forcePersist() set the third. Per code review, expose enum to public,
make setPersist() (and LLControlVariable constructor, and LLControlGroup::
declareControl(), and all the LLControlGroup::declareMumble() methods, and all
the unit-test dummy declareMumble() method bodies) accept that enum. Remove
forcePersist(). Fix calls to LLControlGroup::declareMumble() accordingly.
Also rename PERSIST_YES to PERSIST_NONDFT, also per code review.
2013-07-25 16:46:51 -04:00
Jeff (Gioffredo Linden) 24db277777 Restore VITA LLNotiication API 2013-07-25 16:11:26 -04:00
Richard Linden 8554eb5fcd SH-4242 FIX interesting: Mac viewer crashes on exit
made notifications subsystem touch instancetracker<notificationchannel>
in constructor so that teardown order is preserved
2013-06-24 15:01:16 -07:00
Richard Linden 0a96b47663 merge with viewer-release 2013-06-05 19:05:43 -07:00
Graham Madarasz bf6182daa8 Update Mac and Windows breakpad builds to latest 2013-03-29 07:50:08 -07:00
Richard Linden 68f9f656cd merge with viewer-release 2013-03-22 00:44:59 -07:00
Merov Linden faae38daaa Pull merge from lindenlab/viewer-developement 2013-01-30 20:01:03 -08:00
Nicky 86905e89e9 Crash prevention, don't dereference possible 0-pointer. 2013-11-12 10:58:30 +01:00
Tank_Master 6007d1235e merge snowstorm repo 2013-10-19 23:48:44 -07:00
Oz Linden 4dccf30bf3 merge changes for 3.6.7-release 2013-10-03 18:04:27 -04:00
Tank_Master 52d9b07503 Merge viewer-bear 2013-09-12 21:15:34 -07:00
Tank_Master 5a8d94c50f Merge LL 3.6.4 pass 1 2013-08-28 00:10:39 -07:00
Cho b7f4916b3e CHUI-679 FIX Crash when script floater appears in CHUI viewer
LLPostponedNotification now inherits from LLMortician so it can postpone its deletion. This prevents a crash when looking up an avatar name in the case where the name already exists in the cache.
2013-01-15 02:48:52 +00:00
Tank_Master d4640277d0 Merge LL 3.5.3 release. 2013-07-09 16:24:58 -07:00
Tank_Master 14001c54df Gastly CHUI merge pass 1, don't count on anything to work. 2013-06-26 12:14:54 -07:00
Kitty Barnett a9ffc0120a Merged with default tip (Revision 13149a524874)
--HG--
branch : RLVa
2013-05-06 23:54:58 +02:00
Kitty Barnett 4101c43f5f Merged with viewer-sunshine tip (Revision 87a6fc812214)
--HG--
branch : RLVa
2013-02-20 19:25:10 +01:00
Kitty Barnett e1b955226d Merged with viewer-sunshine tip (Revision bd1162cb6fbe)
--HG--
branch : RLVa
2013-02-11 23:04:05 +01:00
Gilbert Gonzales b5172de28f CHUI-660: Post code review changes 2013-01-08 17:06:49 -08:00
Gilbert Gonzales 974720373d CHUI-660: Problem: Upon auto-existing DND mode upon startup, the notification form elements (buttonts) were added to the form. But then deserialized form elements were also being added to the form causing duplicate buttons. As a solution, only add on the deserialized form elements that exceed the amount in the template. 2013-01-08 12:21:47 -08:00
Merov Linden 613b7a45a7 Merge with viewer-chui 2013-01-04 21:33:07 -08:00
Merov Linden fbc414c02b Merge with viewer-chui 2013-01-04 20:28:01 -08:00
Gilbert Gonzales 02ca16c133 CHUI-499: Now when existing DND mode, stored IM's will not show a toast but instead flash the conversation line item and Chat FUI button. 2013-01-04 17:58:30 -08:00
Gilbert Gonzales aa6fee292d CHUI-499: Fixed a serialization problem where the a notification's objectInfo was not being serialized/deserialized. 2013-01-03 14:19:04 -08:00
Merov Linden c2d332a89c CHUI-580 : WIP : Added disconnect of callbacks once they're called to prevent filling up the callback queue 2012-12-17 20:16:33 -08:00
Merov Linden 6fe7144104 CHUI-580 : WIP : Protect callback connections passed to LLAvatarNameCache::get() where necessary 2012-12-17 18:59:01 -08:00
William Todd Stinson c73947ac1f CHUI-499: Adding ability to serialize the communication notifications to local disk per user. 2012-12-18 18:48:15 -08:00
William Todd Stinson 54380ed6d7 Pull and merge ssh://stinson@hg.lindenlab.com/richard/viewer-chui/. 2012-12-05 11:23:37 -08:00
maksymsproductengine fc000880b4 CHUI-519 FIXED Do not put offered items into the trash while in Busy / DND mode 2012-12-05 20:47:21 +02:00
simon@Simon-PC.lindenlab.com 40e78a80cc Pull and merge viewer-development 2012-12-04 14:31:15 -08:00
William Todd Stinson 60c72c85e2 Cleaning up some unreferenced member variables and related types from LLNotifications. 2012-12-03 19:06:52 -08:00
William Todd Stinson 67bc42a80a Pull and merge from ssh://hg@bitbucket.org/lindenlab/viewer-beta. 2012-11-20 16:20:40 -08:00
Richard Linden c0224cc47a merge with viewer-development 2012-11-19 19:06:36 -08:00
Gilbert Gonzales 987350fcb3 CHUI-489: Code review cleanup for both CHUI-489 and CHUI-486. This should be last commit for CHUI-489. 2012-11-15 19:24:45 -08:00
Gilbert Gonzales d3474c6eaf CHUI-489: Now sounds exist for teleport and inventory offers. The sound is specified in notifications.xml. Also changes for CHUI 486, which allow the user to set preferences for hearing sounds for a New Conversation, Incoming Voice Call, Teleport Offer and Inventory Offer. 2012-11-15 15:42:22 -08:00
Richard Linden ed17c181dd SH-3499 WIP Ensure asset stats output is correct
further fixes to implicit conversion of unit types
2012-11-07 15:32:12 -08:00
William Todd Stinson 6e2b3527cc CHUI-475: Ensuring that objects that query the avatar name cache with a callback store the connection and disconnect on object destruction. This should help resolve some of the heap corruption we are seeing. 2012-11-02 13:22:48 -07:00
Kelly Washington c6a5b62152 MAINT-994 Oskar Linden login issues
* Set max persistent notifications to 250
* Don't register for notification callbacks until after peristent ones are loaded.
reviewed with Simon
2012-09-26 14:40:16 -07:00
Nat Goodspeed 730d13a76a Change LLDir::findSkinnedFilenames() to use enum instead of bool.
At Richard's suggestion, changed the bool merge parameter to new enum
ESkinConstraint with values CURRENT_SKIN and ALL_SKINS. This clarifies what
we're requesting at the point of the call.
2012-10-11 19:51:07 -04:00
Nat Goodspeed 3653727e7f Introduce new LLDir::findSkinnedFilenames() method. Use as needed.
In a number of different places, for different reasons, the viewer wants to
load a UI-related file that might be overridden by a non-default skin; and
within that skin, might further be overridden by a non-default language.
Apparently, for each of those use cases, every individual developer approached
it as an entirely new problem, solving it idiosyncratically for that one case.
Not only is this a maintenance problem, but it rubs one's nose in the fact
that most such solutions consider only a subset of the relevant skin
directories.
Richard and I evolved an API intended to address all such cases: a central
LLDir method returning a list of relevant pathnames, from most general to most
localized, filtered to present only existing files; plus a couple of
convenience methods to specifically obtain the most general and most localized
available file.
There were several load-skinned-file methods (LLFloater::buildFromFile(),
LLPanel::buildFromFile() and LLUICtrlFactory::createFromFile() -- apparently
cloned-and-modified from each other) that contained funky bolted-on logic to
output the loaded data to an optional passed LLXMLNodePtr param. The trouble
is that passing that param forced each of these methods to subvert its normal
search: specifically for that case, it needed to find the baseline XML file
instead of the localized one. Richard agreed that for the intended usage
(reformatting XML files) we should use XML schema instead, and that the hacky
functionality should be removed. Remove it. Also remove
LLUICtrlFactory::getLocalizedXMLNode(), only used for those three special cases.
Some callers explicitly passed the optional LLXMLNodePtr param as NULL. Remove
that.
Remove LLFloaterUIPreview::displayFloater(save) param, which relied on the
optional output LLXMLNodePtr param. Make onClickSaveFloater() and
onClickSaveAll() emit popupAndPrintWarning() about discontinued functionality.
Recast LLFloater::buildFromFile(), LLPanel::buildFromFile(),
LLUICtrlFactory::createFromFile(), LLNotifications::loadTemplates(),
LLUI::locateSkin(), LLFontRegistry::parseFontInfo(),
LLUIColorTable::loadFromSettings(), LLUICtrlFactory::loadWidgetTemplate(),
LLUICtrlFactory::getLayeredXMLNode(), LLUIImageList::initFromFile(),
LLAppViewer::launchUpdater() and LLMediaCtrl::navigateToLocalPage() to use
findSkinnedFilenames(). (Is LLAppViewer::launchUpdater() ever called any more?
Apparently so -- though the linux-updater.bin logic to process the relevant
command-line switch has been disabled. Shrug.) (Is
LLMediaCtrl::navigateToLocalPage() ever used?? If so, why?)
Remove LLUI::setupPaths(), getXUIPaths(), getSkinPath() and
getLocalizedSkinPath(). Remove the skins/paths.xml file read by setupPaths().
The only configuration it contained was the pair of partial paths "xui/en" and
"xui/[LANGUAGE]" -- hardly likely to change. getSkinPath() specifically
returned the first of these, while getLocalizedSkinPath() specifically
returned the second. This knowledge is now embedded in findSkinnedFilenames().
Also remove paths.xml from viewer_manifest.py.
Remove injected xui_paths from LLFontGL::initClass() and
LLFontRegistry::LLFontRegistry(). These are no longer needed since
LLFontRegistry can now directly consult LLDir for its path search. Stop
passing LLUI::getXUIPaths() to LLFontGL::initClass() in LLViewerWindow's
constructor and initFonts() method.
Add LLDir::append() and add() methods for the simple task of combining two
path components separated by getDirDelimiter() -- but only if they're both
non-empty. Amazing how often that logic is replicated. Replace some existing
concatenations with add() or append().
New LLDir::findSkinnedFilenames() method must know current language. Allow
injecting current language by adding an LLDir::setSkinFolder(language) param,
and pass it where LLAppViewer::init() and initConfiguration() currently call
setSkinFolder(). Also add LLDir::getSkinFolder() and getLanguage() methods.
Change LLFLoaterUIPreview's LLLocalizationResetForcer helper to "forcibly
reset language" using LLDir::setSkinFolder() instead of LLUI::setupPaths().
Update LLDir stubs in lldir_stub.cpp and llupdaterservice_test.cpp.
Add LLDir::getUserDefaultSkinDir() to obtain often-overlooked possible skin
directory -- like getUserSkinDir() but with "default" in place of the current
skin name as the last path component. (However, we hope findSkinnedFilenames()
obviates most explicit use of such individual skin directory pathnames.)
Add LLDir unit tests for new findSkinnedFilenames() and add() methods -- the
latter exercises append() as well.
Tweak indra/integration_tests/llui_libtest/llui_libtest.cpp for all the above.
Notably, comment out its export_test_floaters() function, since the essential
LLFloater::buildFromFile(optional LLXMLNodePtr) functionality has been
removed. This may mean that llui_libtest.cpp has little remaining value, not
sure.
2012-10-10 14:57:43 -04:00
Todd Stinson 9488baada3 Pull and merge from ssh://hg@bitbucket.org/lindenlab/viewer-beta. 2012-08-09 12:06:09 -07:00
Kitty Barnett 04a6d5832a Merged with .RLVa tip
--HG--
branch : RLVa
2012-08-06 11:24:31 +02:00
Todd Stinson 3e038cd71b Pull and merge from ssh://hg@bitbucket.org/lindenlab/viewer-release. 2012-07-27 12:53:54 -07:00
Richard Linden 176b7d82be CHUI-227 FIX Teleport offers sent are not received
cleaned up serialization of LLSD to param block so that it can round-trip
also, optimized LLXMLNode and fixed an assert
2012-07-23 19:33:39 -07:00
Kitty Barnett 9c395aa0c6 Merged with default tip (Revision f958326781de)
--HG--
branch : RLVa
2012-07-16 01:01:09 +02:00