Skip to content

Inconsistent 'Open Output Folder' Button Behavior Between Settings and Recordings Pages #1106

@vishesh-sachan

Description

@vishesh-sachan

Description

The "Open Output Folder" button behaves inconsistently between the Settings > Recording page and the Recordings page when a user has configured a custom output folder location.

Steps to Reproduce

  1. Open Whispering desktop app
  2. Navigate to Settings > Recording
  3. Click the folder icon to select a custom output folder (e.g., ~/Documents/MyRecordings)
  4. Verify the path is saved and displayed correctly
  5. Click the "Open output folder" button on the Settings page
    • Expected: Opens the custom folder (~/Documents/MyRecordings)
    • Actual: Opens the custom folder correctly
  6. Navigate to the Recordings page
  7. Click the "Open recordings folder" button
    • Expected: Opens the custom folder (~/Documents/MyRecordings)
    • Actual: Opens the default app data folder instead

Expected Behavior

Both "open output folder" buttons should open the same location - the configured output folder if set, or the default location if not configured.

Actual Behavior

  • Settings page button: Correctly opens the user's configured output folder
  • Recordings page button: Always opens the default app data location, ignoring the custom setting

Impact

  • Confusion: Users may think their recordings are saved to the default location when they've actually configured a different one
  • Data access: Users cannot quickly access their recordings from the Recordings page if they've customized the output location
  • Inconsistency: Different behavior for the same action creates a poor user experience

Root Cause

The two buttons use different logic to determine the folder path:

Settings page (DesktopOutputFolder.svelte):

const folderPath = 
  settings.value['recording.cpal.outputFolder'] ?? 
  defaultRecordingsFolder;

Recordings page:

getFolderPath={PATHS.DB.RECORDINGS}  // Always returns app-data/recordings

Proposed Solution

Update the Recordings page button to use the same dynamic folder resolution logic:

getFolderPath={async () => {
  return (
    settings.value['recording.cpal.outputFolder'] ??
    (await PATHS.DB.RECORDINGS())
  );
}}

Technical Details

Affected files:

  • apps/whispering/src/routes/(app)/(config)/recordings/+page.svelte
  • apps/whispering/src/lib/components/OpenFolderButton.svelte

Settings key: recording.cpal.outputFolder

Platform: Desktop only (Tauri)

Additional Context

This issue affects both CPAL and FFmpeg recording method users who have customized their output folder location (both methods share the same recording.cpal.outputFolder setting). The actual recordings ARE saved to the correct custom location - only the "Open recordings folder" button on the Recordings page points to the wrong location.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugA defect or unexpected behavior that needs fixing

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions