<h2 dir="auto">Steps to Reproduce</h2>
<p dir="auto">When a Fullscreen dialog is opened after a file was received from <code class="notranslate">ImagePicker</code>, the layout of the Fullscreen Dialog is broken.</p>
<div class="highlight highlight-source-dart notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="final File _ = await ImagePicker.pickImage();

Navigator
    .of(context)
    .push(new MaterialPageRoute&lt;Null&gt;(
  builder: (final BuildContext context) {
    return new TestPage();
  },
));"><pre class="notranslate"><span class="pl-k">final</span> <span class="pl-c1">File</span> _ <span class="pl-k">=</span> <span class="pl-k">await</span> <span class="pl-c1">ImagePicker</span>.<span class="pl-en">pickImage</span>();

<span class="pl-c1">Navigator</span>
    .<span class="pl-en">of</span>(context)
    .<span class="pl-en">push</span>(<span class="pl-k">new</span> <span class="pl-c1">MaterialPageRoute</span>&lt;<span class="pl-c1">Null</span>&gt;(
  builder<span class="pl-k">:</span> (<span class="pl-k">final</span> <span class="pl-c1">BuildContext</span> context) {
    <span class="pl-k">return</span> <span class="pl-k">new</span> <span class="pl-c1">TestPage</span>();
  },
));</pre></div>
<p dir="auto"><a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/2204708/34037290-8c7f1c84-e188-11e7-8301-7b88fb382d69.png"><img src="https://user-images.githubusercontent.com/2204708/34037290-8c7f1c84-e188-11e7-8301-7b88fb382d69.png" alt="device-2017-12-15-105913" style="max-width: 100%;"></a></p>
<p dir="auto">However, wrapping the call to <code class="notranslate">Navigator.push</code> into a new <code class="notranslate">Future</code> fixes the issue.</p>
<div class="highlight highlight-source-dart notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="final File _ = await ImagePicker.pickImage();

new Future(() {
  Navigator
      .of(context)
      .push(new MaterialPageRoute&lt;Null&gt;(
    builder: (final BuildContext context) {
      return new TestPage();
    },
  ));
});"><pre class="notranslate"><span class="pl-k">final</span> <span class="pl-c1">File</span> _ <span class="pl-k">=</span> <span class="pl-k">await</span> <span class="pl-c1">ImagePicker</span>.<span class="pl-en">pickImage</span>();

<span class="pl-k">new</span> <span class="pl-c1">Future</span>(() {
  <span class="pl-c1">Navigator</span>
      .<span class="pl-en">of</span>(context)
      .<span class="pl-en">push</span>(<span class="pl-k">new</span> <span class="pl-c1">MaterialPageRoute</span>&lt;<span class="pl-c1">Null</span>&gt;(
    builder<span class="pl-k">:</span> (<span class="pl-k">final</span> <span class="pl-c1">BuildContext</span> context) {
      <span class="pl-k">return</span> <span class="pl-k">new</span> <span class="pl-c1">TestPage</span>();
    },
  ));
});</pre></div>
<p dir="auto">See <a href="https://github.com/lschmierer/flutter_test">this</a> project if you want to reproduce the issue.</p>
<h2 dir="auto">Flutter Doctor</h2>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="[✓] Flutter (on Mac OS X 10.13.1 17B1003, locale en-DE, channel master)
    • Flutter at /Users/lschmierer/flutter
    • Framework revision 6299dbada8 (13 hours ago), 2017-12-14 13:19:26 -0800
    • Engine revision e0d19e2897
    • Tools Dart version 1.25.0-dev.11.0
    • Engine Dart version 2.0.0-edge.cf1de7d46cd88e204380e8f96a993439be56b24c

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.1)
    • Android SDK at /Users/lschmierer/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.3.1

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] Connected devices
    • Pixel • FA69N0312108 • android-arm • Android 8.1.0 (API 27)"><pre class="notranslate"><code class="notranslate">[✓] Flutter (on Mac OS X 10.13.1 17B1003, locale en-DE, channel master)
    • Flutter at /Users/lschmierer/flutter
    • Framework revision 6299dbada8 (13 hours ago), 2017-12-14 13:19:26 -0800
    • Engine revision e0d19e2897
    • Tools Dart version 1.25.0-dev.11.0
    • Engine Dart version 2.0.0-edge.cf1de7d46cd88e204380e8f96a993439be56b24c

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.1)
    • Android SDK at /Users/lschmierer/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.3.1

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] Connected devices
    • Pixel • FA69N0312108 • android-arm • Android 8.1.0 (API 27)
</code></pre></div>
<h2 dir="auto">Steps to Reproduce</h2>
<ol dir="auto">
<li>Attach a function to the button onTap</li>
<li>Invoke an <em>ImagePicker</em> to select an image from the gallery (<a href="https://pub.dartlang.org/packages/image_picker" rel="nofollow">image_picker</a> package)</li>
<li>Initiate <em>Navigator.push</em> to a new screen after image is picked.</li>
<li>application is frozen. navigation did not happen.</li>
</ol>
<p dir="auto">Observations:</p>
<ul dir="auto">
<li>Removing Image Picker from equation solves the problem.</li>
<li>Tested in iOS simulator and real device - similar behavior</li>
<li>the issue appeared after recent <code class="notranslate">flutter update</code> i.e. it woeked on 4 weeks old flutter (dev branch)).</li>
</ul>
<p dir="auto">This is the code that hangs (full sample app can be found here <a href="https://github.com/FastNinja/imagepickerissue">https://github.com/FastNinja/imagepickerissue</a><br>
):</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Future&lt;Null&gt; _freezesAfterNavigation(BuildContext context) async {
    var _imageFile = await ImagePicker.pickImage();

    // this navigation freezes and the whole app
    Navigator
        .of(context, rootNavigator: true)
        .push(new MaterialPageRoute&lt;String&gt;(
            settings: const RouteSettings(name: '/screen2'),
            builder: (BuildContext context) {
              return new Screen2Page();
            }));
  }

//... somewhere in the app...

     new RaisedButton(
              child: new Text(&quot;Select Image and Freezes&quot;),
              onPressed: () =&gt; _freezesAfterNavigation(context),
            ),"><pre class="notranslate"><code class="notranslate">Future&lt;Null&gt; _freezesAfterNavigation(BuildContext context) async {
    var _imageFile = await ImagePicker.pickImage();

    // this navigation freezes and the whole app
    Navigator
        .of(context, rootNavigator: true)
        .push(new MaterialPageRoute&lt;String&gt;(
            settings: const RouteSettings(name: '/screen2'),
            builder: (BuildContext context) {
              return new Screen2Page();
            }));
  }

//... somewhere in the app...

     new RaisedButton(
              child: new Text("Select Image and Freezes"),
              onPressed: () =&gt; _freezesAfterNavigation(context),
            ),
</code></pre></div>
<p dir="auto">I have created the following repository to easily reproduce the issue.<br>
<a href="https://github.com/FastNinja/imagepickerissue">https://github.com/FastNinja/imagepickerissue</a></p>
<p dir="auto"><a target="_blank" rel="noopener noreferrer nofollow" href="https://user-images.githubusercontent.com/13673826/34467136-90c0ecf2-ef3c-11e7-9656-005c61d36693.png"><img src="https://user-images.githubusercontent.com/13673826/34467136-90c0ecf2-ef3c-11e7-9656-005c61d36693.png" alt="image" style="max-width: 100%;"></a></p>
<p dir="auto">It is the Minimum Possible App that reproduces the issue - single page with 2 buttons.<br>
1st button just navigates to new screen. 2nd button picks an image and then navigates to new screen.<br>
Using the image picker does not initiate navigation into new screen and the whole application gots frozen.</p>
<h2 dir="auto">Logs</h2>
<p dir="auto">Run your application with <code class="notranslate">flutter run</code> and attach all the log output:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="Launching lib/main.dart on iPhone 6 in debug mode...
Running pod install...                                1.1s
Running Xcode build...                               12.2s
Syncing files to device iPhone 6...                   0.9s

🔥  To hot reload your app on the fly, press &quot;r&quot;. To restart the app entirely, press &quot;R&quot;.
An Observatory debugger and profiler on iPhone 6 is available at: http://127.0.0.1:8105/
For a more detailed help message, press &quot;h&quot;. To quit, press &quot;q&quot;.
PlatformException(multiple_request, Cancelled by a second request, null)
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:514:7)
#1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:154:18)
&lt;asynchronous suspension&gt;
#2      ImagePicker.pickImage (package:image_picker/image_picker.dart:63:40)
&lt;asynchronous suspension&gt;
#3      _MyHomePageState._freezesAfterNavigation (/Users/user/Documents/sandpit/imagepickerissue/lib/main.dart:41:40)
&lt;asynchronous suspension&gt;
#4      _MyHomePageState.build.&lt;anonymous closure&gt; (/Users/user/Documents/sandpit/imagepickerissue/lib/main.dart:78:32)
#5      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:323:14)
#6      _InkResponseState.build.&lt;anonymous closure&gt; (package:flutter/src/material/ink_well.dart:375:30)
#7      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:102&lt;…&gt;"><pre class="notranslate"><code class="notranslate">Launching lib/main.dart on iPhone 6 in debug mode...
Running pod install...                                1.1s
Running Xcode build...                               12.2s
Syncing files to device iPhone 6...                   0.9s

🔥  To hot reload your app on the fly, press "r". To restart the app entirely, press "R".
An Observatory debugger and profiler on iPhone 6 is available at: http://127.0.0.1:8105/
For a more detailed help message, press "h". To quit, press "q".
PlatformException(multiple_request, Cancelled by a second request, null)
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:514:7)
#1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:154:18)
&lt;asynchronous suspension&gt;
#2      ImagePicker.pickImage (package:image_picker/image_picker.dart:63:40)
&lt;asynchronous suspension&gt;
#3      _MyHomePageState._freezesAfterNavigation (/Users/user/Documents/sandpit/imagepickerissue/lib/main.dart:41:40)
&lt;asynchronous suspension&gt;
#4      _MyHomePageState.build.&lt;anonymous closure&gt; (/Users/user/Documents/sandpit/imagepickerissue/lib/main.dart:78:32)
#5      _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:323:14)
#6      _InkResponseState.build.&lt;anonymous closure&gt; (package:flutter/src/material/ink_well.dart:375:30)
#7      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:102&lt;…&gt;
</code></pre></div>
<p dir="auto">Run <code class="notranslate">flutter analyze</code> and attach any output of that command also:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="flutter analyze
Analyzing /imagepickerissue...
  hint • The value of the local variable '_imageFile' isn't used at lib/main.dart:41:9 • unused_local_variable
1 issue found.
(Ran in 5.0s)"><pre class="notranslate"><code class="notranslate">flutter analyze
Analyzing /imagepickerissue...
  hint • The value of the local variable '_imageFile' isn't used at lib/main.dart:41:9 • unused_local_variable
1 issue found.
(Ran in 5.0s)
</code></pre></div>
<h2 dir="auto">Flutter Doctor</h2>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="flutter doctor

[✓] Flutter (on Mac OS X 10.12.6 16G1114, locale en-US, channel alpha)
    • Flutter at /Users/user/Documents/flutter
    • Framework revision 8f65fec5f5 (3 weeks ago), 2017-12-12 09:50:14 -0800
    • Engine revision edaecdc8b8
    • Tools Dart version 1.25.0-dev.11.0
    • Engine Dart version 2.0.0-edge.d8ae797298c3a6cf8dc9f4558707bd2672224d3e

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.1)
    • Android SDK at /Users/userhere/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.3.1

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] Connected devices
    • iPhone 6 • 2F890940-D8CE-40A0-B937-A93115097CDE • ios • iOS 11.2 (simulator)"><pre class="notranslate"><code class="notranslate">flutter doctor

[✓] Flutter (on Mac OS X 10.12.6 16G1114, locale en-US, channel alpha)
    • Flutter at /Users/user/Documents/flutter
    • Framework revision 8f65fec5f5 (3 weeks ago), 2017-12-12 09:50:14 -0800
    • Engine revision edaecdc8b8
    • Tools Dart version 1.25.0-dev.11.0
    • Engine Dart version 2.0.0-edge.d8ae797298c3a6cf8dc9f4558707bd2672224d3e

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.1)
    • Android SDK at /Users/userhere/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 27.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.3.1

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] Connected devices
    • iPhone 6 • 2F890940-D8CE-40A0-B937-A93115097CDE • ios • iOS 11.2 (simulator)
</code></pre></div>
<blockquote>
<p dir="auto">For more information about diagnosing and reporting Flutter bugs, please see <a href="https://flutter.io/bug-reports/" rel="nofollow">https://flutter.io/bug-reports/</a>.</p>
</blockquote>