(Should not be able to start a call when voice is disabled). Call buttons state now reacts on
voice changes in time.
- Added voiceWorking() method to LLVoiceClient to determine real availability of voice, because voiceEnabled()
doesn't take into account possible errors. Perhaps there is no need in two methods- some investigation will be
made and depending on its results they may become one non-static method. voiceWorking() uses state of voice
client(mState) to determine voice availability. Also some states which are not currently counted by voiceWorking()
as valid may be added if testing reveals problems.
- To enable/disable call buttons in time, LLVoiceClientStatusObserver is used. Its trigger uses states from its
enum only to skip updating button in some states(to avoid button blinking), but to determine button state
LLVoiceClient's voiceWorking() is used.
--HG--
branch : product-engine
Improved the implementation for auto-connecting an adhoc call. This
involved having the controller (LLIMMgr) set a flag in the model
(LLIMModel) to autoconnect on initialize. Now all of the view code
(LLPanelChatControlPanel) and the signal/callback infrastructure that
I added earlier can be removed as it violated MVP separation. Ah!
Much nicer. Thanks to PE folk for the suggestion.
You can now multiple select users in the People panel, hit Call, and
start an ad-hoc voice conference call with those users.
The most difficult part here was automatically starting the call once
the conference chat panel popped up. We have to wait for the panel to
initialize before we can start a call, so I added another callback to
LLIMModel to enable us to get notified when the panel has initialized.
This is all wrapped up behind a new LLAvatarActions::startAdhocCall()
API.
* EXT-449 EXT-131 EXT-464
* People and Places panel layout changes
* Some I18N fixes, test language
* Updated group panels following proposed new design
* made ims easier to read by color coding