[MouseJump][CQ]Refactor "common" classes into a separate project (#34333)
* [Mouse Jump] - moving common code to MouseJump.Common project - #25482 * [Mouse Jump] - fixing warnings in MouseJump.Common - #25482 * [MouseJump] - cherrypick 5653b4 - Exclude MouseJump Common tests from the checks # Conflicts: # src/modules/MouseUtils/MouseJump.Common.UnitTests/MouseJump.Common.UnitTests.csproj * [mOuSEjUMP] - cherry pick 61aab9 - Fix ci build issues # Conflicts: # src/modules/MouseUtils/MouseJump.Common.UnitTests/MouseJump.Common.UnitTests.csproj * [Mouse Jump] - remove project type guids - #25482 * [Mouse Jump] - simplify mousejump *.csproj files - #25482 * [Mouse Jump] - fixing broken tests - #25482 * [Mouse Jump] - fixing broken build - #25482 * [Mouse Jump] - editing MouseJump.Common.UnitTests.csproj - #25482 * [Mouse Jump] - editing MouseJump.Common.csproj (UseWindowsForms=true) - #25482 * [Mouse Jump] - fixing spellcheck - #25482 * [MouseJump] - enabled implicit usings - #25482 * [Mouse Jump] - re-add csproj attributes - #27511 * ci: Fix signing of Common dll --------- Co-authored-by: Clayton <mike.clayton@delinian.com>
@ -166,6 +166,7 @@
|
||||
"PowerToys.FindMyMouse.dll",
|
||||
"PowerToys.MouseHighlighter.dll",
|
||||
"PowerToys.MouseJump.dll",
|
||||
"PowerToys.MouseJump.Common.dll",
|
||||
"PowerToys.MousePointerCrosshairs.dll",
|
||||
"PowerToys.MouseJumpUI.dll",
|
||||
"PowerToys.MouseJumpUI.exe",
|
||||
|
@ -15,7 +15,7 @@ Param(
|
||||
$referencedFileVersionsPerDll = @{}
|
||||
$totalFailures = 0
|
||||
|
||||
Get-ChildItem $targetDir -Recurse -Filter *.deps.json -Exclude UITests-FancyZones* | ForEach-Object {
|
||||
Get-ChildItem $targetDir -Recurse -Filter *.deps.json -Exclude UITests-FancyZones*,MouseJump.Common.UnitTests* | ForEach-Object {
|
||||
# Temporarily exclude FancyZones UI tests because of Appium.WebDriver dependencies
|
||||
$depsJsonFullFileName = $_.FullName
|
||||
$depsJsonFileName = $_.Name
|
||||
|
@ -69,7 +69,7 @@
|
||||
<PackageVersion Include="System.Data.SqlClient" Version="4.8.6" />
|
||||
<!-- Package System.Diagnostics.EventLog added as a hack for being able to exclude the runtime assets so they don't conflict with 8.0.1. This is a dependency of System.Data.OleDb but the 8.0.1 version wasn't published to nuget. -->
|
||||
<PackageVersion Include="System.Diagnostics.EventLog" Version="8.0.1" />
|
||||
<PackageVersion Include="System.Drawing.Common" Version="8.0.6" />
|
||||
<PackageVersion Include="System.Drawing.Common" Version="8.0.7" />
|
||||
<PackageVersion Include="System.IO.Abstractions" Version="17.2.3" />
|
||||
<PackageVersion Include="System.IO.Abstractions.TestingHelpers" Version="17.2.3" />
|
||||
<PackageVersion Include="System.Management" Version="8.0.0" />
|
||||
|
@ -1351,7 +1351,7 @@ EXHIBIT A -Mozilla Public License.
|
||||
- System.Data.OleDb 8.0.1
|
||||
- System.Data.SqlClient 4.8.6
|
||||
- System.Diagnostics.EventLog 8.0.1
|
||||
- System.Drawing.Common 8.0.6
|
||||
- System.Drawing.Common 8.0.7
|
||||
- System.IO.Abstractions 17.2.3
|
||||
- System.IO.Abstractions.TestingHelpers 17.2.3
|
||||
- System.Management 8.0.0
|
||||
|
@ -504,9 +504,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseWithoutBordersHelper",
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MouseJump", "src\modules\MouseUtils\MouseJump\MouseJump.vcxproj", "{8A08D663-4995-40E3-B42C-3F910625F284}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseJumpUI", "src\modules\MouseUtils\MouseJumpUI\MouseJumpUI.csproj", "{D962A009-834F-4EEC-AABB-430DF8F98E39}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseJump.Common", "src\modules\MouseUtils\MouseJump.Common\MouseJump.Common.csproj", "{923DF87C-CA99-4D1C-B1D2-959174E95BFA}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseJumpUI.UnitTests", "src\modules\MouseUtils\MouseJumpUI.UnitTests\MouseJumpUI.UnitTests.csproj", "{D9C5DE64-6849-4278-91AD-9660AECF2876}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseJump.Common.UnitTests", "src\modules\MouseUtils\MouseJump.Common.UnitTests\MouseJump.Common.UnitTests.csproj", "{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MouseJumpUI", "src\modules\MouseUtils\MouseJumpUI\MouseJumpUI.csproj", "{D962A009-834F-4EEC-AABB-430DF8F98E39}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AdvancedPaste", "AdvancedPaste", "{9873BA05-4C41-4819-9283-CF45D795431B}"
|
||||
EndProject
|
||||
@ -2252,18 +2254,6 @@ Global
|
||||
{D962A009-834F-4EEC-AABB-430DF8F98E39}.Release|x64.Build.0 = Release|x64
|
||||
{D962A009-834F-4EEC-AABB-430DF8F98E39}.Release|x86.ActiveCfg = Release|x64
|
||||
{D962A009-834F-4EEC-AABB-430DF8F98E39}.Release|x86.Build.0 = Release|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|x64.Build.0 = Debug|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|x86.ActiveCfg = Debug|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Debug|x86.Build.0 = Debug|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|x64.ActiveCfg = Release|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|x64.Build.0 = Release|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|x86.ActiveCfg = Release|x64
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876}.Release|x86.Build.0 = Release|x64
|
||||
{FC373B24-3293-453C-AAF5-CF2909DCEE6A}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{FC373B24-3293-453C-AAF5-CF2909DCEE6A}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{FC373B24-3293-453C-AAF5-CF2909DCEE6A}.Debug|x64.ActiveCfg = Debug|x64
|
||||
@ -2652,6 +2642,30 @@ Global
|
||||
{F055103B-F80B-4D0C-BF48-057C55620033}.Release|x64.Build.0 = Release|x64
|
||||
{F055103B-F80B-4D0C-BF48-057C55620033}.Release|x86.ActiveCfg = Release|x64
|
||||
{F055103B-F80B-4D0C-BF48-057C55620033}.Release|x86.Build.0 = Release|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|x64.Build.0 = Debug|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|x86.ActiveCfg = Debug|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Debug|x86.Build.0 = Debug|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|x64.ActiveCfg = Release|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|x64.Build.0 = Release|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|x86.ActiveCfg = Release|x64
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA}.Release|x86.Build.0 = Release|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|x64.Build.0 = Debug|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|x86.ActiveCfg = Debug|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Debug|x86.Build.0 = Debug|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|ARM64.ActiveCfg = Release|ARM64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|ARM64.Build.0 = Release|ARM64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|x64.ActiveCfg = Release|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|x64.Build.0 = Release|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|x86.ActiveCfg = Release|x64
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}.Release|x86.Build.0 = Release|x64
|
||||
{B31FCC55-B5A4-4EA7-B414-2DCEAE6AF332}.Debug|ARM64.ActiveCfg = Debug|ARM64
|
||||
{B31FCC55-B5A4-4EA7-B414-2DCEAE6AF332}.Debug|ARM64.Build.0 = Debug|ARM64
|
||||
{B31FCC55-B5A4-4EA7-B414-2DCEAE6AF332}.Debug|x64.ActiveCfg = Debug|x64
|
||||
@ -2927,7 +2941,6 @@ Global
|
||||
{A663E672-B26D-4EC0-BEAB-FE2E424AC46F} = {B6C42F16-73EB-477E-8B0D-4E6CF6C20AAC}
|
||||
{8A08D663-4995-40E3-B42C-3F910625F284} = {322566EF-20DC-43A6-B9F8-616AF942579A}
|
||||
{D962A009-834F-4EEC-AABB-430DF8F98E39} = {322566EF-20DC-43A6-B9F8-616AF942579A}
|
||||
{D9C5DE64-6849-4278-91AD-9660AECF2876} = {322566EF-20DC-43A6-B9F8-616AF942579A}
|
||||
{9873BA05-4C41-4819-9283-CF45D795431B} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC}
|
||||
{FC373B24-3293-453C-AAF5-CF2909DCEE6A} = {9873BA05-4C41-4819-9283-CF45D795431B}
|
||||
{9CE59ED5-7087-4353-88EB-788038A73CEC} = {1AFB6476-670D-4E80-A464-657E01DFF482}
|
||||
@ -2966,6 +2979,8 @@ Global
|
||||
{8ACB33D9-C95B-47D4-8363-9731EE0930A0} = {CA716AE6-FE5C-40AC-BB8F-2C87912687AC}
|
||||
{CA716AE6-FE5C-40AC-BB8F-2C87912687AC} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC}
|
||||
{F055103B-F80B-4D0C-BF48-057C55620033} = {5A7818A8-109C-4E1C-850D-1A654E234B0E}
|
||||
{923DF87C-CA99-4D1C-B1D2-959174E95BFA} = {322566EF-20DC-43A6-B9F8-616AF942579A}
|
||||
{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77} = {322566EF-20DC-43A6-B9F8-616AF942579A}
|
||||
{A2221D7E-55E7-4BEA-90D1-4F162D670BBF} = {4574FDD0-F61D-4376-98BF-E5A1262C11EC}
|
||||
{BE126CBB-AE12-406A-9837-A05ACFCA57A7} = {A2221D7E-55E7-4BEA-90D1-4F162D670BBF}
|
||||
{14CB58B7-D280-4A7A-95DE-4B2DF14EA000} = {A2221D7E-55E7-4BEA-90D1-4F162D670BBF}
|
||||
|
@ -2,20 +2,15 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Reflection;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using MouseJumpUI.Common.Helpers;
|
||||
using MouseJumpUI.Common.Imaging;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
using MouseJumpUI.Helpers;
|
||||
using MouseJump.Common.Helpers;
|
||||
using MouseJump.Common.Imaging;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
namespace MouseJumpUI.UnitTests.Common.Helpers;
|
||||
namespace MouseJump.Common.UnitTests.Helpers;
|
||||
|
||||
[TestClass]
|
||||
public static class DrawingHelperTests
|
||||
@ -60,8 +55,8 @@ public static class DrawingHelperTests
|
||||
new(0, 500, 500, 500),
|
||||
},
|
||||
activatedLocation: new(x: 50, y: 50),
|
||||
desktopImageFilename: "Common/Helpers/_test-4grid-desktop.png",
|
||||
expectedImageFilename: "Common/Helpers/_test-4grid-expected.png"),
|
||||
desktopImageFilename: "_test-4grid-desktop.png",
|
||||
expectedImageFilename: "_test-4grid-expected.png"),
|
||||
};
|
||||
/* win 11 */
|
||||
yield return new object[]
|
||||
@ -74,8 +69,8 @@ public static class DrawingHelperTests
|
||||
new(0, 0, 5120, 1440),
|
||||
},
|
||||
activatedLocation: new(x: 50, y: 50),
|
||||
desktopImageFilename: "Common/Helpers/_test-win11-desktop.png",
|
||||
expectedImageFilename: "Common/Helpers/_test-win11-expected.png"),
|
||||
desktopImageFilename: "_test-win11-desktop.png",
|
||||
expectedImageFilename: "_test-win11-expected.png"),
|
||||
};
|
||||
}
|
||||
|
||||
@ -104,13 +99,19 @@ public static class DrawingHelperTests
|
||||
|
||||
private static Bitmap LoadImageResource(string filename)
|
||||
{
|
||||
// assume embedded resources are in the same source folder as this
|
||||
// class, and the namespace hierarchy matches the folder structure.
|
||||
// that way we can build resource names from the current namespace
|
||||
var resourcePrefix = typeof(DrawingHelperTests).Namespace;
|
||||
var resourceName = $"{resourcePrefix}.{filename}";
|
||||
|
||||
var assembly = Assembly.GetExecutingAssembly();
|
||||
var assemblyName = new AssemblyName(assembly.FullName ?? throw new InvalidOperationException());
|
||||
var resourceName = $"Microsoft.{assemblyName.Name}.{filename.Replace("/", ".")}";
|
||||
var resourceNames = assembly.GetManifestResourceNames();
|
||||
if (!resourceNames.Contains(resourceName))
|
||||
{
|
||||
throw new InvalidOperationException($"Embedded resource '{resourceName}' does not exist.");
|
||||
var message = $"Embedded resource '{resourceName}' does not exist. " +
|
||||
"Valid resource names are: \r\n" + string.Join("\r\n", resourceNames);
|
||||
throw new InvalidOperationException(message);
|
||||
}
|
||||
|
||||
var stream = assembly.GetManifestResourceStream(resourceName)
|
@ -2,17 +2,15 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Text.Json;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using MouseJumpUI.Common.Helpers;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Layout;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
using MouseJump.Common.Helpers;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Layout;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
namespace MouseJumpUI.UnitTests.Common.Helpers;
|
||||
namespace MouseJump.Common.UnitTests.Helpers;
|
||||
|
||||
[TestClass]
|
||||
public static class LayoutHelperTests
|
@ -2,13 +2,11 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using MouseJumpUI.Common.Helpers;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJump.Common.Helpers;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
namespace MouseJumpUI.UnitTests.Common.Helpers;
|
||||
namespace MouseJump.Common.UnitTests.Helpers;
|
||||
|
||||
[TestClass]
|
||||
public static class MouseHelperTests
|
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 215 KiB After Width: | Height: | Size: 215 KiB |
@ -2,12 +2,10 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
namespace MouseJumpUI.UnitTests.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.UnitTests.Models.Drawing;
|
||||
|
||||
[TestClass]
|
||||
public static class RectangleInfoTests
|
@ -2,12 +2,10 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
namespace MouseJumpUI.UnitTests.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.UnitTests.Models.Drawing;
|
||||
|
||||
[TestClass]
|
||||
public static class SizeInfoTests
|
@ -0,0 +1,44 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<!-- Look at Directory.Build.props in root for common stuff as well -->
|
||||
<Import Project="..\..\..\Common.Dotnet.CsWinRT.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
|
||||
<ProjectGuid>{D5E42C63-57C5-4EF6-AECE-1E2FCA725B77}</ProjectGuid>
|
||||
<AssemblyName>PowerToys.MouseJump.Common.UnitTests</AssemblyName>
|
||||
<AssemblyTitle>PowerToys.MouseJump.Common.UnitTests</AssemblyTitle>
|
||||
<AssemblyDescription>PowerToys MouseJump.Common.UnitTests</AssemblyDescription>
|
||||
<OutputType>Library</OutputType>
|
||||
<OutputPath>..\..\..\..\$(Platform)\$(Configuration)\tests\MouseJump.Common.UnitTests\</OutputPath>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
|
||||
|
||||
<Nullable>enable</Nullable>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="Helpers\_test-4grid-desktop.png" />
|
||||
<None Remove="Helpers\_test-4grid-expected.png" />
|
||||
<None Remove="Helpers\_test-win11-desktop.png" />
|
||||
<None Remove="Helpers\_test-win11-expected.png" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Helpers\_test-4grid-desktop.png" />
|
||||
<EmbeddedResource Include="Helpers\_test-4grid-expected.png" />
|
||||
<EmbeddedResource Include="Helpers\_test-win11-desktop.png" />
|
||||
<EmbeddedResource Include="Helpers\_test-win11-expected.png" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MSTest" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MouseJump.Common\MouseJump.Common.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
@ -2,22 +2,18 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Drawing.Drawing2D;
|
||||
using System.Drawing.Imaging;
|
||||
using System.Linq;
|
||||
|
||||
using MouseJumpUI.Common.Imaging;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Layout;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
using MouseJump.Common.Imaging;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Layout;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
namespace MouseJumpUI.Common.Helpers;
|
||||
namespace MouseJump.Common.Helpers;
|
||||
|
||||
internal static class DrawingHelper
|
||||
public static class DrawingHelper
|
||||
{
|
||||
public static Bitmap RenderPreview(
|
||||
PreviewLayout previewLayout,
|
@ -2,17 +2,13 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Layout;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Layout;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Helpers;
|
||||
|
||||
namespace MouseJumpUI.Common.Helpers;
|
||||
|
||||
internal static class LayoutHelper
|
||||
public static class LayoutHelper
|
||||
{
|
||||
public static PreviewLayout GetPreviewLayout(
|
||||
PreviewStyle previewStyle, List<RectangleInfo> screens, PointInfo activatedLocation)
|
||||
@ -111,7 +107,7 @@ internal static class LayoutHelper
|
||||
/// <returns>A <see cref="BoxBounds"/> object that represents the bounds of the different areas of the box.</returns>
|
||||
/// <exception cref="ArgumentNullException">Thrown when <paramref name="contentBounds"/> or <paramref name="boxStyle"/> is null.</exception>
|
||||
/// <exception cref="ArgumentException">Thrown when any of the styles in <paramref name="boxStyle"/> is null.</exception>
|
||||
internal static BoxBounds GetBoxBoundsFromContentBounds(
|
||||
public static BoxBounds GetBoxBoundsFromContentBounds(
|
||||
RectangleInfo contentBounds,
|
||||
BoxStyle boxStyle)
|
||||
{
|
||||
@ -139,7 +135,7 @@ internal static class LayoutHelper
|
||||
/// <returns>A <see cref="BoxBounds"/> object that represents the bounds of the different areas of the box.</returns>
|
||||
/// <exception cref="ArgumentNullException">Thrown when <paramref name="outerBounds"/> or <paramref name="boxStyle"/> is null.</exception>
|
||||
/// <exception cref="ArgumentException">Thrown when any of the styles in <paramref name="boxStyle"/> is null.</exception>
|
||||
internal static BoxBounds GetBoxBoundsFromOuterBounds(
|
||||
public static BoxBounds GetBoxBoundsFromOuterBounds(
|
||||
RectangleInfo outerBounds,
|
||||
BoxStyle boxStyle)
|
||||
{
|
@ -5,15 +5,14 @@
|
||||
using System.ComponentModel;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.NativeMethods;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.NativeMethods;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.User32;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJumpUI.Common.NativeMethods.User32;
|
||||
namespace MouseJump.Common.Helpers;
|
||||
|
||||
namespace MouseJumpUI.Common.Helpers;
|
||||
|
||||
internal static class MouseHelper
|
||||
public static class MouseHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Calculates where to move the cursor to by projecting a point from
|
||||
@ -24,7 +23,7 @@ internal static class MouseHelper
|
||||
/// or even negative if the primary monitor is not the at the top-left of the
|
||||
/// entire desktop rectangle, so results may contain negative coordinates.
|
||||
/// </remarks>
|
||||
internal static PointInfo GetJumpLocation(PointInfo previewLocation, SizeInfo previewSize, RectangleInfo desktopBounds)
|
||||
public static PointInfo GetJumpLocation(PointInfo previewLocation, SizeInfo previewSize, RectangleInfo desktopBounds)
|
||||
{
|
||||
return previewLocation
|
||||
.Scale(previewSize.ScaleToFitRatio(desktopBounds.Size))
|
||||
@ -34,7 +33,7 @@ internal static class MouseHelper
|
||||
/// <summary>
|
||||
/// Get the current position of the cursor.
|
||||
/// </summary>
|
||||
internal static PointInfo GetCursorPosition()
|
||||
public static PointInfo GetCursorPosition()
|
||||
{
|
||||
var lpPoint = new LPPOINT(new POINT(0, 0));
|
||||
var result = User32.GetCursorPos(lpPoint);
|
||||
@ -57,7 +56,7 @@ internal static class MouseHelper
|
||||
/// <remarks>
|
||||
/// See https://github.com/mikeclayton/FancyMouse/pull/3
|
||||
/// </remarks>
|
||||
internal static void SetCursorPosition(PointInfo location)
|
||||
public static void SetCursorPosition(PointInfo location)
|
||||
{
|
||||
// set the new cursor position *twice* - the cursor sometimes end up in
|
||||
// the wrong place if we try to cross the dead space between non-aligned
|
@ -2,26 +2,22 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Linq;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.NativeMethods;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.NativeMethods;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.User32;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJumpUI.Common.NativeMethods.User32;
|
||||
namespace MouseJump.Common.Helpers;
|
||||
|
||||
namespace MouseJumpUI.Common.Helpers;
|
||||
|
||||
internal static class ScreenHelper
|
||||
public static class ScreenHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Duplicates functionality available in System.Windows.Forms.SystemInformation
|
||||
/// to reduce the dependency on WinForms
|
||||
/// </summary>
|
||||
public static RectangleInfo GetVirtualScreen()
|
||||
private static RectangleInfo GetVirtualScreen()
|
||||
{
|
||||
return new(
|
||||
User32.GetSystemMetrics(SYSTEM_METRICS_INDEX.SM_XVIRTUALSCREEN),
|
||||
@ -30,7 +26,7 @@ internal static class ScreenHelper
|
||||
User32.GetSystemMetrics(SYSTEM_METRICS_INDEX.SM_CYVIRTUALSCREEN));
|
||||
}
|
||||
|
||||
internal static IEnumerable<ScreenInfo> GetAllScreens()
|
||||
public static IEnumerable<ScreenInfo> GetAllScreens()
|
||||
{
|
||||
// enumerate the monitors attached to the system
|
||||
var hMonitors = new List<HMONITOR>();
|
||||
@ -80,7 +76,7 @@ internal static class ScreenHelper
|
||||
}
|
||||
}
|
||||
|
||||
internal static ScreenInfo GetScreenFromPoint(
|
||||
public static ScreenInfo GetScreenFromPoint(
|
||||
List<ScreenInfo> screens,
|
||||
PointInfo pt)
|
||||
{
|
@ -2,15 +2,12 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Helpers;
|
||||
|
||||
namespace MouseJumpUI.Helpers;
|
||||
|
||||
internal static class StyleHelper
|
||||
public static class StyleHelper
|
||||
{
|
||||
/// <summary>
|
||||
/// Default v2 preview style
|
@ -2,22 +2,19 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.NativeMethods;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.NativeMethods;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.Imaging;
|
||||
namespace MouseJump.Common.Imaging;
|
||||
|
||||
/// <summary>
|
||||
/// Implements an IImageRegionCopyService that uses the current desktop window as the copy source.
|
||||
/// This is used during the main application runtime to generate preview images of the desktop.
|
||||
/// </summary>
|
||||
internal sealed class DesktopImageRegionCopyService : IImageRegionCopyService
|
||||
public sealed class DesktopImageRegionCopyService : IImageRegionCopyService
|
||||
{
|
||||
/// <summary>
|
||||
/// Copies the source region from the current desktop window
|
@ -2,13 +2,11 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Drawing;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Imaging;
|
||||
|
||||
namespace MouseJumpUI.Common.Imaging;
|
||||
|
||||
internal interface IImageRegionCopyService
|
||||
public interface IImageRegionCopyService
|
||||
{
|
||||
/// <summary>
|
||||
/// Copies the source region from the provider's source image (e.g. the interactive desktop,
|
@ -2,18 +2,15 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
|
||||
namespace MouseJumpUI.Common.Imaging;
|
||||
namespace MouseJump.Common.Imaging;
|
||||
|
||||
/// <summary>
|
||||
/// Implements an IImageRegionCopyService that uses the specified image as the copy source.
|
||||
/// This is used for testing the DrawingHelper rather than as part of the main application.
|
||||
/// </summary>
|
||||
internal sealed class StaticImageRegionCopyService : IImageRegionCopyService
|
||||
public sealed class StaticImageRegionCopyService : IImageRegionCopyService
|
||||
{
|
||||
public StaticImageRegionCopyService(Image sourceImage)
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Models.Drawing;
|
||||
|
||||
public sealed class BoxBounds
|
||||
{
|
||||
@ -28,7 +26,7 @@ public sealed class BoxBounds
|
||||
|
||||
*/
|
||||
|
||||
internal BoxBounds(
|
||||
public BoxBounds(
|
||||
RectangleInfo outerBounds,
|
||||
RectangleInfo marginBounds,
|
||||
RectangleInfo borderBounds,
|
@ -2,10 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Models.Drawing;
|
||||
|
||||
/// <summary>
|
||||
/// Immutable version of a System.Drawing.Point object with some extra utility methods.
|
@ -2,15 +2,12 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
using BorderStyle = MouseJump.Common.Models.Styles.BorderStyle;
|
||||
|
||||
using BorderStyle = MouseJumpUI.Common.Models.Styles.BorderStyle;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Models.Drawing;
|
||||
|
||||
/// <summary>
|
||||
/// Immutable version of a System.Drawing.Rectangle object with some extra utility methods.
|
@ -2,19 +2,15 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Models.Drawing;
|
||||
|
||||
/// <summary>
|
||||
/// Immutable version of a System.Windows.Forms.Screen object so we don't need to
|
||||
/// take a dependency on WinForms just for screen info.
|
||||
/// </summary>
|
||||
internal sealed class ScreenInfo
|
||||
public sealed class ScreenInfo
|
||||
{
|
||||
internal ScreenInfo(HMONITOR handle, bool primary, RectangleInfo displayArea, RectangleInfo workingArea)
|
||||
public ScreenInfo(int handle, bool primary, RectangleInfo displayArea, RectangleInfo workingArea)
|
||||
{
|
||||
this.Handle = handle;
|
||||
this.Primary = primary;
|
@ -2,14 +2,10 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
using BorderStyle = MouseJump.Common.Models.Styles.BorderStyle;
|
||||
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
|
||||
using BorderStyle = MouseJumpUI.Common.Models.Styles.BorderStyle;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Drawing;
|
||||
namespace MouseJump.Common.Models.Drawing;
|
||||
|
||||
/// <summary>
|
||||
/// Immutable version of a System.Drawing.Size object with some extra utility methods.
|
@ -2,15 +2,12 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Styles;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Styles;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Layout;
|
||||
namespace MouseJump.Common.Models.Layout;
|
||||
|
||||
public sealed class PreviewLayout
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Drawing;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
/// <summary>
|
||||
/// Represents the background fill style for a drawing object.
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System.Drawing;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
/// <summary>
|
||||
/// Represents the border style for a drawing object.
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
/// <summary>
|
||||
/// Represents the styles to apply to a simple box-layout based drawing object.
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
/// <summary>
|
||||
/// Represents the margin style for a drawing object.
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
/// <summary>
|
||||
/// Represents the margin style for a drawing object.
|
@ -2,11 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
|
||||
namespace MouseJumpUI.Common.Models.Styles;
|
||||
namespace MouseJump.Common.Models.Styles;
|
||||
|
||||
public sealed class PreviewStyle
|
||||
{
|
@ -0,0 +1,24 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<!-- Look at Directory.Build.props in root for common stuff as well -->
|
||||
<Import Project="..\..\..\Common.Dotnet.CsWinRT.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
|
||||
<ProjectGuid>{923DF87C-CA99-4D1C-B1D2-959174E95BFA}</ProjectGuid>
|
||||
<AssemblyName>PowerToys.MouseJump.Common</AssemblyName>
|
||||
<AssemblyTitle>PowerToys.MouseJump.Common</AssemblyTitle>
|
||||
<AssemblyDescription>PowerToys MouseJump.Common</AssemblyDescription>
|
||||
<OutputType>Library</OutputType>
|
||||
<OutputPath>..\..\..\..\$(Platform)\$(Configuration)</OutputPath>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
|
||||
|
||||
<ApplicationHighDpiMode>PerMonitorV2</ApplicationHighDpiMode>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<Nullable>enable</Nullable>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
</Project>
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -5,7 +5,7 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,10 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -1,9 +1,8 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,10 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,10 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -1,10 +1,10 @@
|
||||
// Copyright (c) Microsoft Corporation
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
using System;
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -5,7 +5,7 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -5,7 +5,7 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,9 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Core
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Gdi32
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Gdi32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Gdi32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class Gdi32
|
||||
{
|
@ -2,7 +2,7 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static class Libraries
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -2,10 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -2,9 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -5,9 +5,9 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
[SuppressMessage("SA1310", "SA1310:FieldNamesMustNotContainUnderscore", Justification = "Names match Win32 api")]
|
||||
internal static partial class User32
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
[SuppressMessage("SA1310", "SA1310:FieldNamesMustNotContainUnderscore", Justification = "Names match Win32 api")]
|
||||
internal static partial class User32
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -5,9 +5,9 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -5,9 +5,7 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
[SuppressMessage("SA1310", "SA1310:FieldNamesMustNotContainUnderscore", Justification = "Names match Win32 api")]
|
||||
internal static partial class User32
|
@ -5,9 +5,9 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -2,11 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -5,9 +5,9 @@
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -2,10 +2,9 @@
|
||||
// The Microsoft Corporation licenses this file to you under the MIT license.
|
||||
// See the LICENSE file in the project root for more information.
|
||||
|
||||
using System;
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
[SuppressMessage("SA1310", "SA1310:FieldNamesMustNotContainUnderscore", Justification = "Names match Win32 api")]
|
||||
internal static partial class User32
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,7 +4,7 @@
|
||||
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
[SuppressMessage("SA1310", "SA1310:FieldNamesMustNotContainUnderscore", Justification = "Names match Win32 api")]
|
||||
internal static partial class User32
|
@ -4,9 +4,9 @@
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using static MouseJumpUI.Common.NativeMethods.Core;
|
||||
using static MouseJump.Common.NativeMethods.Core;
|
||||
|
||||
namespace MouseJumpUI.Common.NativeMethods;
|
||||
namespace MouseJump.Common.NativeMethods;
|
||||
|
||||
internal static partial class User32
|
||||
{
|
@ -4,4 +4,4 @@
|
||||
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
[assembly: InternalsVisibleTo("MouseJumpUI.UnitTests")]
|
||||
[assembly: InternalsVisibleTo("MouseJump.Common.UnitTests")]
|
@ -1,35 +0,0 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<!-- Look at Directory.Build.props in root for common stuff as well -->
|
||||
<Import Project="..\..\..\Common.Dotnet.CsWinRT.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{D9C5DE64-6849-4278-91AD-9660AECF2876}</ProjectGuid>
|
||||
<RootNamespace>Microsoft.MouseJumpUI.UnitTests</RootNamespace>
|
||||
<IsPackable>false</IsPackable>
|
||||
<Nullable>enable</Nullable>
|
||||
<OutputType>Library</OutputType>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputPath>..\..\..\..\$(Platform)\$(Configuration)\tests\MouseJumpUI.UnitTests\</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MSTest" />
|
||||
<PackageReference Include="System.CodeDom">
|
||||
<!-- This package is a dependency of System.Management, but we need to set it here so we can exclude the assets, so it doesn't conflict with the 8.0.1 dll coming from .NET SDK. -->
|
||||
<ExcludeAssets>runtime</ExcludeAssets> <!-- Should already be present on .net sdk runtime, so we avoid the conflicting runtime version from nuget -->
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Common\Helpers\_test-4grid-desktop.png" />
|
||||
<EmbeddedResource Include="Common\Helpers\_test-4grid-expected.png" />
|
||||
<EmbeddedResource Include="Common\Helpers\_test-win11-desktop.png" />
|
||||
<EmbeddedResource Include="Common\Helpers\_test-win11-expected.png" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MouseJumpUI\MouseJumpUI.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
@ -13,7 +13,7 @@ using Microsoft.PowerToys.Settings.UI.Library.Utilities;
|
||||
|
||||
namespace MouseJumpUI.Helpers;
|
||||
|
||||
internal class SettingsHelper
|
||||
internal sealed class SettingsHelper
|
||||
{
|
||||
public SettingsHelper()
|
||||
{
|
||||
|
@ -6,7 +6,7 @@ using System.Windows.Forms;
|
||||
|
||||
namespace MouseJumpUI;
|
||||
|
||||
partial class MainForm
|
||||
internal sealed partial class MainForm
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
|
@ -9,15 +9,15 @@ using System.Linq;
|
||||
using System.Windows.Forms;
|
||||
|
||||
using ManagedCommon;
|
||||
using MouseJumpUI.Common.Helpers;
|
||||
using MouseJumpUI.Common.Imaging;
|
||||
using MouseJumpUI.Common.Models.Drawing;
|
||||
using MouseJumpUI.Common.Models.Layout;
|
||||
using MouseJump.Common.Helpers;
|
||||
using MouseJump.Common.Imaging;
|
||||
using MouseJump.Common.Models.Drawing;
|
||||
using MouseJump.Common.Models.Layout;
|
||||
using MouseJumpUI.Helpers;
|
||||
|
||||
namespace MouseJumpUI;
|
||||
|
||||
internal partial class MainForm : Form
|
||||
internal sealed partial class MainForm : Form
|
||||
{
|
||||
public MainForm(SettingsHelper settingsHelper)
|
||||
{
|
||||
|
@ -4,23 +4,21 @@
|
||||
<Import Project="..\..\..\Common.SelfContained.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
|
||||
<AssemblyName>PowerToys.MouseJumpUI</AssemblyName>
|
||||
<AssemblyTitle>PowerToys.MouseJumpUI</AssemblyTitle>
|
||||
<AssemblyDescription>PowerToys MouseJumpUI</AssemblyDescription>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<OutputPath>..\..\..\..\$(Platform)\$(Configuration)</OutputPath>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<AppendRuntimeIdentifierToOutputPath>false</AppendRuntimeIdentifierToOutputPath>
|
||||
<GenerateSatelliteAssembliesForCore>true</GenerateSatelliteAssembliesForCore>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<StartupObject>MouseJumpUI.Program</StartupObject>
|
||||
|
||||
<ApplicationHighDpiMode>PerMonitorV2</ApplicationHighDpiMode>
|
||||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
||||
<Nullable>enable</Nullable>
|
||||
<ApplicationHighDpiMode>PerMonitorV2</ApplicationHighDpiMode>
|
||||
<ProjectGuid>{D962A009-834F-4EEC-AABB-430DF8F98E39}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>MouseJumpUI</RootNamespace>
|
||||
<AssemblyName>PowerToys.MouseJumpUI</AssemblyName>
|
||||
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>disable</ImplicitUsings>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<!-- See https://learn.microsoft.com/windows/apps/develop/platform/csharp-winrt/net-projection-from-cppwinrt-component for more info -->
|
||||
@ -36,5 +34,7 @@
|
||||
<ProjectReference Include="..\..\..\common\interop\PowerToys.Interop.vcxproj" />
|
||||
<ProjectReference Include="..\..\..\common\ManagedCommon\ManagedCommon.csproj" />
|
||||
<ProjectReference Include="..\..\..\settings-ui\Settings.UI.Library\Settings.UI.Library.csproj" />
|
||||
<ProjectReference Include="..\MouseJump.Common\MouseJump.Common.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|