#include "third_party/blink/renderer/modules/accessibility/ax_inline_text_box.h"
#include <stdint.h>
#include <optional>
#include <utility>
#include "base/numerics/clamped_math.h"
#include "third_party/blink/renderer/core/editing/ephemeral_range.h"
#include "third_party/blink/renderer/core/editing/markers/custom_highlight_marker.h"
#include "third_party/blink/renderer/core/editing/markers/document_marker_controller.h"
#include "third_party/blink/renderer/core/editing/position.h"
#include "third_party/blink/renderer/core/highlight/highlight.h"
#include "third_party/blink/renderer/core/layout/inline/abstract_inline_text_box.h"
#include "third_party/blink/renderer/core/layout/inline/inline_node.h"
#include "third_party/blink/renderer/core/layout/inline/offset_mapping.h"
#include "third_party/blink/renderer/core/layout/layout_text.h"
#include "third_party/blink/renderer/modules/accessibility/ax_object_cache_impl.h"
#include "third_party/blink/renderer/modules/accessibility/ax_position.h"
#include "third_party/blink/renderer/modules/accessibility/ax_range.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "ui/accessibility/accessibility_features.h"
#include "ui/accessibility/ax_role_properties.h"
#include "ui/gfx/geometry/transform.h"
namespace blink {
AXInlineTextBox::AXInlineTextBox(AbstractInlineTextBox* inline_text_box,
AXObjectCacheImpl& ax_object_cache)
: … { … }
void AXInlineTextBox::Trace(Visitor* visitor) const { … }
void AXInlineTextBox::GetRelativeBounds(AXObject** out_container,
gfx::RectF& out_bounds_in_container,
gfx::Transform& out_container_transform,
bool* clips_children) const { … }
bool AXInlineTextBox::ComputeIsIgnored(
IgnoredReasons* ignored_reasons) const { … }
void AXInlineTextBox::TextCharacterOffsets(Vector<int>& offsets) const { … }
void AXInlineTextBox::GetWordBoundaries(Vector<int>& word_starts,
Vector<int>& word_ends) const { … }
int AXInlineTextBox::TextOffsetInFormattingContext(int offset) const { … }
int AXInlineTextBox::TextOffsetInContainer(int offset) const { … }
String AXInlineTextBox::GetName(ax::mojom::blink::NameFrom& name_from,
AXObject::AXObjectVector* name_objects) const { … }
ax::mojom::blink::WritingDirection AXInlineTextBox::GetTextDirection() const { … }
Document* AXInlineTextBox::GetDocument() const { … }
AbstractInlineTextBox* AXInlineTextBox::GetInlineTextBox() const { … }
AXObject* AXInlineTextBox::NextOnLine() const { … }
AXObject* AXInlineTextBox::PreviousOnLine() const { … }
void AXInlineTextBox::SerializeMarkerAttributes(
ui::AXNodeData* node_data) const { … }
void AXInlineTextBox::Init(AXObject* parent) { … }
void AXInlineTextBox::Detach() { … }
bool AXInlineTextBox::IsAXInlineTextBox() const { … }
bool AXInlineTextBox::IsLineBreakingObject() const { … }
int AXInlineTextBox::TextLength() const { … }
void AXInlineTextBox::ClearChildren() { … }
}