Add Taskbar Folder Menus v0.7#4485
Conversation
|
|
Updated to v0.6 with all review points addressed:
Also in v0.6:
|
Submission reviewNote: This review was done by Claude, and then refined manually. Due to the amount of submissions, doing a fully manual review for each pull request is no longer feasible. Thank you for understanding. Please address the following issues. The items in the collapsed sections are optional, so it's your call whether to address them. I haven't verified 1, let me know if it's incorrect. 1. The right-click context-menu feature never fires — wrong window message. The subclass handles a self-defined #ifndef WM_MENURBUTTONDOWN
#define WM_MENURBUTTONDOWN 0x012E
#endif
...
if (msg == WM_MENURBUTTONDOWN) {
UINT index = (UINT)wParam;
HMENU hMenu = (HMENU)lParam;
if (msg == WM_MENURBUTTONUP) { // 0x0122, sent to the menu owner on menu-item right-click
UINT index = (UINT)wParam;
HMENU hMenu = (HMENU)lParam;and drop the 2. Global XAML strong references are destroyed at process shutdown, off the UI thread. static Grid g_buttonGrid = nullptr;
static FrameworkElement g_injectionParent = nullptr;
...
static std::vector<ButtonEventState> g_buttonEventStates;
[[clang::no_destroy]] static Grid g_buttonGrid = nullptr;
[[clang::no_destroy]] static std::vector<ButtonEventState> g_buttonEventStates;
Optional improvements
Minor polish — none of this affects users, so it's your call.
Functionality notes
Non-critical observations about the feature behavior itself.
|
2cf4fb8 to
32d4d7c
Compare
|
Updated the PR to v0.7 on a clean rebase of current The two required review items are addressed:
The DPI/layout note is also addressed by replacing the inline layout code with One earlier simplification was adjusted based on live regression evidence: The PR description and completed test plan now reflect the current array |
32d4d7c to
46f3301
Compare
Summary
Adds Taskbar Folder Menus v0.7 (
taskbar-folder-menus) for Windows 11.It adds compact system-tray buttons that open configured folders, drives, and
Shell namespace targets as native cascading menus, recreating the useful part
of classic taskbar toolbars without requiring users to minimize their windows.
Features
foldersarray with a short label and target for each button.such as
shell:Desktopandshell:ControlPanelFolder.Open in Explorer command for the configured root and every subfolder.
dynamic extensions through
IContextMenu2/IContextMenu3.fixed rows, fixed columns, and fixed-grid modes; row/column fill order;
first/last short groups; and short-group alignment.
button colors, Windows accent tokens, borders, opacity, shine, and group
padding/offsets.
Review and reliability fixes
WM_MENURBUTTONUPhandling for right-clicked menu items.holders and releases delegates, tooltips, and boxed content before removing
the injected subtree.
FALSEwhen required taskbar symbol hooks fail and clearly documentsthat the mod supports Windows 11 only.
TrayUI::StartTaskbartrigger. After live testing foundthat the simpler startup path could still miss the tray after a restart,
v0.7 adds the standard three-module
IconView.Loadedtrigger and a boundedslow-sign-in retry fallback for deterministic reapplication.
Smart Grid template and the live
SystemTrayFrameGridheight in DIPs,including correct inter-row spacing.
pointer-over state after a modal native menu closes.
Validation
targets work with Shell icons and lazy submenus.
work; click-away dismissal releases the taskbar-button visual state.
point to current assets.
Mod authorship
If this pull request introduces a new mod, please complete the section below.
This mod was created by:
Please select the options that best apply. Your selection does not affect the
acceptance criteria, but it helps reviewers understand the context of the code
and provide relevant feedback.