class FocusManager

Defined at line 35 of file ../../src/ui/scenic/lib/focus/focus_manager.h

Class for tracking focus state.

Public Methods

void FocusManager (inspect::Node inspect_node)

Defined at line 30 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

void FocusManager (FocusManager && other)

Defined at line 38 of file ../../src/ui/scenic/lib/focus/focus_manager.h

void Publish (sys::ComponentContext & component_context)

Defined at line 53 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

FocusChangeStatus RequestFocus (zx_koid_t requestor, zx_koid_t request)

Request focus transfer to the proposed ViewRef's KOID |request|, on the behalf of |requestor|.

Return kAccept if successful.

- If |requestor| is not authorized to focus |request|, return error.

- If the |request| is not in |snapshot_.view_tree|, return error.

- If the |request| is otherwise valid, but violates the focus transfer policy, return error.

Defined at line 58 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

const std::vector<zx_koid_t> & focus_chain ()

Defined at line 60 of file ../../src/ui/scenic/lib/focus/focus_manager.h

void SetAutoFocus (zx_koid_t requestor, zx_koid_t target)

Sets the auto focus target |requestor| to |target|.

If |target| is ZX_KOID_INVALID the |requestor| entry is removed.

Defined at line 143 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

void OnNewViewTreeSnapshot (std::shared_ptr<const view_tree::Snapshot> snapshot)

Saves the new snapshot and updates the focus chain accordingly.

Defined at line 91 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

void Register (fidl::InterfaceHandle<fuchsia::ui::focus::FocusChainListener> focus_chain_listener)

|fuchsia.ui.focus.FocusChainListenerRegistry|

Defined at line 101 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

void RegisterViewRefFocused (zx_koid_t koid, fidl::InterfaceRequest<fuchsia::ui::views::ViewRefFocused> vrf)

Defined at line 114 of file ../../src/ui/scenic/lib/focus/focus_manager.cc

void RegisterViewFocuser (zx_koid_t koid, fidl::InterfaceRequest<fuchsia::ui::views::Focuser> focuser)

Defined at line 119 of file ../../src/ui/scenic/lib/focus/focus_manager.cc