mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-06 00:05:05 +00:00
fixes ecs-521 ecs-522 ecs-526
This commit is contained in:
@@ -447,11 +447,11 @@ namespace PepperDash.Essentials
|
||||
/// <summary>
|
||||
/// 15024
|
||||
/// </summary>
|
||||
public const uint HeaderCallStatusRightPositionVisible = 15024;
|
||||
public const uint HeaderCallStatusLeftPositionVisible = 15024;
|
||||
/// <summary>
|
||||
/// 15025
|
||||
/// </summary>
|
||||
public const uint HeaderCallStatusLeftPositionVisible = 15025;
|
||||
public const uint HeaderCallStatusRightPositionVisible = 15025;
|
||||
/// <summary>
|
||||
/// 15026
|
||||
/// </summary>
|
||||
|
||||
@@ -162,7 +162,7 @@ namespace PepperDash.Essentials
|
||||
/// <summary>
|
||||
/// 3916 The "active call" label
|
||||
/// </summary>
|
||||
public const uint HeaderCallLabel = 3916;
|
||||
public const uint HeaderCallStatusLabel = 3916;
|
||||
|
||||
/// <summary>
|
||||
/// 3922
|
||||
|
||||
@@ -63,10 +63,9 @@ namespace PepperDash.Essentials
|
||||
BoolInputSig ShareButtonSig;
|
||||
BoolInputSig EndMeetingButtonSig;
|
||||
|
||||
public HeaderListButton HeaderCallButton { get; private set; }
|
||||
public HeaderListButton HeaderGearButton { get; private set; }
|
||||
HeaderListButton HeaderCallButton;
|
||||
HeaderListButton HeaderGearButton;
|
||||
|
||||
StringFeedback HeaderCallLabelTextFeedback { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// The parent driver for this
|
||||
@@ -305,6 +304,9 @@ namespace PepperDash.Essentials
|
||||
(CurrentRoom.DefaultDisplay as IPower).PowerToggle();
|
||||
});
|
||||
|
||||
TriList.SetSigFalseAction(UIBoolJoin.HeaderCallStatusButtonPress, () =>
|
||||
PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.HeaderActiveCallsListVisible));
|
||||
|
||||
SetupNextMeetingTimer();
|
||||
|
||||
base.Show();
|
||||
@@ -964,11 +966,52 @@ namespace PepperDash.Essentials
|
||||
blankBut.OutputSig.SetSigFalseAction(() => { });
|
||||
}
|
||||
|
||||
// Call Status Label/Button
|
||||
// Set Call Status Subpage Position
|
||||
|
||||
//HeaderCallLabel = new S
|
||||
if (nextIndex == 1)
|
||||
{
|
||||
// Set to right position
|
||||
TriList.SetBool(UIBoolJoin.HeaderCallStatusLeftPositionVisible, false);
|
||||
TriList.SetBool(UIBoolJoin.HeaderCallStatusRightPositionVisible, true);
|
||||
}
|
||||
else if (nextIndex == 0)
|
||||
{
|
||||
// Set to left position
|
||||
TriList.SetBool(UIBoolJoin.HeaderCallStatusLeftPositionVisible, true);
|
||||
TriList.SetBool(UIBoolJoin.HeaderCallStatusRightPositionVisible, false);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Evaluates the call status and sets the icon mode and text label
|
||||
/// </summary>
|
||||
public void ComputeHeaderCallStatus(VideoCodecBase codec)
|
||||
{
|
||||
// Set mode of header button
|
||||
if (!codec.IsInCall)
|
||||
{
|
||||
HeaderCallButton.SetIcon(HeaderListButton.OnHook);
|
||||
}
|
||||
else if (codec.ActiveCalls.Any(c => c.Type == eCodecCallType.Video))
|
||||
HeaderCallButton.SetIcon(HeaderListButton.Camera);
|
||||
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 2);
|
||||
else
|
||||
HeaderCallButton.SetIcon(HeaderListButton.Phone);
|
||||
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 1);
|
||||
|
||||
// Set the call status text
|
||||
if (codec.ActiveCalls.Count > 0)
|
||||
{
|
||||
if (codec.ActiveCalls.Count == 1)
|
||||
TriList.SetString(UIStringJoin.HeaderCallStatusLabel, "1 Active Call");
|
||||
else if (codec.ActiveCalls.Count > 1)
|
||||
TriList.SetString(UIStringJoin.HeaderCallStatusLabel, string.Format("{0} Active Calls", codec.ActiveCalls.Count));
|
||||
}
|
||||
else
|
||||
TriList.SetString(UIStringJoin.HeaderCallStatusLabel, "No Active Calls");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
@@ -1255,8 +1298,7 @@ namespace PepperDash.Essentials
|
||||
JoinedSigInterlock PopupInterlock { get; }
|
||||
void ShowNotificationRibbon(string message, int timeout);
|
||||
void HideNotificationRibbon();
|
||||
HeaderListButton HeaderGearButton { get; }
|
||||
HeaderListButton HeaderCallButton { get; }
|
||||
void ComputeHeaderCallStatus(VideoCodecBase codec);
|
||||
SubpageReferenceList MeetingOrContactMethodModalSrl { get; }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -180,6 +180,8 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
{
|
||||
TriList.SetString(UIStringJoin.RoomPhoneText, Codec.CodecInfo.PhoneNumber);
|
||||
TriList.SetString(UIStringJoin.RoomSipText, Codec.CodecInfo.SipUri);
|
||||
|
||||
Parent.ComputeHeaderCallStatus(Codec);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -245,16 +247,8 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
StagingBarsInterlock.ShowInterlocked(Codec.IsInCall ?
|
||||
UIBoolJoin.VCStagingActivePopoverVisible : UIBoolJoin.VCStagingInactivePopoverVisible);
|
||||
|
||||
// Set mode of header button
|
||||
if (!Codec.IsInCall)
|
||||
Parent.HeaderCallButton.SetIcon(HeaderListButton.OnHook);
|
||||
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 0);
|
||||
else if (Codec.ActiveCalls.Any(c => c.Type == eCodecCallType.Video))
|
||||
Parent.HeaderCallButton.SetIcon(HeaderListButton.Camera);
|
||||
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 2);
|
||||
else
|
||||
Parent.HeaderCallButton.SetIcon(HeaderListButton.Phone);
|
||||
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 1);
|
||||
|
||||
Parent.ComputeHeaderCallStatus(Codec);
|
||||
|
||||
// Update list of calls
|
||||
UpdateCallsHeaderList(call);
|
||||
@@ -697,7 +691,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
{
|
||||
var kb = Parent.Keyboard;
|
||||
kb.KeyPress += new EventHandler<PepperDash.Essentials.Core.Touchpanels.Keyboards.KeyboardControllerPressEventArgs>(Keyboard_KeyPress);
|
||||
kb.HideAction = this.DetachKeyboard;
|
||||
kb.HideAction = this.DetachDialKeyboard;
|
||||
kb.GoButtonText = "Connect";
|
||||
kb.GoButtonVisible = true;
|
||||
DialStringKeypadCheckEnables();
|
||||
@@ -706,8 +700,8 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
else if(VCControlsInterlock.CurrentJoin == UIBoolJoin.VCDirectoryVisible)
|
||||
{
|
||||
var kb = Parent.Keyboard;
|
||||
kb.KeyPress += Keyboard_KeyPress;
|
||||
kb.HideAction = this.DetachKeyboard;
|
||||
kb.KeyPress += new EventHandler<KeyboardControllerPressEventArgs>(Search_KeyPress);
|
||||
kb.HideAction = this.DetachSearchKeyboard;
|
||||
kb.GoButtonText = "Search";
|
||||
kb.GoButtonVisible = true;
|
||||
SearchStringKeypadCheckEnables();
|
||||
@@ -715,6 +709,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
@@ -739,8 +734,12 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
}
|
||||
DialStringFeedback.FireUpdate();
|
||||
DialStringKeypadCheckEnables();
|
||||
}
|
||||
else if (VCControlsInterlock.CurrentJoin == UIBoolJoin.VCDirectoryVisible)
|
||||
}
|
||||
}
|
||||
|
||||
void Search_KeyPress(object sender, KeyboardControllerPressEventArgs e)
|
||||
{
|
||||
if (VCControlsInterlock.CurrentJoin == UIBoolJoin.VCDirectoryVisible)
|
||||
{
|
||||
if (e.Text != null)
|
||||
SearchStringBuilder.Append(e.Text);
|
||||
@@ -759,15 +758,18 @@ namespace PepperDash.Essentials.UIDrivers.VC
|
||||
SearchStringFeedback.FireUpdate();
|
||||
SearchStringKeypadCheckEnables();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
void DetachKeyboard()
|
||||
void DetachDialKeyboard()
|
||||
{
|
||||
Parent.Keyboard.KeyPress -= Keyboard_KeyPress;
|
||||
}
|
||||
|
||||
void DetachSearchKeyboard()
|
||||
{
|
||||
Parent.Keyboard.KeyPress -= Search_KeyPress;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Shows the camera controls subpage
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user