Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 5ca80bd

Browse files
authored
[Linux][A11y] implement AtkEditableText interface (#33955)
* Make FlAccessibleNode derivable This allows introducing specialized subclasses that implement such a11y interfaces as AtkEditableText that should not be implemented for the generic node. * FlAccessibleNode: add set value, text selection & perform action Prepare API required for the upcoming AtkEditableText implementation. * FlViewAccessible: postpone child node creation This changes the a11y node creation flow so that (unknown) child nodes are not pre-created when their parent is updated but "pending" child node IDs are collected for later. Parent-child relationships are established at the end of update batches when all nodes have been created. * Add FlAccessibleTextField that implements AtkEditableText Solves: flutter/flutter#103191
1 parent 00b7292 commit 5ca80bd

10 files changed

+1360
-136
lines changed

ci/licenses_golden/licenses_flutter

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2133,6 +2133,9 @@ FILE: ../../../flutter/shell/platform/linux/fl_accessibility_plugin.h
21332133
FILE: ../../../flutter/shell/platform/linux/fl_accessible_node.cc
21342134
FILE: ../../../flutter/shell/platform/linux/fl_accessible_node.h
21352135
FILE: ../../../flutter/shell/platform/linux/fl_accessible_node_test.cc
2136+
FILE: ../../../flutter/shell/platform/linux/fl_accessible_text_field.cc
2137+
FILE: ../../../flutter/shell/platform/linux/fl_accessible_text_field.h
2138+
FILE: ../../../flutter/shell/platform/linux/fl_accessible_text_field_test.cc
21362139
FILE: ../../../flutter/shell/platform/linux/fl_backing_store_provider.cc
21372140
FILE: ../../../flutter/shell/platform/linux/fl_backing_store_provider.h
21382141
FILE: ../../../flutter/shell/platform/linux/fl_basic_message_channel.cc

shell/platform/linux/BUILD.gn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ source_set("flutter_linux_sources") {
9999
sources = [
100100
"fl_accessibility_plugin.cc",
101101
"fl_accessible_node.cc",
102+
"fl_accessible_text_field.cc",
102103
"fl_backing_store_provider.cc",
103104
"fl_basic_message_channel.cc",
104105
"fl_binary_codec.cc",
@@ -192,6 +193,7 @@ executable("flutter_linux_unittests") {
192193

193194
sources = [
194195
"fl_accessible_node_test.cc",
196+
"fl_accessible_text_field_test.cc",
195197
"fl_basic_message_channel_test.cc",
196198
"fl_binary_codec_test.cc",
197199
"fl_binary_messenger_test.cc",

0 commit comments

Comments
 (0)