Skip to content

Commit

Permalink
Merge pull request #1 from dotnet-campus/t/walterlv/decompile
Browse files Browse the repository at this point in the history
Use old source code of Microsoft.Windows.Shell but supports the latest .NET 6
  • Loading branch information
lindexi authored Dec 3, 2021
2 parents 2066611 + c6becfa commit ebef4b7
Show file tree
Hide file tree
Showing 166 changed files with 9,148 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# dotnetCampus.Windows7.Shell
14 changes: 14 additions & 0 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<Project>
<Import Project="build\Version.props" />
<PropertyGroup>
<LangVersion>latest</LangVersion>
<PackageOutputPath>$(MSBuildThisFileDirectory)bin\$(Configuration)</PackageOutputPath>
<Company>dotnet campus(.NET 职业技术学院)</Company>
<Authors>dotnet-campus</Authors>
<RepositoryUrl>https://github.com/dotnet-campus/dotnetCampus.Windows7.Shell</RepositoryUrl>
<PackageProjectUrl>https://github.com/dotnet-campus/dotnetCampus.Windows7.Shell</PackageProjectUrl>
<Description>WindowChrome of the latest Microsoft.Windows.Shell causes some blinks of the window. But this one is that from .NET Framework 3.5 which has not the newly blinks bugs. Furthermore, this package uses the old source code but supports the latest .NET 5/6.</Description>
<RepositoryType>git</RepositoryType>
<Copyright>Copyright © 2021 dotnet campus, All Rights Reserved.</Copyright>
</PropertyGroup>
</Project>
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# dotnetCampus.Windows7.Shell

| Build | NuGet |
|--|--|
|![](https://github.com/dotnet-campus/dotnetCampus.Windows7.Shell/workflows/.NET%20Build/badge.svg)|[![](https://img.shields.io/nuget/v/dotnetCampus.Windows7.Shell.svg)](https://www.nuget.org/packages/dotnetCampus.Windows7.Shell)|
5 changes: 5 additions & 0 deletions build/Version.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<Project>
<PropertyGroup>
<Version>1.0.0</Version>
</PropertyGroup>
</Project>
35 changes: 35 additions & 0 deletions dotnetCampus.Windows7.Shell.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.1.31911.260
MinimumVisualStudioVersion = 15.0.26124.0
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{4056B6F5-2BEE-42D9-BEF2-1644102AFC0A}"
ProjectSection(SolutionItems) = preProject
.gitattributes = .gitattributes
.gitignore = .gitignore
CHANGELOG.md = CHANGELOG.md
Directory.Build.props = Directory.Build.props
README.md = README.md
build\Version.props = build\Version.props
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.Windows.Shell", "src\Microsoft.Windows.Shell\Microsoft.Windows.Shell.csproj", "{E5EA8FDC-6DAE-4A4C-8FCF-83136C8AC32B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{E5EA8FDC-6DAE-4A4C-8FCF-83136C8AC32B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E5EA8FDC-6DAE-4A4C-8FCF-83136C8AC32B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E5EA8FDC-6DAE-4A4C-8FCF-83136C8AC32B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E5EA8FDC-6DAE-4A4C-8FCF-83136C8AC32B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {F8507E58-13AB-42CD-B4FC-769FF2EBD655}
EndGlobalSection
EndGlobal
Binary file not shown.
43 changes: 43 additions & 0 deletions src/Microsoft.Windows.Shell/Microsoft.Windows.Shell.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

<PropertyGroup>
<TargetFrameworks>netcoreapp3.1;net4</TargetFrameworks>
<UseWPF>true</UseWPF>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<GenerateDocumentationFile>false</GenerateDocumentationFile>
<Authors>dotnet-campus</Authors>
<Company>Microsoft Corporation</Company>
<Product>Microsoft® .NET Framework</Product>
<PackageId>dotnetCampus.Windows7.Shell</PackageId>
<AssemblyName>Microsoft.Windows.Shell</AssemblyName>
<AssemblyVersion>3.5.41019.1</AssemblyVersion>
<FileVersion>3.5.41019.1</FileVersion>
</PropertyGroup>

<!-- 在 GitHub 的 Action 构建会添加 GITHUB_ACTIONS 变量 -->
<!-- 下面进行自动构建,自动添加源代码链接等 -->
<!-- 详细请看 https://github.com/dotnet/sourcelink -->
<PropertyGroup Condition="'$(GITHUB_ACTIONS)' == 'true'">
<ContinuousIntegrationBuild>true</ContinuousIntegrationBuild>

<!-- Optional: Publish the repository URL in the built .nupkg (in the NuSpec <Repository> element) -->
<PublishRepositoryUrl>true</PublishRepositoryUrl>

<!-- 只有在 GitHub 的 Action 构建才能使用源代码链接 -->
<!-- 源代码链接需要使用 commit 号,而在 GitHub 的 Action 构建的 commit 才是对的 -->
<!-- 本地构建,也许没有记得 commit 就构建,此时的 nuget 包的源代码是不对的,上传上去会让调试诡异 -->
<!-- Optional: Embed source files that are not tracked by the source control manager in the PDB -->
<EmbedUntrackedSources>true</EmbedUntrackedSources>

<!-- 本地等不需要创建符号文件 -->
<!-- Optional: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
</PropertyGroup>

<ItemGroup>
<!-- 链接源代码到 GitHub 仓库,方便调试 -->
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All"/>
</ItemGroup>

</Project>
11 changes: 11 additions & 0 deletions src/Microsoft.Windows.Shell/Microsoft/Windows/Shell/JumpItem.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
namespace Microsoft.Windows.Shell
{
public abstract class JumpItem
{
internal JumpItem()
{
}

public string CustomCategory { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
namespace Microsoft.Windows.Shell
{
public enum JumpItemRejectionReason
{
None,
InvalidItem,
NoRegisteredHandler,
RemovedByUser,
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
using System;
using System.Collections.Generic;

namespace Microsoft.Windows.Shell
{
public sealed class JumpItemsRejectedEventArgs : EventArgs
{
public JumpItemsRejectedEventArgs()
: this((IList<JumpItem>)null, (IList<JumpItemRejectionReason>)null)
{
}

public JumpItemsRejectedEventArgs(
IList<JumpItem> rejectedItems,
IList<JumpItemRejectionReason> reasons)
{
if (rejectedItems == null && reasons != null || reasons == null && rejectedItems != null || rejectedItems != null && reasons != null && rejectedItems.Count != reasons.Count)
throw new ArgumentException("The counts of rejected items doesn't match the count of reasons.");
if (rejectedItems != null)
{
this.RejectedItems = (IList<JumpItem>)new List<JumpItem>((IEnumerable<JumpItem>)rejectedItems).AsReadOnly();
this.RejectionReasons = (IList<JumpItemRejectionReason>)new List<JumpItemRejectionReason>((IEnumerable<JumpItemRejectionReason>)reasons).AsReadOnly();
}
else
{
this.RejectedItems = (IList<JumpItem>)new List<JumpItem>().AsReadOnly();
this.RejectionReasons = (IList<JumpItemRejectionReason>)new List<JumpItemRejectionReason>().AsReadOnly();
}
}

public IList<JumpItem> RejectedItems { get; private set; }

public IList<JumpItemRejectionReason> RejectionReasons { get; private set; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;

namespace Microsoft.Windows.Shell
{
public sealed class JumpItemsRemovedEventArgs : EventArgs
{
public JumpItemsRemovedEventArgs()
: this((IList<JumpItem>)null)
{
}

public JumpItemsRemovedEventArgs(IList<JumpItem> removedItems)
{
if (removedItems != null)
this.RemovedItems = (IList<JumpItem>)new List<JumpItem>((IEnumerable<JumpItem>)removedItems).AsReadOnly();
else
this.RemovedItems = (IList<JumpItem>)new List<JumpItem>().AsReadOnly();
}

public IList<JumpItem> RemovedItems { get; private set; }
}
}
Loading

0 comments on commit ebef4b7

Please sign in to comment.