Chrome interference – Cursor Browser Extension Interferes with Chrome File Input Functionality

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Bug Report: Cursor Browser Extension Interferes with Chrome File Input Functionality

Summary

Cursor’s browser extension (used for browser automation/testing) interferes with native HTML file input elements in Chrome, preventing file picker dialogs from opening when clicking file input buttons.

Environment

  • OS: macOS (darwin 24.5.0)
  • Cursor Version: Current (as of January 2025)
  • Chrome Version: Latest
  • Browser Extension: Cursor browser extension (for MCP browser automation)
  • Framework: Next.js 15.0.3 (React 19)

Steps to Reproduce

  1. Open Chrome browser
  2. Ensure Cursor IDE is running with browser extension enabled
  3. Navigate to a page with an HTML file input element (<input type="file">)
  4. Attempt to click the file input button or associated label/button element
  5. Observe that the file picker dialog does not open

Expected Behavior

Clicking a file input element should open the native browser file picker dialog, allowing the user to select files.

Actual Behavior

When Cursor is running (even if not actively controlling the browser), clicking file input elements in Chrome has no effect - the file picker dialog never opens. The click event appears to be intercepted or blocked by the Cursor extension.

Verification

  • :white_check_mark: Works in Safari - File inputs function normally
  • :white_check_mark: Works in Cursor’s controlled browser - File inputs work within Cursor’s browser automation environment
  • :cross_mark: Does NOT work in Chrome - File inputs are non-functional
  • :white_check_mark: Works when Cursor is closed - After closing Cursor IDE, file inputs work normally in Chrome

Technical Details

Code Example

// This does NOT work in Chrome when Cursor extension is active:
<input
  id="image"
  type="file"
  accept="image/*"
  onChange={(e) => setFile(e.target.files?.[0] || null)}
  className="input-field"
  required
/>

// Tried workarounds that also fail:
// 1. Button with onClick handler calling input.click()
// 2. Label wrapper with htmlFor attribute
// 3. React ref-based click triggers
// 4. preventDefault/stopPropagation on click events

Investigation Findings

  • No console errors appear
  • No network requests are blocked
  • No Chrome extensions are installed (other than Cursor)
  • Issue persists in Chrome incognito mode
  • Clearing Chrome cache has no effect
  • Issue is specific to Chrome (Safari works fine)

Workaround Attempts (All Failed)

  1. Using programmatic .click() via React refs
  2. Using label elements with htmlFor attribute
  3. Adding preventDefault() and stopPropagation() on click handlers
  4. Using buttons that trigger hidden file inputs
  5. Changing CSS appearance properties

Impact

This issue prevents developers from:

  • Testing file upload functionality in Chrome during development
  • Using Chrome as their primary browser while developing with Cursor
  • Properly testing web applications with file upload features

Workaround

The only current workaround is to:

  • Close Cursor IDE completely when testing file upload functionality in Chrome
  • Use Safari browser instead of Chrome for file upload testing
  • Only test file uploads in Cursor’s controlled browser environment

Request

Please investigate why Cursor’s browser extension interferes with Chrome’s native file input functionality. Possible causes:

  • Event listener interception on click events
  • PreventDefault being called on file input clicks
  • Security/permission restrictions from the extension
  • Timing issues with event propagation

Additional Notes

  • The extension appears to intercept clicks even when not actively controlling the browser
  • This suggests the extension may be listening to all click events globally in Chrome
  • Consider adding an option to disable click interception when not actively automating
  • Or provide a way to whitelist certain elements/events from interception

Priority

High - This blocks core web functionality (file uploads) in the most popular browser (Chrome) during development.

Steps to Reproduce

I did. though copilot finally found workaround. I had it document issue.

Expected Behavior

testing outside ide is compromised… It is ■■■■■■■ with my computer, or at least chrome on my computer. not the internal instance

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.0.43
VSCode Version: 1.99.3
Commit: 8e4da76ad196925accaa169efcae28c45454cce0
Date: 2025-10-30T18:49:27.589Z
Electron: 34.5.8
Chromium: 132.0.6834.210
Node.js: 20.19.1
V8: 13.2.152.41-electron.0
OS: Darwin arm64 24.5.0

For AI issues: which model did you use?

na

Additional Information

use safari to test outside ide

Does this stop you from using Cursor

No - Cursor works, but with this issue