Commit Graph

155 Commits (abfe05c1b3d24ed820cf084ece3f3610ec35fa21)

Author SHA1 Message Date
Oz Linden 950c41d184 merge 4.0.4-release and MAINT-5974 2016-05-06 10:28:42 -04: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
Oz Linden bc22e58743 merge changes for 4.0.1-release 2016-01-15 16:55:04 -05: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
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
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
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
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
Todd Stinson 3e038cd71b Pull and merge from ssh://hg@bitbucket.org/lindenlab/viewer-release. 2012-07-27 12:53:54 -07:00