Skip to content

Conversation

@vgadodia
Copy link

@vgadodia vgadodia commented Nov 13, 2025

Summary by CodeRabbit

  • New Features

    • Added new icon components to the UI library.
    • Introduced streamlined target selection buttons with improved styling.
    • Added close button and logo display to the main window.
  • Style

    • Enhanced window transparency and visual appearance on macOS.
    • Updated window chrome styling with improved padding, borders, and backgrounds.
    • Refreshed recording interface layout with modern styling and reorganized controls.
    • Adjusted camera and microphone UI components with updated icons and hover states.

Introduces new SVG icons for camera, microphone, system audio, display, window, and crop. Adds HorizontalTargetButton component and refactors input and target selection controls for improved layout and styling. Updates window transparency and border radius for a modern look. Refactors InfoPill for new variants and updates usage in SystemAudio. Adjusts window size and layout in main page for better usability.
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 13, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Multiple UI and window management enhancements including Tauri window transparency and macOS chrome modifications, expansion of the icon component library with 12 new icons, refactoring of window chrome styling and layout, updates to input selection components (camera, microphone, system audio), and comprehensive reorganization of the main recording interface with new component composition and control structures.

Changes

Cohort / File(s) Summary
Tauri Window Configuration
apps/desktop/src-tauri/src/windows.rs
Added transparency to Main and Settings window builders; refactored macOS-specific logic to hide traffic-light buttons via main thread NSWindow access and conditionally apply window level when new_recording_flow is enabled.
Icon Library Expansion
apps/desktop/src/icons.tsx
Introduced 12 new SVG icon components: DoubleArrowSwitcher, ArrowUpRight, RecordFill, InflightLogo, CloseIcon, SettingsIcon, CameraIcon, MicrophoneIcon, SystemAudioIcon, DisplayIcon, WindowIcon, and CropIcon; each accepts optional class prop for styling.
Window Chrome Layout
apps/desktop/src/routes/(window-chrome).tsx
Replaced divider and gray background with padding and inline border-radius/border/background styles; simplified header height and layout; collapsed return wrapper to single line.
Input Selection Components
apps/desktop/src/routes/(window-chrome)/new-main/CameraSelect.tsx, MicrophoneSelect.tsx
Replaced legacy icons with new CameraIcon and MicrophoneIcon; expanded button styling with cursor-pointer and hover states; removed gray backgrounds in favor of neutral/hover scheme; adjusted menu construction syntax.
System Audio Control
apps/desktop/src/routes/(window-chrome)/new-main/SystemAudio.tsx
Updated PillComponent variant type from "blue"|"red" to "on"|"off"; replaced IconPhMonitorBold with SystemAudioIcon; switched InfoPill to InfoPillNew; consolidated imports.
New UI Components
apps/desktop/src/routes/(window-chrome)/new-main/HorizontalTargetButton.tsx, InfoPill.tsx
Added HorizontalTargetButton component accepting selected, Component, name, and disabled props with conditional styling; introduced InfoPillNew variant with "on"|"off" states and compact bordered styling.
Component Refactoring
apps/desktop/src/routes/(window-chrome)/new-main/TargetTypeButton.tsx
Collapsed splitProps key array to single line; inlined component class expression; maintained behavioral equivalence without API changes.
Main Window Orchestration
apps/desktop/src/routes/(window-chrome)/new-main/index.tsx
Updated window size constants (272×386); consolidated imports; replaced legacy UI blocks with new HorizontalTargetButton, BaseControls, and RecordingControls components; added close button and InflightLogo; replaced Settings glyph with SettingsIcon; commented out legacy debug and licensing UI; refactored header layout and container styling.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

  • apps/desktop/src-tauri/src/windows.rs: macOS window chrome handling and thread-safety of NSWindow modifications require careful verification
  • apps/desktop/src/routes/(window-chrome)/new-main/index.tsx: substantial UI reorganization across multiple subcomponents, window size changes, and state management; verify all interactions with new HorizontalTargetButton and Controls subcomponents remain functional
  • apps/desktop/src/routes/(window-chrome)/new-main/SystemAudio.tsx: variant type signature changes from "blue"|"red" to "on"|"off" propagate to consumers; ensure InfoPillNew accepts and renders correctly with new variant contract
  • Icon components in new-main files: verify all icon replacements (CameraIcon, MicrophoneIcon, SystemAudioIcon, etc.) render correctly with existing styling expectations

Possibly related PRs

Suggested labels

codex

Suggested reviewers

  • oscartbeaumont
  • Brendonovich

Poem

🐰 Hop, skip, and a transparent bound,
Icons aplenty on the new common ground,
Windows are glowing with fresh macOS art,
Chrome takes a bow, UI plays its part,
Recording flows smooth with each refactored piece, 🎬✨

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between dd4ab52 and 367c564.

📒 Files selected for processing (10)
  • apps/desktop/src-tauri/src/windows.rs (3 hunks)
  • apps/desktop/src/icons.tsx (1 hunks)
  • apps/desktop/src/routes/(window-chrome).tsx (4 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/CameraSelect.tsx (6 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/HorizontalTargetButton.tsx (1 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/InfoPill.tsx (1 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/MicrophoneSelect.tsx (8 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/SystemAudio.tsx (2 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/TargetTypeButton.tsx (2 hunks)
  • apps/desktop/src/routes/(window-chrome)/new-main/index.tsx (18 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@vgadodia vgadodia closed this Nov 13, 2025
@vgadodia vgadodia changed the title Revamped main window UI Ignore - accidental PR Dec 4, 2025
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