Flutter Engine
The Flutter Engine
|
#include <flutter_platform_node_delegate.h>
Classes | |
class | OwnerBridge |
Public Member Functions | |
FlutterPlatformNodeDelegate () | |
virtual | ~FlutterPlatformNodeDelegate () override |
const ui::AXUniqueId & | GetUniqueId () const override |
const ui::AXNodeData & | GetData () const override |
bool | AccessibilityPerformAction (const ui::AXActionData &data) override |
gfx::NativeViewAccessible | GetParent () override |
gfx::NativeViewAccessible | GetFocus () override |
int | GetChildCount () const override |
gfx::NativeViewAccessible | ChildAtIndex (int index) override |
gfx::Rect | GetBoundsRect (const ui::AXCoordinateSystem coordinate_system, const ui::AXClippingBehavior clipping_behavior, ui::AXOffscreenResult *offscreen_result) const override |
gfx::NativeViewAccessible | GetLowestPlatformAncestor () const override |
ui::AXNodePosition::AXPositionInstance | CreateTextPositionAt (int offset) const override |
virtual void | Init (std::weak_ptr< OwnerBridge > bridge, ui::AXNode *node) |
Called only once, immediately after construction. The constructor doesn't take any arguments because in the Windows subclass we use a special function to construct a COM object. Subclasses must call super. More... | |
ui::AXNode * | GetAXNode () const |
Gets the underlying ax node for this platform node delegate. More... | |
std::weak_ptr< OwnerBridge > | GetOwnerBridge () const |
Gets the owner of this platform node delegate. This is useful when you want to get the information about surrounding nodes of this platform node delegate, e.g. the global rect of this platform node delegate. This pointer is only safe in the platform thread. More... | |
virtual ui::AXPlatformNode * | GetPlatformNode () const |
virtual ui::AXPlatformNode * | GetFromNodeID (int32_t id) override |
virtual ui::AXPlatformNode * | GetFromTreeIDAndNodeID (const ui::AXTreeID &tree_id, int32_t node_id) override |
virtual const ui::AXTree::Selection | GetUnignoredSelection () const override |
Public Member Functions inherited from ui::AXPlatformNodeDelegateBase | |
AXPlatformNodeDelegateBase () | |
~AXPlatformNodeDelegateBase () override | |
const AXNodeData & | GetData () const override |
const AXTreeData & | GetTreeData () const override |
std::u16string | GetInnerText () const override |
const AXTree::Selection | GetUnignoredSelection () const override |
AXNodePosition::AXPositionInstance | CreateTextPositionAt (int offset) const override |
gfx::NativeViewAccessible | GetNSWindow () override |
gfx::NativeViewAccessible | GetNativeViewAccessible () override |
gfx::NativeViewAccessible | GetParent () override |
gfx::NativeViewAccessible | GetLowestPlatformAncestor () const override |
int | GetIndexInParent () override |
int | GetChildCount () const override |
gfx::NativeViewAccessible | ChildAtIndex (int index) override |
bool | HasModalDialog () const override |
gfx::NativeViewAccessible | GetFirstChild () override |
gfx::NativeViewAccessible | GetLastChild () override |
gfx::NativeViewAccessible | GetNextSibling () override |
gfx::NativeViewAccessible | GetPreviousSibling () override |
bool | IsChildOfLeaf () const override |
bool | IsChildOfPlainTextField () const override |
bool | IsLeaf () const override |
bool | IsToplevelBrowserWindow () override |
gfx::NativeViewAccessible | GetClosestPlatformObject () const override |
std::unique_ptr< AXPlatformNodeDelegate::ChildIterator > | ChildrenBegin () override |
std::unique_ptr< AXPlatformNodeDelegate::ChildIterator > | ChildrenEnd () override |
std::string | GetName () const override |
std::u16string | GetHypertext () const override |
bool | SetHypertextSelection (int start_offset, int end_offset) override |
TextAttributeMap | ComputeTextAttributeMap (const TextAttributeList &default_attributes) const override |
std::string | GetInheritedFontFamilyName () const override |
gfx::Rect | GetBoundsRect (const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result) const override |
gfx::Rect | GetHypertextRangeBoundsRect (const int start_offset, const int end_offset, const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result) const override |
gfx::Rect | GetInnerTextRangeBoundsRect (const int start_offset, const int end_offset, const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result) const override |
gfx::Rect | GetClippedScreenBoundsRect (AXOffscreenResult *offscreen_result=nullptr) const override |
gfx::Rect | GetUnclippedScreenBoundsRect (AXOffscreenResult *offscreen_result=nullptr) const |
gfx::NativeViewAccessible | HitTestSync (int screen_physical_pixel_x, int screen_physical_pixel_y) const override |
gfx::NativeViewAccessible | GetFocus () override |
bool | IsOffscreen () const override |
bool | IsMinimized () const override |
bool | IsText () const override |
bool | IsWebContent () const override |
bool | HasVisibleCaretOrSelection () const override |
AXPlatformNode * | GetFromNodeID (int32_t id) override |
AXPlatformNode * | GetFromTreeIDAndNodeID (const ui::AXTreeID &ax_tree_id, int32_t id) override |
AXPlatformNode * | GetTargetNodeForRelation (ax::mojom::IntAttribute attr) override |
std::vector< AXPlatformNode * > | GetTargetNodesForRelation (ax::mojom::IntListAttribute attr) override |
std::set< AXPlatformNode * > | GetReverseRelations (ax::mojom::IntAttribute attr) override |
std::set< AXPlatformNode * > | GetReverseRelations (ax::mojom::IntListAttribute attr) override |
std::u16string | GetAuthorUniqueId () const override |
const AXUniqueId & | GetUniqueId () const override |
std::optional< int > | FindTextBoundary (ax::mojom::TextBoundary boundary, int offset, ax::mojom::MoveDirection direction, ax::mojom::TextAffinity affinity) const override |
const std::vector< gfx::NativeViewAccessible > | GetUIADescendants () const override |
std::string | GetLanguage () const override |
bool | IsTable () const override |
std::optional< int > | GetTableColCount () const override |
std::optional< int > | GetTableRowCount () const override |
std::optional< int > | GetTableAriaColCount () const override |
std::optional< int > | GetTableAriaRowCount () const override |
std::optional< int > | GetTableCellCount () const override |
std::optional< bool > | GetTableHasColumnOrRowHeaderNode () const override |
std::vector< int32_t > | GetColHeaderNodeIds () const override |
std::vector< int32_t > | GetColHeaderNodeIds (int col_index) const override |
std::vector< int32_t > | GetRowHeaderNodeIds () const override |
std::vector< int32_t > | GetRowHeaderNodeIds (int row_index) const override |
AXPlatformNode * | GetTableCaption () const override |
bool | IsTableRow () const override |
std::optional< int > | GetTableRowRowIndex () const override |
bool | IsTableCellOrHeader () const override |
std::optional< int > | GetTableCellIndex () const override |
std::optional< int > | GetTableCellColIndex () const override |
std::optional< int > | GetTableCellRowIndex () const override |
std::optional< int > | GetTableCellColSpan () const override |
std::optional< int > | GetTableCellRowSpan () const override |
std::optional< int > | GetTableCellAriaColIndex () const override |
std::optional< int > | GetTableCellAriaRowIndex () const override |
std::optional< int32_t > | GetCellId (int row_index, int col_index) const override |
std::optional< int32_t > | CellIndexToId (int cell_index) const override |
bool | IsCellOrHeaderOfARIATable () const override |
bool | IsCellOrHeaderOfARIAGrid () const override |
bool | IsOrderedSetItem () const override |
bool | IsOrderedSet () const override |
std::optional< int > | GetPosInSet () const override |
std::optional< int > | GetSetSize () const override |
gfx::AcceleratedWidget | GetTargetForNativeAccessibilityEvent () override |
bool | AccessibilityPerformAction (const AXActionData &data) override |
std::u16string | GetLocalizedStringForImageAnnotationStatus (ax::mojom::ImageAnnotationStatus status) const override |
std::u16string | GetLocalizedRoleDescriptionForUnlabeledImage () const override |
std::u16string | GetLocalizedStringForLandmarkType () const override |
std::u16string | GetLocalizedStringForRoleDescription () const override |
std::u16string | GetStyleNameAttributeAsLocalizedString () const override |
bool | ShouldIgnoreHoveredStateForTesting () override |
Public Member Functions inherited from ui::AXPlatformNodeDelegate | |
virtual | ~AXPlatformNodeDelegate ()=default |
virtual const AXNodeData & | GetData () const =0 |
virtual const AXTreeData & | GetTreeData () const =0 |
virtual std::u16string | GetInnerText () const =0 |
virtual const AXTree::Selection | GetUnignoredSelection () const =0 |
virtual AXNodePosition::AXPositionInstance | CreateTextPositionAt (int offset) const =0 |
virtual gfx::NativeViewAccessible | GetNSWindow ()=0 |
virtual gfx::NativeViewAccessible | GetNativeViewAccessible ()=0 |
virtual gfx::NativeViewAccessible | GetParent ()=0 |
virtual int | GetIndexInParent ()=0 |
virtual int | GetChildCount () const =0 |
virtual gfx::NativeViewAccessible | ChildAtIndex (int index)=0 |
virtual bool | HasModalDialog () const =0 |
virtual gfx::NativeViewAccessible | GetFirstChild ()=0 |
virtual gfx::NativeViewAccessible | GetLastChild ()=0 |
virtual gfx::NativeViewAccessible | GetNextSibling ()=0 |
virtual gfx::NativeViewAccessible | GetPreviousSibling ()=0 |
virtual bool | IsChildOfLeaf () const =0 |
virtual bool | IsChildOfPlainTextField () const =0 |
virtual bool | IsLeaf () const =0 |
virtual bool | IsToplevelBrowserWindow ()=0 |
virtual gfx::NativeViewAccessible | GetClosestPlatformObject () const =0 |
virtual std::unique_ptr< AXPlatformNodeDelegate::ChildIterator > | ChildrenBegin ()=0 |
virtual std::unique_ptr< AXPlatformNodeDelegate::ChildIterator > | ChildrenEnd ()=0 |
virtual std::string | GetName () const =0 |
virtual std::u16string | GetHypertext () const =0 |
virtual bool | SetHypertextSelection (int start_offset, int end_offset)=0 |
virtual TextAttributeMap | ComputeTextAttributeMap (const TextAttributeList &default_attributes) const =0 |
virtual std::string | GetInheritedFontFamilyName () const =0 |
virtual gfx::Rect | GetBoundsRect (const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result=nullptr) const =0 |
virtual gfx::Rect | GetClippedScreenBoundsRect (AXOffscreenResult *offscreen_result=nullptr) const =0 |
virtual gfx::Rect | GetHypertextRangeBoundsRect (const int start_offset, const int end_offset, const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result=nullptr) const =0 |
virtual gfx::Rect | GetInnerTextRangeBoundsRect (const int start_offset, const int end_offset, const AXCoordinateSystem coordinate_system, const AXClippingBehavior clipping_behavior, AXOffscreenResult *offscreen_result=nullptr) const =0 |
virtual gfx::NativeViewAccessible | HitTestSync (int screen_physical_pixel_x, int screen_physical_pixel_y) const =0 |
virtual gfx::NativeViewAccessible | GetFocus ()=0 |
virtual bool | IsOffscreen () const =0 |
virtual bool | IsMinimized () const =0 |
virtual bool | IsText () const =0 |
virtual bool | IsWebContent () const =0 |
virtual bool | HasVisibleCaretOrSelection () const =0 |
virtual AXPlatformNode * | GetFromNodeID (int32_t id)=0 |
virtual AXPlatformNode * | GetFromTreeIDAndNodeID (const ui::AXTreeID &ax_tree_id, int32_t id)=0 |
virtual AXPlatformNode * | GetTargetNodeForRelation (ax::mojom::IntAttribute attr)=0 |
virtual std::vector< AXPlatformNode * > | GetTargetNodesForRelation (ax::mojom::IntListAttribute attr)=0 |
virtual std::set< AXPlatformNode * > | GetReverseRelations (ax::mojom::IntAttribute attr)=0 |
virtual std::set< AXPlatformNode * > | GetReverseRelations (ax::mojom::IntListAttribute attr)=0 |
virtual std::u16string | GetAuthorUniqueId () const =0 |
virtual const AXUniqueId & | GetUniqueId () const =0 |
virtual std::optional< int > | FindTextBoundary (ax::mojom::TextBoundary boundary, int offset, ax::mojom::MoveDirection direction, ax::mojom::TextAffinity affinity) const =0 |
virtual const std::vector< gfx::NativeViewAccessible > | GetUIADescendants () const =0 |
virtual std::string | GetLanguage () const =0 |
virtual bool | IsTable () const =0 |
virtual std::optional< int > | GetTableColCount () const =0 |
virtual std::optional< int > | GetTableRowCount () const =0 |
virtual std::optional< int > | GetTableAriaColCount () const =0 |
virtual std::optional< int > | GetTableAriaRowCount () const =0 |
virtual std::optional< int > | GetTableCellCount () const =0 |
virtual std::optional< bool > | GetTableHasColumnOrRowHeaderNode () const =0 |
virtual std::vector< int32_t > | GetColHeaderNodeIds () const =0 |
virtual std::vector< int32_t > | GetColHeaderNodeIds (int col_index) const =0 |
virtual std::vector< int32_t > | GetRowHeaderNodeIds () const =0 |
virtual std::vector< int32_t > | GetRowHeaderNodeIds (int row_index) const =0 |
virtual AXPlatformNode * | GetTableCaption () const =0 |
virtual bool | IsTableRow () const =0 |
virtual std::optional< int > | GetTableRowRowIndex () const =0 |
virtual bool | IsTableCellOrHeader () const =0 |
virtual std::optional< int > | GetTableCellIndex () const =0 |
virtual std::optional< int > | GetTableCellColIndex () const =0 |
virtual std::optional< int > | GetTableCellRowIndex () const =0 |
virtual std::optional< int > | GetTableCellColSpan () const =0 |
virtual std::optional< int > | GetTableCellRowSpan () const =0 |
virtual std::optional< int > | GetTableCellAriaColIndex () const =0 |
virtual std::optional< int > | GetTableCellAriaRowIndex () const =0 |
virtual std::optional< int32_t > | GetCellId (int row_index, int col_index) const =0 |
virtual std::optional< int32_t > | CellIndexToId (int cell_index) const =0 |
virtual bool | IsCellOrHeaderOfARIATable () const =0 |
virtual bool | IsCellOrHeaderOfARIAGrid () const =0 |
virtual bool | IsOrderedSetItem () const =0 |
virtual bool | IsOrderedSet () const =0 |
virtual std::optional< int > | GetPosInSet () const =0 |
virtual std::optional< int > | GetSetSize () const =0 |
virtual gfx::AcceleratedWidget | GetTargetForNativeAccessibilityEvent ()=0 |
virtual bool | AccessibilityPerformAction (const AXActionData &data)=0 |
virtual std::u16string | GetLocalizedRoleDescriptionForUnlabeledImage () const =0 |
virtual std::u16string | GetLocalizedStringForImageAnnotationStatus (ax::mojom::ImageAnnotationStatus status) const =0 |
virtual std::u16string | GetLocalizedStringForLandmarkType () const =0 |
virtual std::u16string | GetLocalizedStringForRoleDescription () const =0 |
virtual std::u16string | GetStyleNameAttributeAsLocalizedString () const =0 |
virtual bool | ShouldIgnoreHoveredStateForTesting ()=0 |
virtual gfx::NativeViewAccessible | GetLowestPlatformAncestor () const =0 |
std::string | ToString () |
std::string | SubtreeToString () |
Additional Inherited Members | |
Protected Member Functions inherited from ui::AXPlatformNodeDelegateBase | |
std::string | SubtreeToStringHelper (size_t level) override |
std::set< ui::AXPlatformNode * > | GetNodesForNodeIds (const std::set< int32_t > &ids) |
AXPlatformNodeDelegate * | GetParentDelegate () |
Protected Member Functions inherited from ui::AXPlatformNodeDelegate | |
AXPlatformNodeDelegate ()=default | |
virtual std::string | SubtreeToStringHelper (size_t level)=0 |
The platform node delegate to be used in accessibility bridge. This class is responsible for providing native accessibility object with appropriate information, such as accessibility label/value/bounds.
While most methods have default implementations and are ready to be used as-is, the subclasses must override the GetNativeViewAccessible to return native accessibility objects. To do that, subclasses should create and maintain AXPlatformNode[s] which delegate their accessibility attributes to this class.
For desktop platforms, subclasses also need to override the GetBoundsRect to apply window-to-screen transform.
This class transforms bounds assuming the device pixel ratio is 1.0. See the https://github.com/flutter/flutter/issues/74283 for more information.
Definition at line 33 of file flutter_platform_node_delegate.h.
|
default |
|
overridevirtualdefault |
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 30 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 87 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 136 of file flutter_platform_node_delegate.cc.
ui::AXNode * flutter::FlutterPlatformNodeDelegate::GetAXNode | ( | ) | const |
Gets the underlying ax node for this platform node delegate.
Definition at line 26 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Reimplemented in flutter::FlutterPlatformNodeDelegateMac, and flutter::FlutterPlatformNodeDelegateWindows.
Definition at line 94 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 83 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 60 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 73 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 140 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 150 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 124 of file flutter_platform_node_delegate.cc.
std::weak_ptr< FlutterPlatformNodeDelegate::OwnerBridge > flutter::FlutterPlatformNodeDelegate::GetOwnerBridge | ( | ) | const |
Gets the owner of this platform node delegate. This is useful when you want to get the information about surrounding nodes of this platform node delegate, e.g. the global rect of this platform node delegate. This pointer is only safe in the platform thread.
Definition at line 115 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Reimplemented in flutter::FlutterPlatformNodeDelegateMac.
Definition at line 64 of file flutter_platform_node_delegate.cc.
|
virtual |
Reimplemented in flutter::FlutterPlatformNodeDelegateWindows.
Definition at line 119 of file flutter_platform_node_delegate.cc.
|
overridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 160 of file flutter_platform_node_delegate.cc.
|
inlineoverridevirtual |
Implements ui::AXPlatformNodeDelegate.
Definition at line 102 of file flutter_platform_node_delegate.h.
|
virtual |
Called only once, immediately after construction. The constructor doesn't take any arguments because in the Windows subclass we use a special function to construct a COM object. Subclasses must call super.
Reimplemented in flutter::FlutterPlatformNodeDelegateMac, and flutter::FlutterPlatformNodeDelegateWindows.
Definition at line 20 of file flutter_platform_node_delegate.cc.