The only call that passes opened==true into here (that is, the only case where the value of `suggestions` visually matters) already calls `suggestions.clear()` right after this. I think it would be simpler and more efficient to just define a simple `@observable bool suggestionOpened = false` here and bind it in spark_suggest_box.html as `<spark-overlay ... opened="{{suggestionsOpened}}">`.

That might break in Chrome after deployment process due to a suspected bug in data binding that I recently encountered, and have just briefly discussed with the Polymer Dart team. If that happens, I'll add necessary workarounds here myself, referencing the filed bug.