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> <PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.DomainModel</RootNamespace> <RootNamespace>MSFSPopoutPanelManager.DomainModel</RootNamespace>
<Platforms>x64</Platforms> <Platforms>x64</Platforms>
<Version>4.0.3.3</Version> <Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion> <AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion> <FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier> <RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType> <DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations> <Configurations>Debug;Release;Local</Configurations>

View file

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

View file

@ -11,9 +11,9 @@
<PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl> <PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.Orchestration</RootNamespace> <RootNamespace>MSFSPopoutPanelManager.Orchestration</RootNamespace>
<Platforms>x64</Platforms> <Platforms>x64</Platforms>
<Version>4.0.3.3</Version> <Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion> <AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion> <FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier> <RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType> <DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations> <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. * Fixed rogue CPU issue when using touch feature in pop out panel which may cause computer to hang.
* 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
* Added a new turbo mode to improve execution speed during pop out process. Turbo mode can be turned on in preferences => general settings. * 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. * 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> <PackageProjectUrl>https://github.com/hawkeye-stan/msfs-popout-panel-manager</PackageProjectUrl>
<RootNamespace>MSFSPopoutPanelManager.Shared</RootNamespace> <RootNamespace>MSFSPopoutPanelManager.Shared</RootNamespace>
<Platforms>x64</Platforms> <Platforms>x64</Platforms>
<Version>4.0.3.3</Version> <Version>4.0.3.4</Version>
<AssemblyVersion>4.0.3.3</AssemblyVersion> <AssemblyVersion>4.0.3.4</AssemblyVersion>
<FileVersion>4.0.3.3</FileVersion> <FileVersion>4.0.3.4</FileVersion>
<RuntimeIdentifier>win-x64</RuntimeIdentifier> <RuntimeIdentifier>win-x64</RuntimeIdentifier>
<DebugType>Embedded</DebugType> <DebugType>Embedded</DebugType>
<Configurations>Debug;Release;Local</Configurations> <Configurations>Debug;Release;Local</Configurations>

View file

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

View file

@ -1,28 +1,20 @@
# Version History # Version History
<hr/> <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. * 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. * 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. * 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. * Update text color for pop out progress dialog.
## Version 4.0.2 ## Version 4.0.2

View file

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

View file

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