| // Copyright 2019 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import 'package:fidl_fuchsia_modular/fidl_async.dart'; |
| import 'package:fuchsia_scenic_flutter/child_view_connection.dart'; |
| |
| /// Defines a class that represents a 'story' in Fuchsia. It holds state that |
| /// describe the current runtime characterstics of the story: |
| abstract class Story { |
| /// Returns the unique id of the story. |
| String get id; |
| |
| /// Returns the [StoryInfo] of the story. |
| StoryInfo get info; |
| |
| /// Holds the focused state of the story. |
| bool focused; |
| |
| /// Holds the runtime [StoryState] of the story. |
| StoryState state; |
| |
| /// Holds the [StoryVisibilityState] of the story. |
| StoryVisibilityState visibilityState; |
| |
| /// Holds the [ChildViewConnection] assigned to the story. |
| ChildViewConnection childViewConnection; |
| |
| /// Request focus on this story instance. |
| void focus(); |
| |
| /// Stop the story. |
| void stop(); |
| |
| /// Delete this story instance. |
| void delete(); |
| } |