title: setState() callback argument returned a Future in flutter
body: <p>I'm trying to run a statment with await inside a <code>setState</code> block, I added it inside another <code>Future&lt;void&gt;</code> function but still I need to add <code>async</code> on the <code>setState</code> to be able to run it . </p>
  
  <p>here is my code : </p>
  
  <pre class="lang-dart prettyprint-override"><code>setState(() async {
    chosenStations.clear();
    chosenStations.add(allStations[
    suggestions.indexOf(fromLocationName)]);
    _loading = true;
    chosenStations.add(allStations[
    suggestions.indexOf(toLocationName)]);
    await showingLines();
        });
  
  
    Future&lt;void&gt; showingLines() async {
      theLines.clear();
      theLines = await DatabaseServices().fetchingLinesData(
          chosenStations[0], chosenStations[1]);
    }
  </code></pre>
  
  <p>and I got this error : </p>
  
  <pre><code>Instead of performing asynchronous work inside a call to setState(), first execute the work (without updating the widget state), and then synchronously update the state inside a call to setState().
  </code></pre>