diff options
| author | Merov Linden <merov@lindenlab.com> | 2011-10-11 16:20:45 -0700 | 
|---|---|---|
| committer | Merov Linden <merov@lindenlab.com> | 2011-10-11 16:20:45 -0700 | 
| commit | 48f7514fbd0db8266b8c70263d9f16f6f4201320 (patch) | |
| tree | c1b3d1f5cb351be2e34a3728ed19105e057b49df /indra/newview | |
| parent | dacfe7b2bdc845640f18db33992924033494e470 (diff) | |
| parent | 7a13cde7604977b32a9f3a027a0ce5b64d52ad9c (diff) | |
Pull from richard/viewer-experience-fui
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/app_settings/commands.xml | 4 | ||||
| -rwxr-xr-x | indra/newview/llagent.cpp | 27 | ||||
| -rw-r--r-- | indra/newview/llagent.h | 4 | ||||
| -rw-r--r-- | indra/newview/llchatitemscontainerctrl.cpp | 5 | ||||
| -rw-r--r-- | indra/newview/llfloatersnapshot.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llnearbychatbar.cpp | 10 | ||||
| -rw-r--r-- | indra/newview/llnearbychatbar.h | 2 | ||||
| -rw-r--r-- | indra/newview/llnearbychathandler.cpp | 2 | 
8 files changed, 32 insertions, 24 deletions
| diff --git a/indra/newview/app_settings/commands.xml b/indra/newview/app_settings/commands.xml index 296d992b34..3625ce5088 100644 --- a/indra/newview/app_settings/commands.xml +++ b/indra/newview/app_settings/commands.xml @@ -215,9 +215,9 @@             icon="Command_Speak_Icon"             label_ref="Command_Speak_Label"             tooltip_ref="Command_Speak_Tooltip" -           execute_function="Agent.ToggleMicrophone" +           execute_function="Agent.PressMicrophone"             execute_parameters="speak" -           execute_stop_function="" +           execute_stop_function="Agent.ReleaseMicrophone"             execute_stop_parameters="speak"             is_enabled_function="Agent.IsActionAllowed"             is_enabled_parameters="speak" diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp index 8303a5942d..31a73c8c31 100755 --- a/indra/newview/llagent.cpp +++ b/indra/newview/llagent.cpp @@ -188,28 +188,23 @@ bool LLAgent::isActionAllowed(const LLSD& sdname)  }  // static  -void LLAgent::toggleMicrophone(const LLSD& name) +void LLAgent::pressMicrophone(const LLSD& name)  { -	gAgent.mMicrophoneOn = ! gAgent.mMicrophoneOn; +	LLFirstUse::speak(false); -	if ( gAgent.mMicrophoneOn ) -	{ -		LLFirstUse::speak(false); +	 LLVoiceClient::getInstance()->inputUserControlState(true); +} -		LLVoiceClient::getInstance()->inputUserControlState(true); -		LLVoiceClient::getInstance()->inputUserControlState(false); -	} -	else -	{ -		LLVoiceClient::getInstance()->inputUserControlState(false); -		LLVoiceClient::getInstance()->inputUserControlState(true); -	} +// static  +void LLAgent::releaseMicrophone(const LLSD& name) +{ +	LLVoiceClient::getInstance()->inputUserControlState(false);  }  // static  bool LLAgent::isMicrophoneOn(const LLSD& sdname)  { -	return gAgent.mMicrophoneOn; +	return LLVoiceClient::getInstance()->getUserPTTState();  }  // ************************************************************ @@ -294,7 +289,6 @@ LLAgent::LLAgent() :  	mGenderChosen(FALSE),  	mVoiceConnected(false), -	mMicrophoneOn(false),  	mAppearanceSerialNum(0), @@ -314,7 +308,8 @@ LLAgent::LLAgent() :  	LLViewerParcelMgr::getInstance()->addAgentParcelChangedCallback(boost::bind(&LLAgent::parcelChangedCallback));  	LLUICtrl::EnableCallbackRegistry::currentRegistrar().add("Agent.IsActionAllowed", boost::bind(&LLAgent::isActionAllowed, _2)); -	LLUICtrl::CommitCallbackRegistry::currentRegistrar().add("Agent.ToggleMicrophone", boost::bind(&LLAgent::toggleMicrophone, _2)); +	LLUICtrl::CommitCallbackRegistry::currentRegistrar().add("Agent.PressMicrophone", boost::bind(&LLAgent::pressMicrophone, _2)); +	LLUICtrl::CommitCallbackRegistry::currentRegistrar().add("Agent.ReleaseMicrophone", boost::bind(&LLAgent::releaseMicrophone, _2));  	LLUICtrl::EnableCallbackRegistry::currentRegistrar().add("Agent.IsMicrophoneOn", boost::bind(&LLAgent::isMicrophoneOn, _2));  } diff --git a/indra/newview/llagent.h b/indra/newview/llagent.h index 0355e68b6e..0f7ed9ce68 100644 --- a/indra/newview/llagent.h +++ b/indra/newview/llagent.h @@ -290,12 +290,12 @@ public:  	bool 			isVoiceConnected() const { return mVoiceConnected; }  	void			setVoiceConnected(const bool b)	{ mVoiceConnected = b; } -	static void		toggleMicrophone(const LLSD& name); +	static void		pressMicrophone(const LLSD& name); +	static void		releaseMicrophone(const LLSD& name);  	static bool		isMicrophoneOn(const LLSD& sdname);  private:  	bool			mVoiceConnected; -	bool			mMicrophoneOn;  	//--------------------------------------------------------------------  	// Chat diff --git a/indra/newview/llchatitemscontainerctrl.cpp b/indra/newview/llchatitemscontainerctrl.cpp index 8584885bc9..9a84280f25 100644 --- a/indra/newview/llchatitemscontainerctrl.cpp +++ b/indra/newview/llchatitemscontainerctrl.cpp @@ -35,6 +35,7 @@  #include "llfloaterreg.h"  #include "lllocalcliprect.h"  #include "lltrans.h" +#include "llnearbychatbar.h"  #include "llviewercontrol.h"  #include "llagentdata.h" @@ -315,12 +316,12 @@ BOOL	LLNearbyChatToastPanel::handleMouseUp	(S32 x, S32 y, MASK mask)  			return TRUE;  		else  		{ -			LLFloaterReg::showInstance("nearby_chat",LLSD()); +			LLNearbyChatBar::getInstance()->showHistory();  			return FALSE;  		}  	} -	LLFloaterReg::showInstance("nearby_chat",LLSD()); +	LLNearbyChatBar::getInstance()->showHistory();  	return LLPanel::handleMouseUp(x,y,mask);  } diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp index 9d020517d8..8105844b0d 100644 --- a/indra/newview/llfloatersnapshot.cpp +++ b/indra/newview/llfloatersnapshot.cpp @@ -2217,7 +2217,7 @@ void LLFloaterSnapshot::draw()  	LLFloater::draw(); -	if (previewp) +	if (previewp && !isMinimized())  	{		  		if(previewp->getThumbnailImage())  		{ diff --git a/indra/newview/llnearbychatbar.cpp b/indra/newview/llnearbychatbar.cpp index 3073a19d83..cd84275ef0 100644 --- a/indra/newview/llnearbychatbar.cpp +++ b/indra/newview/llnearbychatbar.cpp @@ -135,6 +135,16 @@ LLNearbyChatBar* LLNearbyChatBar::getInstance()  	return LLFloaterReg::getTypedInstance<LLNearbyChatBar>("chat_bar");  } +void LLNearbyChatBar::showHistory() +{ +	if (!getChildView("nearby_chat")->getVisible()) +	{ +		onToggleNearbyChatPanel(); +	} +	 +	openFloater(); +} +  void LLNearbyChatBar::draw()  {  	displaySpeakingIndicator(); diff --git a/indra/newview/llnearbychatbar.h b/indra/newview/llnearbychatbar.h index a6fd6e5665..5a7edac1bb 100644 --- a/indra/newview/llnearbychatbar.h +++ b/indra/newview/llnearbychatbar.h @@ -59,6 +59,8 @@ public:  	static void sendChatFromViewer(const std::string &utf8text, EChatType type, BOOL animate);  	static void sendChatFromViewer(const LLWString &wtext, EChatType type, BOOL animate); +	void showHistory(); +  protected:  	static BOOL matchChatTypeTrigger(const std::string& in_str, std::string* out_str);  	static void onChatBoxKeystroke(LLLineEditor* caller, void* userdata); diff --git a/indra/newview/llnearbychathandler.cpp b/indra/newview/llnearbychathandler.cpp index dcf444b048..7503164fe6 100644 --- a/indra/newview/llnearbychathandler.cpp +++ b/indra/newview/llnearbychathandler.cpp @@ -581,7 +581,7 @@ void LLNearbyChatHandler::processChat(const LLChat& chat_msg,		// WARNING - not  	sChatWatcher->post(notification); -	if( nearby_chat->getVisible() +	if( chat_bar->getVisible() && nearby_chat->getVisible()   		|| ( chat_msg.mSourceType == CHAT_SOURCE_AGENT  			&& gSavedSettings.getBOOL("UseChatBubbles") )  		|| !mChannel->getShowToasts() ) // to prevent toasts in Busy mode | 
