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

Version v4.0.3

This commit is contained in:
hawkeye 2023-11-18 22:28:32 -05:00
parent e37daf1edc
commit 0bfef5f7c6
11 changed files with 82 additions and 74 deletions

View file

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

View file

@ -14,9 +14,9 @@
<RootNamespace>MSFSPopoutPanelManager.MainApp</RootNamespace>
<ApplicationIcon>logo.ico</ApplicationIcon>
<Platforms>x64</Platforms>
<Version>4.0.3.3</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion>
<Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.4</FileVersion>
<DebugType>embedded</DebugType>
<SatelliteResourceLanguages>en</SatelliteResourceLanguages>
<!-- Publishing options -->

View file

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

View file

@ -1,23 +1,19 @@
## Version 4.0.3 Beta 3
## Version 4.0.3
* Fixed CPU rogue cycle issue when using touch feature in pop out panel.
* Added support for PMDG 737 EFB.
* Further improve touch feature responsiveness.
## Version 4.0.3 Beta 2
* Updated logic to turbo mode to help resolve pop out reliability issue.
* Added please wait message when editing panel source to resolve the confusion that Pop Out Panel Manager seems to hang when trying to select panel source during creation of a new aircraft profile.
* Removed pop out failure error message when after pop out predefined camera view has not been setup for an aircraft.
* KNOWN ISSUE: For A2A Comanche PA-24-250, pop out step "Resetting camera view" does not work since this aircraft does not seem to implement SimConnect variable CAMERA_VIEW_TYPE_AND_INDEX:1 which Pop Out Panel Manager uses.
## Version 4.0.3 Beta 1
* Fixed rogue CPU issue when using touch feature in pop out panel which may cause computer to hang.
* Added a new turbo mode to improve execution speed during pop out process. Turbo mode can be turned on in preferences => general settings.
* Added support for PMDG 737 EFB.
* Added please wait message when editing panel source to resolve the confusion that Pop Out Panel Manager seems to hang when trying to select panel source during creation of a new aircraft profile.
* Improved touch reliability when touch feature on pop out panel.
* Removed pop out failure error message when after pop out predefined camera view has not been setup for an aircraft.
* Update text color for pop out progress dialog.
### KNOWN ISSUE:
* For A2A Comanche PA-24-250, pop out step "Resetting camera view" does not work since this aircraft does not seem to implement SimConnect variable CAMERA_VIEW_TYPE_AND_INDEX:1 which Pop Out Panel Manager uses to reset camera view.

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>4.0.3.3</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion>
<Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations>

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>4.0.3.3</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion>
<Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations>

View file

@ -1,28 +1,20 @@
# Version History
<hr/>
## Version 4.0.3 Beta 3
## Version 4.0.3
* Fixed CPU rogue cycle issue when using touch feature in pop out panel.
* Fixed rogue CPU issue when using touch feature in pop out panel which may cause computer to hang.
* Added a new turbo mode to improve execution speed during pop out process. Turbo mode can be turned on in preferences => general settings.
* Added support for PMDG 737 EFB.
* Further improve touch feature responsiveness.
## Version 4.0.3 Beta 2
* Updated logic to turbo mode to help resolve pop out reliability issue.
* Added please wait message when editing panel source to resolve the confusion that Pop Out Panel Manager seems to hang when trying to select panel source during creation of a new aircraft profile.
* Improved touch reliability when touch feature on pop out panel.
* Removed pop out failure error message when after pop out predefined camera view has not been setup for an aircraft.
* KNOWN ISSUE: For A2A Comanche PA-24-250, pop out step "Resetting camera view" does not work since this aircraft does not seem to implement SimConnect variable CAMERA_VIEW_TYPE_AND_INDEX:1 which Pop Out Panel Manager uses.
## Version 4.0.3 Beta 1
* Added a new turbo mode to improve execution speed during pop out process. Turbo mode can be turned on in preferences => general settings.
* Update text color for pop out progress dialog.
## Version 4.0.2

View file

@ -13,10 +13,13 @@ namespace MSFSPopoutPanelManager.WindowsAgent
{
private static IntPtr _hHook = IntPtr.Zero;
private static PInvoke.WindowsHookExProc callbackDelegate = HookCallBack;
private static bool _isTouchDown = false;
private static bool _isTouchDownCompleted = true;
private static bool _isTouchUpCompleted = true;
private static bool _isDragged = false;
private static int _refocusedTaskIndex = 0;
private static object _lock = new object();
private const int PANEL_MENUBAR_HEIGHT = 31;
private const uint TOUCH_FLAG = 0xFF515700;
private const uint WM_MOUSEMOVE = 0x0200;
@ -72,7 +75,7 @@ namespace MSFSPopoutPanelManager.WindowsAgent
{
case WM_LBUTTONDOWN:
case WM_LBUTTONUP:
if (_isTouchDown)
if (!_isTouchDownCompleted)
return 1;
break;
}
@ -97,34 +100,44 @@ namespace MSFSPopoutPanelManager.WindowsAgent
return 1;
case WM_LBUTTONDOWN:
if (!_isTouchDown)
if (_isTouchDownCompleted && _isTouchUpCompleted)
{
_refocusedTaskIndex++;
if (panelConfig.PanelType == PanelType.RefocusDisplay)
return 1;
_isTouchDown = true;
if (_isDragged)
return 1;
lock (_lock)
{
_isTouchDownCompleted = false;
_isTouchUpCompleted = false;
}
Task.Run(() =>
{
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X, info.pt.Y, 0, 0); // focus window
Thread.Sleep(ApplicationSetting.TouchSetting.TouchDownUpDelay + 5);
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X + 1, info.pt.Y + 1, 0, 0); // focus window
Thread.Sleep(ApplicationSetting.TouchSetting.TouchDownUpDelay + 10);
PInvoke.mouse_event(MOUSEEVENTF_LEFTDOWN, info.pt.X, info.pt.Y, 0, 0);
Thread.Sleep(ApplicationSetting.TouchSetting.TouchDownUpDelay + 25);
_isTouchDown = false;
lock (_lock)
{
_isTouchDownCompleted = true;
}
});
}
return 1;
case WM_LBUTTONUP:
if (panelConfig.PanelType == PanelType.RefocusDisplay)
{
Task.Run(() =>
{
_isTouchDown = false;
_isDragged = false;
lock (_lock)
{
_isTouchDownCompleted = true;
_isDragged = false;
_isTouchUpCompleted = true;
}
// Refocus game window
if (ApplicationSetting.RefocusSetting.RefocusGameWindow.IsEnabled && panelConfig.AutoGameRefocus)
@ -145,23 +158,24 @@ namespace MSFSPopoutPanelManager.WindowsAgent
{
Task.Run(() =>
{
SpinWait.SpinUntil(() => !_isTouchDown, TimeSpan.FromSeconds(0.25));
SpinWait.SpinUntil(() => _isTouchDownCompleted, TimeSpan.FromSeconds(0.25));
if (_isDragged)
{
// Need this for PMS GTN750
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X, info.pt.Y, 0, 0);
Thread.Sleep(ApplicationSetting.TouchSetting.TouchDownUpDelay + 25);
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X, info.pt.Y, 0, 0);
_isDragged = false;
}
else
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X, info.pt.Y, 0, 0);
lock (_lock)
{
PInvoke.mouse_event(MOUSEEVENTF_LEFTUP, info.pt.X, info.pt.Y, 0, 0);
_isDragged = false;
_isTouchDownCompleted = true;
_isTouchUpCompleted = true;
}
_isTouchDown = false;
// Refocus game window
if (ApplicationSetting.RefocusSetting.RefocusGameWindow.IsEnabled && panelConfig.AutoGameRefocus)
{
@ -177,13 +191,19 @@ namespace MSFSPopoutPanelManager.WindowsAgent
}
});
}
return 1;
case WM_MOUSEMOVE:
if (_isTouchDown)
if (!_isTouchDownCompleted)
{
_isDragged = true;
lock (_lock)
{
_isDragged = true;
}
return 1;
}
break;
}

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>4.0.3.3</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion>
<Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations>