blob: 52bedf51c18871810422bc8eedf9fe79753106e0 [file] [log] [blame]
// 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();
}