Skip to content

Desktop right-click menu (rexplorer --desktop) - #8

Merged
CodingDiego merged 2 commits into
masterfrom
feat/desktop-menu
Oct 10, 2026
Merged

CodingDiego merged 2 commits into
masterfrom
feat/desktop-menu

Conversation

@CodingDiego

@CodingDiego CodingDiego commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Adds rexplorer --desktop: a per-session helper whose low-level mouse hook takes right-clicks on the desktop's icon list and shows rexplorer's context menu (the shell's verbs for selected icons, or View / Sort by / Refresh / Paste plus background verbs). Explorer keeps drawing the desktop, taskbar and Start.

  • crates/core/src/desktop.rs: drives Explorer's desktop view through IShellWindows (hit-test, selection, View / Sort by).
  • crates/app/src/desktop.rs: the helper; the hook thread only classifies and posts, so it never stalls system mouse input. One helper per session (named mutex).
  • Install adds <Startup>\rexplorer desktop menu.lnk and starts the helper.

Rebased onto the install rollback (v0.1.2):

  • Both shortcuts (Start menu and Startup) go through the install journal, so Roll back removes or restores them.
  • Install and uninstall close a running helper first. Afterwards: a successful install starts it from the new copy; a failed one (rolled back or kept) restarts it only if one was running, from whichever copy is in place.

Also fixes the tabs smoke check, stale since #6 made Ctrl+T open the start place.

Verification

  • cargo build --release with RUSTFLAGS=-Dwarnings; cargo test --release --locked on a scratch %APPDATA%: 79 + 83 passed.
  • scripts\smoke.ps1 on the release exe: 36 PASS, 1 SKIP (address-nav, as before), 0 FAIL after the tabs fix.
  • Helper driven directly: --desktop creates its RexDesktop window; a second --desktop exits 0 and leaves the first running; WM_CLOSE (what desktop::stop sends) ends it.
  • Not driven: a real right-click on the desktop, and stop/restart inside a real (non-test-base) install.

🤖 Generated with Claude Code

https://claude.ai/code/session_019arE4fu9tvTz5FQvK13PzQ

CodingDiego and others added 2 commits October 10, 2026 11:16
Explorer keeps drawing the desktop; a low-level mouse hook takes right-clicks on its icon list and shows
rexplorer's menu instead. Install adds a Startup shortcut so the helper runs at sign-in, and starts it.

Rebased onto the install rollback: both shortcuts (Start menu and Startup) go through the install journal, so a
rolled-back install removes or restores them. Install and uninstall close a running helper first and start it again
afterwards: after a successful install from the new copy, after a failed one (rolled back or kept) only if one was
running, from whichever copy is in place.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019arE4fu9tvTz5FQvK13PzQ
#6 changed Ctrl+T to open the start place instead of a copy of the current folder; the check still wanted the
current folder's title and failed. It now wants Home's localized name (a scratch profile starts at Home).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019arE4fu9tvTz5FQvK13PzQ
@CodingDiego
CodingDiego marked this pull request as ready for review October 10, 2026 14:20
@CodingDiego
CodingDiego merged commit e9e7dc7 into master Oct 10, 2026
2 checks passed
@CodingDiego
CodingDiego deleted the feat/desktop-menu branch October 10, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant