| // Copyright 2018 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. |
| |
| library fuchsia.ui.views; |
| |
| using fuchsia.ui.gfx; |
| |
| union Event { |
| ChildViewAttachedEvent child_view_attached; |
| ChildViewUnavailableEvent child_view_unavailable; |
| }; |
| |
| // Called when a child view is attached. |
| struct ChildViewAttachedEvent { |
| uint32 view_holder_id; |
| }; |
| |
| // Called when a child view has become unavailable. |
| // |
| // A child may become unavailable for many reasons such being unregistered |
| // by its application, abnormal termination of its application, or |
| // cycles being introduced in the view tree. |
| // |
| // To complete removal of an unavailable child, this view component must |
| // call RemoveChild() on its view with |child_key|. |
| // |
| // The implementation should invoke the callback once the event has |
| // been handled. |
| struct ChildViewUnavailableEvent { |
| uint32 view_holder_id; |
| }; |