Skip to content

Redesign MainWindow UI with Sidebar Layout#249

Draft
google-labs-jules[bot] wants to merge 3 commits intomasterfrom
ui-redesign-mainwindow-2368002832168886202
Draft

Redesign MainWindow UI with Sidebar Layout#249
google-labs-jules[bot] wants to merge 3 commits intomasterfrom
ui-redesign-mainwindow-2368002832168886202

Conversation

@google-labs-jules
Copy link
Copy Markdown

Redesigned the MainWindow UI to align with the provided design mockup.

Key changes include:

  1. Layout Structure: Moved from a top-menu/nested-grid layout to a clean Sidebar (Left) + Content (Right) structure.
  2. Top Bar: Replaced the standard WPF Menu with a custom top bar containing icon-based buttons.
  3. Sidebar: Consolidated "Icon Mode" and "Search Mode" settings and action buttons ("Load", "Make Icons") into a dedicated left panel.
  4. Content Area: Streamlined the file list and selected path display.
  5. Theming: Updated hardcoded colors to use DynamicResource keys (RegionBrush, PrimaryBrush, etc.) from HandyControl to ensure the application correctly respects theme changes (Light/Dark).
  6. Code Quality: Refactored CmbLanguage_OnSelectionChanged in the code-behind to use sender casting, preventing potential null reference issues when the control is inside a template.

Verified that all original commands, bindings, and menu options (including Explorer Integration and Error Reporting) are preserved in the new layout.


PR created automatically by Jules for task 2368002832168886202 started by @DineshSolanki

- Refactored MainWindow.xaml to use a sidebar layout with a custom top bar.
- Replaced the top Menu with a horizontal stack of buttons; moved menu items (Settings, Help, etc.) into ContextMenus.
- Grouped Icon Mode and Search Mode controls into the left sidebar.
- Integrated the "Load Folders" and "Generate Icons" buttons into the sidebar.
- Styled the UI using HandyControl DynamicResources for theme compatibility.
- Added missing resources (TopBarButton, SidebarRadioButton, StatusBarSeparator) to Window.Resources.
- Updated MainWindow.xaml.cs to robustly handle the language selection event.
- Restored missing menu items (Explorer Integration, Error Reporting) and icons.
@google-labs-jules
Copy link
Copy Markdown
Author

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

DineshSolanki and others added 2 commits January 10, 2026 17:27
- Implemented `DarkPurpleTheme.xaml` resource dictionary and merged it in `App.xaml`.
- Fixed "Settings" and "Help" menu commands by introducing a `BindingProxy` class to bridge the `DataContext` gap for `ContextMenu` items.
- Replaced Top Bar Buttons with ToggleButtons bound to ContextMenu.IsOpen to enable left-click opening, improving UX.
- Updated `SidebarRadioButton` style to fix alignment issues.
- Ensured drag-and-drop attached properties are preserved on the Window.
@sonarqubecloud
Copy link
Copy Markdown

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