blob: e56b69a3f51c9a7e4e9ee65253e688f72509d360 [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.
@available(added=7)
library fuchsia.ui.lifecycle;
/// An interface implemented by system UI components that wish to terminate gracefully.
@discoverable
protocol LifecycleController {
/// The controller of this component has requested that this component terminate gracefully.
/// If the component does not terminate itself in a timely manner, the client may forcibly
/// terminate the component.
///
/// The connection to the controller will be broken shortly before the target terminates;
/// clients should listen for channel closure to learn the approximate moment that the target
/// terminates.
Terminate();
};