1
0
Fork 0
mirror of https://github.com/hawkeye-stan/msfs-popout-panel-manager.git synced 2024-10-16 06:00:45 +00:00

Started development v3.4.2

This commit is contained in:
Stanley 2022-08-18 10:20:12 -04:00
parent deea4bc739
commit d570536c14
18 changed files with 93 additions and 90 deletions

View file

@ -10,9 +10,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.ArduinoAgent</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -10,9 +10,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.Orchestration</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -28,11 +28,11 @@ namespace MSFSPopoutPanelManager.Orchestration
var panelsStartingLeft = GetPanelMenubarStartingLeft(sourceImage, rectangle, panelMenubarTop + 5);
// The center of magnifying glass icon is around (3.2 x height of menubar) to the right of the panel menubar starting left
// The center of magnifying glass icon is around (2.8 x height of menubar) to the right of the panel menubar starting left
// But need to use higher number here to click the left side of magnifying glass icon because on some panel, the ratio is smaller
var menubarHeight = panelMenubarBottom - panelMenubarTop;
var magnifyingIconXCoor = panelsStartingLeft - Convert.ToInt32(menubarHeight * 3.2); // ToDo: play around with this multiplier to find the best for all resolutions
var magnifyingIconYCoor = panelMenubarTop + Convert.ToInt32(menubarHeight / 2);
var magnifyingIconXCoor = panelsStartingLeft - Convert.ToInt32(menubarHeight * 2.8); // ToDo: play around with this multiplier to find the best for all resolutions
var magnifyingIconYCoor = panelMenubarTop + Convert.ToInt32(menubarHeight / 2.2);
return new Point(magnifyingIconXCoor, magnifyingIconYCoor);
}

View file

@ -237,11 +237,7 @@ namespace MSFSPopoutPanelManager.Orchestration
// Need to move the window to upper left corner first. There is a possible bug in the game that panel pop out to full screen that prevents further clicking.
if (handle != IntPtr.Zero)
WindowActionManager.MoveWindow(handle, 0, 0, 800, 600);
// Make window always on top to make sure it is clickable and not obstruct by other user windows
//WindowActionManager.ApplyAlwaysOnTop(handle, PanelType.WPFWindow, true);
//Thread.Sleep(500);
WindowActionManager.MoveWindow(handle, 0, 0, 1000, 500);
if (i > 1)
SeparatePanel(panels[0].PanelHandle); // The joined panel is always the first panel that got popped out
@ -260,7 +256,8 @@ namespace MSFSPopoutPanelManager.Orchestration
}
// Fix SU10+ bug where pop out window after separation is huge
WindowActionManager.MoveWindow(handle, -8, 0, 800, 600);
if (i > 1)
WindowActionManager.MoveWindow(handle, -8, 0, 800, 600);
var panel = new PanelConfig();
panel.PanelHandle = handle;
@ -276,11 +273,7 @@ namespace MSFSPopoutPanelManager.Orchestration
PInvoke.SetWindowText(panel.PanelHandle, panel.PanelName + " (Custom)");
}
// Remove window always on top setting
//WindowActionManager.ApplyAlwaysOnTop(panels[0].PanelHandle, PanelType.WPFWindow, false);
//Thread.Sleep(500);
//Performance validation, make sure the number of pop out panels is equal to the number of selected panel
//Perform validation, make sure the number of pop out panels is equal to the number of selected panel
if (WindowActionManager.GetWindowsCountByPanelType(new List<PanelType>() { PanelType.CustomPopout }) != ActiveProfile.PanelSourceCoordinates.Count)
{
StatusMessageWriter.WriteMessage("Unable to pop out all panels. Please align all panel number circles with in-game panel locations.", StatusMessageType.Error, false);
@ -292,11 +285,7 @@ namespace MSFSPopoutPanelManager.Orchestration
private void SeparatePanel(IntPtr hwnd)
{
// Resize all windows to 800x600 when separating and shimmy the panel
// MSFS draws popout panel differently at different time for same panel
// ToDo: Need to figure mouse click code to separate window
WindowActionManager.MoveWindow(hwnd, -8, 0, 800, 600);
PInvoke.SetForegroundWindow(hwnd);
Thread.Sleep(500);

View file

@ -181,6 +181,7 @@ namespace MSFSPopoutPanelManager.Orchestration
if (matchedProfile != null && !matchedProfile.BindingAircrafts.Any(a => a == aircraftName))
{
matchedProfile.BindingAircrafts.Add(aircraftName);
matchedProfile.BindingAircraftLiveries.Remove(liveryName);
WriteProfiles();
RefreshProfile();
}

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.Shared</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -172,7 +172,6 @@ namespace MSFSPopoutPanelManager.SimConnectAgent
_simConnector.SetDataObject(defineId, enable ? Convert.ToDouble(1) : Convert.ToDouble(0));
}
private void HandleSimConnected(object source, EventArgs e)
{
// Start data request timer
@ -228,6 +227,7 @@ namespace MSFSPopoutPanelManager.SimConnectAgent
DetectFlightStartedOrStopped();
}
private const int CAMERA_STATE_INIT = 0;
private const int CAMERA_STATE_COCKPIT = 2;
private const int CAMERA_STATE_LOAD_SCREEN = 11;
private const int CAMERA_STATE_HOME_SCREEN = 15;
@ -243,6 +243,7 @@ namespace MSFSPopoutPanelManager.SimConnectAgent
switch (_currentCameraState)
{
case CAMERA_STATE_INIT:
case CAMERA_STATE_HOME_SCREEN:
case CAMERA_STATE_LOAD_SCREEN:
if (cameraState == CAMERA_STATE_COCKPIT)
@ -262,7 +263,7 @@ namespace MSFSPopoutPanelManager.SimConnectAgent
break;
}
if (cameraState == CAMERA_STATE_COCKPIT || cameraState == CAMERA_STATE_HOME_SCREEN || cameraState == CAMERA_STATE_LOAD_SCREEN)
if (cameraState == CAMERA_STATE_INIT || cameraState == CAMERA_STATE_COCKPIT || cameraState == CAMERA_STATE_HOME_SCREEN || cameraState == CAMERA_STATE_LOAD_SCREEN)
_currentCameraState = cameraState;
}

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.SimConnectAgent</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.TouchPanelAgent</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -10,9 +10,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.UserDataAgent</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -2,19 +2,21 @@
<hr/>
## Version 3.4.2
* Major change in how profile is being bound to aircraft. A profile is no longer bound to a livery but instead it is bound to an aircraft so you do not have to manual activate binding for individual livery for the same plane. This has been a long awaited request.
* Major change in how profile is bound to an aircraft. Previously, a profile is bound to an aircraft livery which requires you to activate binding when switching livery for the same aircraft. With this update, a profile is now bound to an aircraft so you no longer need to perform the binding step when switching livery. As you change active aircraft to fly, all existing livery binding will be automatically converted to aircraft binding if one exists. Also, a profile can still be bound to multiple aircrafts if you so choose such as when flying multiple variations of Cessna 172. This change has been a long awaited request to simplify your profile bindings.
* Auto assign aircraft binding when profile is initially created if the active aircraft has no previous profile binding specify.
* Added auto assignment of aircraft binding for a newly created profile if the active aircraft has no previous profile binding specified.
* Implemented work around for SU10+ issue where after panel separation, the panel's size is huge which blocked most of the game window for lower resolution screen and prevented Pop Out Panel Manager from popping out the next panel.
* Added new keyboard shortcuts to move and resize pop outs. Please click on a new information icon in the upper right corner of panel configuration screen for instruction in how to use these new keyboard shortcuts.
* Implement key binding to move and resize pop outs.
* Added new setting to minimize pop out manager after panels have been popped out.
* Added setting to minimize pop out manager after panels have been popped out.
* Added work around for SU10 Beta issue when after panel separations, panels' size become so big and they block most of the game window for lower resolution screen and prevented Pop Out Panel Manager from popping out the next panel.
* Made improvement to how panels are separated when using multiple monitors.
Known issue:
* When changing the width or height of a pop up that has Hide Title Bar enable, it will sometime break the Hide Title Bar setting and the only way to fix is to re-pop out the panel.
* When changing the width or height of a pop up that has Hide Title Bar enable, it will sometime break the Hide Title Bar setting and the only way to fix this is to re-pop out the panel. Currently, this is a bug in MSFS in how it handles the sizing and rendering of pop outs window.
## Version 3.4.1

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.WebServer</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -68,7 +68,7 @@ namespace MSFSPopoutPanelManager.WindowsAgent
InputSimulator.Mouse.LeftButtonUp();
}
public static void PopOutPanel(int x, int y, bool useCtrlShift)
public static void PopOutPanel(int x, int y, bool useSecondaryKeys)
{
LeftClick(x, y);
Thread.Sleep(300);
@ -77,7 +77,7 @@ namespace MSFSPopoutPanelManager.WindowsAgent
PInvoke.SetCursorPos(x, y);
Thread.Sleep(300);
if (useCtrlShift)
if (useSecondaryKeys)
{
InputSimulator.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.LCONTROL);
InputSimulator.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.RCONTROL);

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.WindowsAgent</RootNamespace>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;DebugTouchPanel;ReleaseTouchPanel</Configurations>

View file

@ -12,7 +12,7 @@
Background="Transparent">
<Grid Margin="20,10,20,0">
<WrapPanel>
<TextBlock Margin="0,10,0,10">To configure a panel, first click on the arrow to the left of the panel name. When panel is selected, the arrow will turn red.</TextBlock>
<TextBlock Margin="0,10,0,10" TextWrapping="Wrap">To configure a panel, first click on the arrow to the left of the panel name. When panel is selected, the arrow will turn red. To end panel configuration using keyboard shortcuts, just click anywhere in the panel configuration grid.</TextBlock>
<TextBlock>
<Run Foreground="LightSkyBlue">Up Arrow</Run> - Move panel up by 10 pixels<LineBreak/>
<Run Foreground="LightSkyBlue">Down Arrow</Run> - Move panel down by 10 pixels<LineBreak/>

View file

@ -45,29 +45,33 @@ namespace MSFSPopoutPanelManager.WpfApp.ViewModel
.ObservesProperty(() => ProfileData.ActiveProfile)
.ObservesProperty(() => FlightSimData.IsSimulatorStarted);
StartPanelSelectionCommand = new DelegateCommand(OnStartPanelSelection, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile != null && FlightSimData.IsSimulatorStarted)
StartPanelSelectionCommand = new DelegateCommand(OnStartPanelSelection, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile != null && FlightSimData.IsSimulatorStarted && FlightSimData.IsEnteredFlight)
.ObservesProperty(() => FlightSimData.HasCurrentMsfsAircraft)
.ObservesProperty(() => ProfileData.ActiveProfile)
.ObservesProperty(() => FlightSimData.IsSimulatorStarted);
.ObservesProperty(() => FlightSimData.IsSimulatorStarted)
.ObservesProperty(() => FlightSimData.IsEnteredFlight);
StartPopOutCommand = new DelegateCommand(OnStartPopOut, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && (ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 || ProfileData.ActiveProfile.TouchPanelBindings.Count > 0) && FlightSimData.IsSimulatorStarted)
StartPopOutCommand = new DelegateCommand(OnStartPopOut, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && (ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 || ProfileData.ActiveProfile.TouchPanelBindings.Count > 0) && FlightSimData.IsSimulatorStarted && FlightSimData.IsEnteredFlight)
.ObservesProperty(() => FlightSimData.HasCurrentMsfsAircraft)
.ObservesProperty(() => ProfileData.ActiveProfile)
.ObservesProperty(() => ProfileData.ActiveProfile.PanelSourceCoordinates.Count)
.ObservesProperty(() => ProfileData.ActiveProfile.TouchPanelBindings.Count)
.ObservesProperty(() => FlightSimData.IsSimulatorStarted);
.ObservesProperty(() => FlightSimData.IsSimulatorStarted)
.ObservesProperty(() => FlightSimData.IsEnteredFlight);
SaveAutoPanningCameraCommand = new DelegateCommand(OnSaveAutoPanningCamera, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 && FlightSimData.IsSimulatorStarted)
SaveAutoPanningCameraCommand = new DelegateCommand(OnSaveAutoPanningCamera, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 && FlightSimData.IsSimulatorStarted && FlightSimData.IsEnteredFlight)
.ObservesProperty(() => FlightSimData.HasCurrentMsfsAircraft)
.ObservesProperty(() => ProfileData.ActiveProfile)
.ObservesProperty(() => ProfileData.ActiveProfile.PanelSourceCoordinates.Count)
.ObservesProperty(() => FlightSimData.IsSimulatorStarted);
.ObservesProperty(() => FlightSimData.IsSimulatorStarted)
.ObservesProperty(() => FlightSimData.IsEnteredFlight);
EditPanelSourceCommand = new DelegateCommand(EditPanelSource, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 && FlightSimData.IsSimulatorStarted)
EditPanelSourceCommand = new DelegateCommand(EditPanelSource, () => FlightSimData.HasCurrentMsfsAircraft && ProfileData.HasActiveProfile && ProfileData.ActiveProfile.PanelSourceCoordinates.Count > 0 && FlightSimData.IsSimulatorStarted && FlightSimData.IsEnteredFlight)
.ObservesProperty(() => FlightSimData.HasCurrentMsfsAircraft)
.ObservesProperty(() => ProfileData.ActiveProfile)
.ObservesProperty(() => ProfileData.ActiveProfile.PanelSourceCoordinates.Count)
.ObservesProperty(() => FlightSimData.IsSimulatorStarted);
.ObservesProperty(() => FlightSimData.IsSimulatorStarted)
.ObservesProperty(() => FlightSimData.IsEnteredFlight);
OpenTouchPanelBindingCommand = new DelegateCommand(OnOpenTouchPanelBinding, () => FlightSimData.HasCurrentMsfsAircraft && FlightSimData.IsSimulatorStarted && ProfileData.HasActiveProfile && AppSettingData.AppSetting.TouchPanelSettings.EnableTouchPanelIntegration)
.ObservesProperty(() => FlightSimData.HasCurrentMsfsAircraft)

View file

@ -14,9 +14,9 @@
<RootNamespace>MSFSPopoutPanelManager.WpfApp</RootNamespace>
<ApplicationIcon>logo.ico</ApplicationIcon>
<Platforms>x64</Platforms>
<Version>3.4.1.0</Version>
<AssemblyVersion>3.4.1.0</AssemblyVersion>
<FileVersion>3.4.1.0</FileVersion>
<Version>3.4.2.0</Version>
<AssemblyVersion>3.4.2.0</AssemblyVersion>
<FileVersion>3.4.2.0</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>embedded</DebugType>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
@ -69,13 +69,13 @@
<ItemGroup>
<PackageReference Include="Autoupdater.NET.Official" Version="1.7.0" />
<PackageReference Include="CalcBinding" Version="2.5.2" />
<PackageReference Include="CoordinateSharp" Version="2.13.1.1" />
<PackageReference Include="CoordinateSharp" Version="2.13.1.1" Condition=" '$(Configuration)' == 'ReleaseTouchPanel' "/>
<PackageReference Include="Fody" Version="6.6.3">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
<PackageReference Include="Hardcodet.NotifyIcon.Wpf" Version="1.1.0" />
<PackageReference Include="ini-parser-netcore3.1" Version="3.0.0" />
<PackageReference Include="ini-parser-netcore3.1" Version="3.0.0" Condition=" '$(Configuration)' == 'ReleaseTouchPanel' "/>
<PackageReference Include="InputSimulatorCore" Version="1.0.5" />
<PackageReference Include="log4net" Version="2.0.14" />
<PackageReference Include="MahApps.Metro" Version="2.4.9" />
@ -109,7 +109,11 @@
<ItemGroup>
<Skipper Include="$(SolutionDir)\Assets\Community\zzz-ready-to-fly-button-skipper\**"></Skipper>
<MobiFlight Include="$(SolutionDir)\Assets\Community\mobiflight-event-module\**"></MobiFlight>
<License Include="$(SolutionDir)\LICENSE"></License>
<Version Include="$(SolutionDir)\VERSION.md"></Version>
</ItemGroup>
<Copy SourceFiles="@(License)" DestinationFolder="$(PublishDir)" SkipUnchangedFiles="false" OverwriteReadOnlyFiles="true" />
<Copy SourceFiles="@(Version)" DestinationFolder="$(PublishDir)" SkipUnchangedFiles="false" OverwriteReadOnlyFiles="true" />
<Copy SourceFiles="@(Skipper)" DestinationFolder="$(PublishDir)Community\zzz-ready-to-fly-button-skipper\%(RecursiveDir)" SkipUnchangedFiles="false" OverwriteReadOnlyFiles="true" />
<Copy SourceFiles="@(MobiFlight)" DestinationFolder="$(PublishDir)Community\mobiflight-event-module\%(RecursiveDir)" SkipUnchangedFiles="false" OverwriteReadOnlyFiles="true" Condition=" '$(Configuration)' == 'ReleaseTouchPanel' " />
</Target>

View file

@ -1,34 +1,36 @@
Version 3.4.1.0
Version 3.4.2.0
This release is optional and changes in this release is solely focused on addressing issues
regarding touch panel capabilities as well as making improvements to touch feature. Panels
I used for testing are PMT GTN750, WT G3X mod, PMS GTN530, FBW A32NX EFB, King Air 350
PFD/MFD touch screen.
When using SpaceDesk, if touch is not registering consistently, please increase touch down
touch up delay to 25ms or higher in preferences touch settings to improve sensitivity for
touch input.
This release is optional and please feel to skip this update.
Change Log:
* Implemented new algorithm to improve general performance for touch panel.
* Major change in how profile is bound to an aircraft. Previously, a profile is bound to an
aircraft livery which requires you to activate binding when switching livery for the same
aircraft. With this update, a profile is now bound to an aircraft so you no longer need to
perform the binding step when switching livery. As you change active aircraft to fly, all
existing livery binding will be automatically converted to aircraft binding if one exists.
Also, a profile can still be bound to multiple aircrafts if you so choose such as when
flying multiple variations of Cessna 172. This change has been a long awaited request to
simplify your profile bindings.
* Button touches are now more responsive. On touch monitor, lag after touch had been
minimized and is now performing much closer to a mouse click. On SpaceDesk, the lag is more
in line with latency of remote display technology. When using SpaceDesk, you can increase
touch delay to 25ms in preference settings to account for the latency if your touch is not
register consistently.
* Added auto assignment of aircraft binding for a newly created profile if the active
aircraft has no previous profile binding specified.
* You can now slide your finger to pan map in panel. There is still a slight delay but touch
response is much improved.
* Added new keyboard shortcuts to move and resize pop outs. Please click on a new
information icon in the upper right corner of panel configuration screen for instruction in
how to use these new keyboard shortcuts.
* Full screen mode for touch panel can now be turned on.
* Added new setting to minimize pop out manager after panels have been popped out.
* Improved scroll bars touch response. They can be dragged and moved much more easily.
* Added work around for SU10 Beta issue when after panel separations, panels' size become
so big and they block most of the game window for lower resolution screen and prevented Pop
Out Panel Manager from popping out the next panel.
* Added adjustable flight control refocus (0.5 sec to 2 sec). The lowest setting makes flight
control input refocus seems instantaneous after touch inactivity.
* Made improvement to how panels are separated when using multiple monitors.
* Added ability to disable flight control refocus for a panel. Set panel to "Disable Game
Refocus" will be useful in panel such as Flybywire A32NX EFB since textbox entries in this
panel will lose focus if mouse cursor moves away from EFB.
Known issue:
* When changing the width or height of a pop up that has Hide Title Bar enable, it will
sometime break the Hide Title Bar setting and the only way to fix this is to re-pop out the
panel. Currently, this is a bug in MSFS in how it handles the sizing and rendering of pop
outs window.