Skip to content

[dart2wasm] iFrame locks position on transition into view #55942

@kenzieschmoll

Description

@kenzieschmoll

In DevTools, we use iFrames for a couple of features:

  1. The embedded Perfetto trace viewer on the Performance page
  2. DevTools extensions

In both cases, the iFrame is transitioned into view by a Flutter tab view. Upon selecting the "Timeline Events" tab on the Performance page or upon selecting a top level tab for a DevTools extension, the iFrame locks its position before fully transitioning into view:
Screenshot 2024-06-05 at 9 56 17 AM
Screenshot 2024-06-05 at 9 55 52 AM

Requirements:

  • Pull the latest code from the flutter/devtools master branch
  • Pull the latest code from the Dart SDK (or patch this change if it has not landed yet.)
  • Set up your DevTools environment so that
    • You have access to the devtools_tool executable - docs
    • You have the LOCAL_DART_SDK environment variable set - docs

Repro steps:

  1. Build DevTools from source with wasm: devtools_tool serve --wasm. If you want to build with --no-strip-wasm, add the flag here before serving DevTools.
  2. Run the Flutter gallery app (this app depends on package:provider, which has a DevTools extension)
  3. Copy the VM service URI from the Flutter gallery app and connect it to the DevTools instance you just served with wasm.
  4. Navigate to either the Performance screen > Timeline Events OR to the top level Provider screen tab (should be present as long as you are running flutter gallery) to observe the incorrect iFrame position.

If this does not repro on the first try, refresh the DevTools window in the browser and try again.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-dart2wasmIssues for the dart2wasm compiler.triage-automationSee https://github.com/dart-lang/ecosystem/tree/main/pkgs/sdk_triage_bot.type-bugIncorrect behavior (everything from a crash to more subtle misbehavior)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions