Add setting to toggle dimming of inferred menu item icons#136
Merged
Jack251970 merged 1 commit intoApr 22, 2026
Conversation
When a menu item's registry entry has no Icon value (and no HasLUAShield), the app derives an icon from the command's executable, the file-type association, or a generic blank page, then renders it semi-transparent. The new DimInferredIcons setting lets users turn that dimming off so inferred icons appear at full opacity alongside declared ones. Default is on, preserving existing behavior.
Jack251970
reviewed
Apr 22, 2026
Owner
Jack251970
left a comment
There was a problem hiding this comment.
Thanks for your contribution!
6 tasks
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
DimInferredIconssetting (defaults to on, matching current behavior).Iconvalue (and noHasLUAShield), the app derives an icon from the command's executable / file-type association / a generic blank page and renders it semi-transparent. Users who prefer a uniform look can now turn that dimming off so inferred icons appear at full opacity alongside declared ones.Image.ToInferredIcon()helper that replaces the four!HasIcon→ToTransparent()call sites inShellItem.cs. TheInvalidItemplaceholder inShellSubMenuDialog.csis left as-is — its transparency signals a broken menu entry, not an inferred icon.DimInferredIconsstrings toAppLanguageDic.ini(zh-CN default),zh-CN.ini, anden-US.ini.Test plan
Iconregistry value still render semi-transparent.HasLUAShieldoff on an item with noIconvalue respects the setting (note: surfaces a pre-existing refresh bug where the shield image stays until you navigate away — not caused by this PR).