Resolved ecs-582,602,608

This commit is contained in:
Neil Dorin
2017-10-23 15:34:28 -06:00
parent 23fb8311fe
commit 8dbb3fd898
5 changed files with 167 additions and 76 deletions

View File

@@ -73,6 +73,8 @@ namespace PepperDash.Essentials
StringInputSig HeaderCallButtonIconSig;
BoolFeedback CallSharingInfoVisibleFeedback;
/// <summary>
/// The parent driver for this
@@ -185,12 +187,7 @@ namespace PepperDash.Essentials
CTimer NextMeetingTimer;
/// <summary>
/// Tracks whether the user dismissed the meeting popup, while the system was on. Always false when
/// system is off.
/// </summary>
bool NextMeetingWarningWasDismissed;
/// <summary>
/// <summary>
/// Tracks the last meeting that was cancelled
/// </summary>
Meeting LastMeetingDismissed;
@@ -945,6 +942,16 @@ namespace PepperDash.Essentials
_CurrentRoom.CurrentSingleSourceChange += CurrentRoom_SourceInfoChange;
RefreshSourceInfo();
CallSharingInfoVisibleFeedback = new BoolFeedback(() => _CurrentRoom.VideoCodec.SharingContentIsOnFeedback.BoolValue);
_CurrentRoom.VideoCodec.SharingContentIsOnFeedback.OutputChange += new EventHandler<EventArgs>(SharingContentIsOnFeedback_OutputChange);
CallSharingInfoVisibleFeedback.LinkInputSig(TriList.BooleanInput[UIBoolJoin.CallSharedSourceInfoVisible]);
SetActiveCallListSharingContentStatus();
if (_CurrentRoom != null)
_CurrentRoom.CurrentSingleSourceChange += new SourceInfoChangeHandler(CurrentRoom_CurrentSingleSourceChange);
SetupHeaderButtons();
}
else
@@ -954,6 +961,46 @@ namespace PepperDash.Essentials
}
}
/// <summary>
/// Updates the current shared source label on the call list when the source changes
/// </summary>
/// <param name="room"></param>
/// <param name="info"></param>
/// <param name="type"></param>
void CurrentRoom_CurrentSingleSourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
{
if (_CurrentRoom.VideoCodec.SharingContentIsOnFeedback.BoolValue)
TriList.StringInput[UIStringJoin.CallSharedSourceNameText].StringValue = _CurrentRoom.CurrentSourceInfo.PreferredName;
}
/// <summary>
/// Fires when the sharing source feedback of the codec changes
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void SharingContentIsOnFeedback_OutputChange(object sender, EventArgs e)
{
SetActiveCallListSharingContentStatus();
}
/// <summary>
/// Sets the values for the text and button visibilty for the active call list source sharing info
/// </summary>
void SetActiveCallListSharingContentStatus()
{
CallSharingInfoVisibleFeedback.FireUpdate();
string callListSharedSourceLabel;
if (_CurrentRoom.VideoCodec.SharingContentIsOnFeedback.BoolValue)
callListSharedSourceLabel = _CurrentRoom.CurrentSourceInfo.PreferredName;
else
callListSharedSourceLabel = "None";
TriList.StringInput[UIStringJoin.CallSharedSourceNameText].StringValue = callListSharedSourceLabel;
}
/// <summary>
///
/// </summary>
@@ -1456,7 +1503,6 @@ namespace PepperDash.Essentials
{
PepperDash.Essentials.Core.Touchpanels.Keyboards.HabaneroKeyboardController Keyboard { get; }
JoinedSigInterlock PopupInterlock { get; }
EssentialsHuddleVtc1Room CurrentRoom { get; }
void ShowNotificationRibbon(string message, int timeout);
void HideNotificationRibbon();
void ComputeHeaderCallStatus(VideoCodecBase codec);

View File

@@ -79,9 +79,6 @@ namespace PepperDash.Essentials.UIDrivers.VC
StringBuilder SearchStringBuilder = new StringBuilder();
BoolFeedback SearchStringBackspaceVisibleFeedback;
BoolFeedback CallSharingInfoVisibleFeedback;
//StringFeedback CallSharingInfoTextFeedback;
ModalDialog IncomingCallModal;
eKeypadMode KeypadMode;
@@ -106,7 +103,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
Parent = parent;
SetupCallStagingPopover();
SetupDialKeypad();
ActiveCallsSRL = new SubpageReferenceList(TriList, UISmartObjectJoin.CodecActiveCallsHeaderList, 3, 3, 3);
ActiveCallsSRL = new SubpageReferenceList(triList, UISmartObjectJoin.CodecActiveCallsHeaderList, 5,5,5);
SetupDirectoryList();
SetupRecentCallsList();
SetupFavorites();
@@ -148,7 +145,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
DialStringBackspaceVisibleFeedback = new BoolFeedback(() => DialStringBuilder.Length > 0);
DialStringBackspaceVisibleFeedback
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VCKeypadBackspaceVisible]);
.LinkInputSig(triList.BooleanInput[UIBoolJoin.VCKeypadBackspaceVisible]);
SearchStringFeedback = new StringFeedback(() =>
{
@@ -168,26 +165,21 @@ namespace PepperDash.Essentials.UIDrivers.VC
SearchStringBackspaceVisibleFeedback = new BoolFeedback(() => SearchStringBuilder.Length > 0);
SearchStringBackspaceVisibleFeedback.LinkInputSig(triList.BooleanInput[UIBoolJoin.VCDirectoryBackspaceVisible]);
TriList.SetSigFalseAction(UIBoolJoin.VCDirectoryBackPress, GetDirectoryParentFolderContents);
triList.SetSigFalseAction(UIBoolJoin.VCDirectoryBackPress, GetDirectoryParentFolderContents);
DirectoryBackButtonVisibleFeedback = new BoolFeedback(() => CurrentDirectoryResult != (codec as IHasDirectory).DirectoryRoot);
DirectoryBackButtonVisibleFeedback
.LinkInputSig(TriList.BooleanInput[UIBoolJoin.VCDirectoryBackVisible]);
.LinkInputSig(triList.BooleanInput[UIBoolJoin.VCDirectoryBackVisible]);
TriList.SetSigFalseAction(UIBoolJoin.VCKeypadTextPress, RevealKeyboard);
triList.SetSigFalseAction(UIBoolJoin.VCKeypadTextPress, RevealKeyboard);
TriList.SetSigFalseAction(UIBoolJoin.VCDirectorySearchTextPress, RevealKeyboard);
triList.SetSigFalseAction(UIBoolJoin.VCDirectorySearchTextPress, RevealKeyboard);
//TriList.SetSigFalseAction(UIBoolJoin.VCDirectoryBackspacePress, SearchKeypadBackspacePress);
TriList.SetSigHeldAction(UIBoolJoin.VCDirectoryBackspacePress, 500,
triList.SetSigHeldAction(UIBoolJoin.VCDirectoryBackspacePress, 500,
StartSearchBackspaceRepeat, StopSearchBackspaceRepeat, SearchKeypadBackspacePress);
CallSharingInfoVisibleFeedback = new BoolFeedback(() => Codec.SharingContentIsOnFeedback.BoolValue);
codec.SharingContentIsOnFeedback.OutputChange += new EventHandler<EventArgs>(SharingContentIsOnFeedback_OutputChange);
CallSharingInfoVisibleFeedback.LinkInputSig(triList.BooleanInput[UIBoolJoin.CallSharedSourceInfoVisible]);
Parent.CurrentRoom.CurrentSingleSourceChange += new SourceInfoChangeHandler(CurrentRoom_CurrentSingleSourceChange);
TriList.SetSigFalseAction(UIBoolJoin.CallStopSharingPress, Codec.StopSharing);
triList.SetSigFalseAction(UIBoolJoin.CallStopSharingPress, Codec.StopSharing);
}
catch (Exception e)
{
@@ -195,36 +187,6 @@ namespace PepperDash.Essentials.UIDrivers.VC
}
}
/// <summary>
/// Updates the current shared source label on the call list when the source changes
/// </summary>
/// <param name="room"></param>
/// <param name="info"></param>
/// <param name="type"></param>
void CurrentRoom_CurrentSingleSourceChange(EssentialsRoomBase room, SourceListItem info, ChangeType type)
{
if (Codec.SharingContentIsOnFeedback.BoolValue)
TriList.StringInput[UIStringJoin.CallSharedSourceNameText].StringValue = Parent.CurrentRoom.CurrentSourceInfo.PreferredName;
}
/// <summary>
/// Fires when the sharing source feedback of the codec changes
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void SharingContentIsOnFeedback_OutputChange(object sender, EventArgs e)
{
CallSharingInfoVisibleFeedback.FireUpdate();
string callListSharedSourceLabel;
if (Codec.SharingContentIsOnFeedback.BoolValue)
callListSharedSourceLabel = Parent.CurrentRoom.CurrentSourceInfo.PreferredName;
else
callListSharedSourceLabel = "None";
TriList.StringInput[UIStringJoin.CallSharedSourceNameText].StringValue = callListSharedSourceLabel;
}
/// <summary>
///
@@ -336,6 +298,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
ActiveCallsSRL.StringInputSig(i, 1).StringValue = c.Name;
ActiveCallsSRL.StringInputSig(i, 2).StringValue = c.Number;
ActiveCallsSRL.StringInputSig(i, 3).StringValue = c.Status.ToString();
ActiveCallsSRL.StringInputSig(i, 4).StringValue = string.Format("Participant {0}", i);
ActiveCallsSRL.UShortInputSig(i, 1).UShortValue = (ushort)(c.Type == eCodecCallType.Video ? 2 : 1);
var cc = c; // for scope in lambda
ActiveCallsSRL.GetBoolFeedbackSig(i, 1).SetSigFalseAction(() => Codec.EndCall(cc));