diff --git a/Essentials Core/PepperDashEssentialsBase/PepperDash_Essentials_Core.projectinfo b/Essentials Core/PepperDashEssentialsBase/PepperDash_Essentials_Core.projectinfo index 1e97c7f6..748d17b0 100644 Binary files a/Essentials Core/PepperDashEssentialsBase/PepperDash_Essentials_Core.projectinfo and b/Essentials Core/PepperDashEssentialsBase/PepperDash_Essentials_Core.projectinfo differ diff --git a/Essentials Core/PepperDashEssentialsBase/Touchpanels/ModalDialog.cs b/Essentials Core/PepperDashEssentialsBase/Touchpanels/ModalDialog.cs index 8af796f1..4df05c6a 100644 --- a/Essentials Core/PepperDashEssentialsBase/Touchpanels/ModalDialog.cs +++ b/Essentials Core/PepperDashEssentialsBase/Touchpanels/ModalDialog.cs @@ -1,6 +1,7 @@ using System; using Crestron.SimplSharp; using Crestron.SimplSharpPro.DeviceSupport; +using PepperDash.Core; namespace PepperDash.Essentials.Core { @@ -97,7 +98,7 @@ namespace PepperDash.Essentials.Core { TriList = triList; // Attach actions to buttons - triList.SetSigFalseAction(Button1Join, () => OnModalComplete(1)); + triList.SetSigFalseAction(Button1Join, () => OnModalComplete(1)); triList.SetSigFalseAction(Button2Join, () => OnModalComplete(2)); triList.SetSigFalseAction(CancelButtonJoin, () => { if (CanCancel) CancelDialog(); }); CanCancel = true; diff --git a/Essentials DM/Essentials_DM/Essentials_DM.projectinfo b/Essentials DM/Essentials_DM/Essentials_DM.projectinfo index 72932922..ace1a86c 100644 Binary files a/Essentials DM/Essentials_DM/Essentials_DM.projectinfo and b/Essentials DM/Essentials_DM/Essentials_DM.projectinfo differ diff --git a/Essentials Devices Common/Essentials Devices Common/Display/SamsungMDCDisplay.cs b/Essentials Devices Common/Essentials Devices Common/Display/SamsungMDCDisplay.cs index 5fe14874..ac4dc4ab 100644 --- a/Essentials Devices Common/Essentials Devices Common/Display/SamsungMDCDisplay.cs +++ b/Essentials Devices Common/Essentials Devices Common/Display/SamsungMDCDisplay.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Text; using Crestron.SimplSharp; +using Crestron.SimplSharpPro.CrestronThread; using Crestron.SimplSharpPro; using PepperDash.Core; using PepperDash.Essentials.Core; @@ -233,11 +234,16 @@ namespace PepperDash.Essentials.Devices.Displays Debug.Console(2, this, "NEW POWER STATE={0}, CURRENT={1}", newVal, _PowerIsOn); if (newVal != _PowerIsOn) { - _PowerIsOn = newVal; - CrestronEnvironment.Sleep(1500); - Debug.Console(2, this, "NEW POWER STATE AFTER PAUSE={0} CURRENT={1}", newVal, _PowerIsOn); - if (newVal != _PowerIsOn) - PowerIsOnFeedback.FireUpdate(); + CrestronInvoke.BeginInvoke(o => + { + CrestronEnvironment.Sleep(1500); + Debug.Console(2, this, "NEW POWER STATE AFTER PAUSE={0} CURRENT={1}", newVal, _PowerIsOn); + if (newVal != _PowerIsOn) + { + _PowerIsOn = newVal; + PowerIsOnFeedback.FireUpdate(); + } + }); } } diff --git a/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.projectinfo b/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.projectinfo index bca34499..7114a127 100644 Binary files a/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.projectinfo and b/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.projectinfo differ diff --git a/Essentials/PepperDashEssentials/PepperDashEssentials.projectinfo b/Essentials/PepperDashEssentials/PepperDashEssentials.projectinfo index 1d8c9804..50a80eda 100644 Binary files a/Essentials/PepperDashEssentials/PepperDashEssentials.projectinfo and b/Essentials/PepperDashEssentials/PepperDashEssentials.projectinfo differ diff --git a/Essentials/PepperDashEssentials/Room/EssentialsHuddleSpaceRoom.cs b/Essentials/PepperDashEssentials/Room/EssentialsHuddleSpaceRoom.cs index aee79fb0..c28d2370 100644 --- a/Essentials/PepperDashEssentials/Room/EssentialsHuddleSpaceRoom.cs +++ b/Essentials/PepperDashEssentials/Room/EssentialsHuddleSpaceRoom.cs @@ -22,10 +22,10 @@ namespace PepperDash.Essentials { var disp = DefaultDisplay as DisplayBase; var val = CurrentSourceInfo != null - && CurrentSourceInfo.Type == eSourceListItemType.Route - && disp != null - && disp.PowerIsOnFeedback.BoolValue; - Debug.Console(2, this, "************** ROOM POWER {0}", val); + && CurrentSourceInfo.Type == eSourceListItemType.Route + && disp != null + && disp.PowerIsOnFeedback.BoolValue; + Debug.Console(2, this, "Display power={0}, has CurrentSource={1}", disp.PowerIsOnFeedback, CurrentSourceInfo != null); return val; }; } @@ -58,14 +58,9 @@ namespace PepperDash.Essentials { var disp = DefaultDisplay as DisplayBase; if (disp != null) - { - Debug.Console(2, this, "IS COOLING FUNC-- Display cooling={0}", disp.IsCoolingDownFeedback.BoolValue); return disp.IsCoolingDownFeedback.BoolValue; - } else - { return false; - } }; } } diff --git a/Essentials/PepperDashEssentials/UI Drivers/EssentialsHuddlePanelAvFunctionsDriver.cs b/Essentials/PepperDashEssentials/UI Drivers/EssentialsHuddlePanelAvFunctionsDriver.cs index a7f239da..6b391df9 100644 --- a/Essentials/PepperDashEssentials/UI Drivers/EssentialsHuddlePanelAvFunctionsDriver.cs +++ b/Essentials/PepperDashEssentials/UI Drivers/EssentialsHuddlePanelAvFunctionsDriver.cs @@ -60,7 +60,7 @@ namespace PepperDash.Essentials set { _DefaultRoomKey = value; - CurrentRoom = DeviceManager.GetDeviceForKey(value) as EssentialsHuddleSpaceRoom; + //CurrentRoom = DeviceManager.GetDeviceForKey(value) as EssentialsHuddleSpaceRoom; } } string _DefaultRoomKey; @@ -523,7 +523,6 @@ namespace PepperDash.Essentials /// void ShutdownPromptTimer_HasFinished(object sender, EventArgs e) { - Debug.Console(2, "UI shutdown prompt finished"); EndMeetingButtonSig.BoolValue = false; } @@ -638,6 +637,7 @@ namespace PepperDash.Essentials _CurrentRoom.IsWarmingUpFeedback.OutputChange -= CurrentRoom_IsWarmingFeedback_OutputChange; _CurrentRoom.IsCoolingDownFeedback.OutputChange -= IsCoolingDownFeedback_OutputChange; } + _CurrentRoom = room; if (_CurrentRoom != null) @@ -679,7 +679,9 @@ namespace PepperDash.Essentials _CurrentRoom.ShutdownPromptTimer.WasCancelled += ShutdownPromptTimer_WasCancelled; // Link up all the change events from the room + Debug.Console(2, "UI -- Room is already on={0} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%", _CurrentRoom.OnFeedback.BoolValue); _CurrentRoom.OnFeedback.OutputChange += CurrentRoom_OnFeedback_OutputChange; + CurrentRoom_SyncOnFeedback(); _CurrentRoom.IsWarmingUpFeedback.OutputChange += CurrentRoom_IsWarmingFeedback_OutputChange; _CurrentRoom.IsCoolingDownFeedback.OutputChange += IsCoolingDownFeedback_OutputChange; @@ -699,6 +701,11 @@ namespace PepperDash.Essentials /// For room on/off changes /// void CurrentRoom_OnFeedback_OutputChange(object sender, EventArgs e) + { + CurrentRoom_SyncOnFeedback(); + } + + void CurrentRoom_SyncOnFeedback() { var value = _CurrentRoom.OnFeedback.BoolValue; Debug.Console(2, CurrentRoom, "UI: Is on event={0}", value); diff --git a/Release Package/PepperDashEssentials.cpz b/Release Package/PepperDashEssentials.cpz index 8def586a..0d479ce0 100644 Binary files a/Release Package/PepperDashEssentials.cpz and b/Release Package/PepperDashEssentials.cpz differ diff --git a/Release Package/PepperDashEssentials.dll b/Release Package/PepperDashEssentials.dll index 5b657b49..e87d25c5 100644 Binary files a/Release Package/PepperDashEssentials.dll and b/Release Package/PepperDashEssentials.dll differ