Fix Application.EnableVisualStyles in single file publishing mode#4149
Merged
Conversation
Application.EnableVisualStyles gives Windows a manifest that enables the v6 common controls. We normally pull this manifest from a native resource in System.Windows.Forms.dll. In single file mode there is no "dll" to load from so this feature was not working as intended. In the case where we can't get a Win32 HMODULE we now fall back to pulling the manifest from a managed resource and dumping it to the temp folder. Make ACTCTXW blittable.
Codecov Report
@@ Coverage Diff @@
## master #4149 +/- ##
===================================================
+ Coverage 98.11665% 98.12443% +0.00777%
===================================================
Files 494 494
Lines 258422 258428 +6
Branches 4489 4489
===================================================
+ Hits 253555 253581 +26
+ Misses 4105 4089 -16
+ Partials 762 758 -4
Flags with carried forward coverage won't be shown. Click here to find out more. |
RussKie
reviewed
Oct 23, 2020
RussKie
reviewed
Oct 23, 2020
weltkante
previously approved these changes
Oct 23, 2020
Contributor
weltkante
left a comment
There was a problem hiding this comment.
Noticed a few non-obvious things, I'm mentioning them so you can pay attention to them during review, but I don't think they are a problem.
Member
Author
|
Validated that VB works as well. cc: @KlausLoeffelmann |
RussKie
pushed a commit
to RussKie/winforms
that referenced
this pull request
Oct 30, 2020
…tnet#4149) * Fix Application.EnableVisualStyles in single file publishing mode Application.EnableVisualStyles gives Windows a manifest that enables the v6 common controls. We normally pull this manifest from a native resource in System.Windows.Forms.dll. In single file mode there is no "dll" to load from so this feature was not working as intended. In the case where we can't get a Win32 HMODULE we now fall back to pulling the manifest from a managed resource and dumping it to the temp folder. Make ACTCTXW blittable. (cherry picked from commit 082cbf2)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #4145
Customer Impact
Application.EnableVisualStylesgives Windows a manifest that enables the v6 common controls. We normally pull this manifest from a native resource in System.Windows.Forms.dll. In single file mode there is no "dll" to load from so this feature was not working as intended.In the case where we can't get a Win32 HMODULE we now fall back to pulling the manifest from a managed resource and dumping it to the temp folder.
ACTCTXWblittable.Regression?
Risk
Microsoft Reviewers: Open in CodeFlow