microsoft / microsoft/PowerToys

Workspaces Launcher UI: WPF → WinUI Migration

Open
#48,686 0 comments 0 reactions 1 assignee View on GitHub

@chatasweetie is already working on this.

Since Jun 16, 2026.

Area-Accessibility Area-User Interface Issue-Refactoring Product-Workspaces
Dominant language
C
Stars
139k
Forks
8.6k
PR merge metrics
PR metrics pending

Description

## Summary

Migrate the Workspaces Launcher UI from WPF to WinUI to support PowerToys' broader modernization efforts around Fluent design, theming consistency, accessibility, and long-term maintainability.

This work focuses specifically on the **Workspaces Launcher UI** and does **not** include changes to the Workspaces Editor, workspace configuration model, launch logic, or feature development.

---

## Motivation

Migrating this to WinUI improves:

- Consistent Fluent design across PowerToys
- Accessibility support
- Light/Dark theme handling
- Long-term maintainability

---

## Scope

### In Scope

- Migrate Workspaces Launcher UI from WPF to WinUI 3
- Recreate existing launcher window UI
- Preserve existing functionality and visual behavior
- Preserve current launch workflow
- Verify accessibility parity
- Verify Light/Dark theme support
- Remove launcher-specific WPF UI assets once migration is complete

### Out of Scope

- Workspaces Editor migration
- Workspace launch engine changes
- New features
- UX redesigns
- Telemetry changes
- Configuration format changes

---

## Testing

### Functional

- Launch workspace successfully
- Progress/status updates display correctly
- Error states render correctly
- Window lifecycle behaves as expected
- Multiple launch scenarios function correctly

### Accessibility

- Keyboard-only navigation
- Narrator validation
- Focus management validation
- High contrast support

### Visual

- Light theme
- Dark theme
- Multiple DPI scales
- Multiple monitor configurations

---

## Success Criteria

- Workspaces Launcher UI runs entirely on WinUI
- Functional parity maintained
- Accessibility parity maintained or improved
- Light/Dark themes work correctly
- Launcher-specific WPF UI removed
- No regressions introduced

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.