Skip to content

FlutterProjectOpenProcessor silently fails to open projects without .idea directory in IntelliJ IDEA #8845

@0ttik

Description

@0ttik

Description

The Flutter IntelliJ plugin's FlutterProjectOpenProcessor silently fails to open Flutter projects that lack a .idea directory in IntelliJ IDEA (Community and Ultimate). This is the same bug that was fixed for Android Studio in PR #8710 — the IntelliJ IDEA variant was never fixed.

Steps to Reproduce

  1. Clone any Flutter project (e.g. flutter create test_app && rm -rf test_app/.idea)
  2. Open IntelliJ IDEA CE 2025.2+ with Flutter plugin v88.2.0+ installed
  3. File > Open > select the project folder
  4. Nothing happens. No error, no dialog, no project opens.
  5. The IDE log shows only: Using processor Flutter to open the project at /path/to/project followed by nothing — no indexing, no FlutterInitializer, no error.

Expected Behavior

The project should open in a new window with Flutter module type set and Dart SDK enabled.

Actual Behavior

Nothing happens. The project silently fails to open. No error is shown.

Root Cause

FlutterProjectOpenProcessor.openProjectAsync() delegates to another ProjectOpenProcessor via getDelegateImportProvider(). For projects without a .idea directory, no other processor claims the project, so getDelegateImportProvider() returns null, and openProjectAsync() returns null — a silent failure. Since FlutterProjectOpenProcessor is registered with order="first", it already claimed the project, so no other processor gets a chance.

Workaround

Creating an empty .idea directory (mkdir project/.idea) before opening makes it work. Alternatively, disabling the Flutter plugin lets the default processor open the project.

Proposed Fix

Apply the same pattern as PR #8710 (the Android Studio fix):

  1. Remove FlutterProjectOpenProcessor.kt
  2. Remove its <projectOpenProcessor> registration from plugin.xml
  3. Add module-type-fixing logic to FlutterInitializer (the existing startup activity for IntelliJ IDEA)

This lets the platform's default project opener handle opening, then the startup activity configures Flutter-specific settings after the project is loaded.

Environment

  • IntelliJ IDEA CE 2025.2 (build IC-252.28238.7)
  • Flutter plugin v90.0.0
  • macOS

Related

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions