From c3e785b8007fbeede6d3d01c47d56321af4929fb Mon Sep 17 00:00:00 2001 From: Ankit Dave Date: Mon, 16 Sep 2019 14:43:52 -0700 Subject: [PATCH 1/2] [flutter] Remove old A11y API's. This cl does following: * Replaces SemanticActionListener with SemanticListener. * Replaces Commit with CommitUpdates. * Replaces RegisterView with RegisterViewForSemantics. * Not changes fakes since they are not present in engine yet. Testing: * Build Passed BUG:35718 --- .../fuchsia/flutter/accessibility_bridge.cc | 15 ++++++++------- .../fuchsia/flutter/accessibility_bridge.h | 17 +++++++++++------ 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/shell/platform/fuchsia/flutter/accessibility_bridge.cc b/shell/platform/fuchsia/flutter/accessibility_bridge.cc index ba182ff3730c3..8f2a35d58f343 100644 --- a/shell/platform/fuchsia/flutter/accessibility_bridge.cc +++ b/shell/platform/fuchsia/flutter/accessibility_bridge.cc @@ -24,10 +24,10 @@ AccessibilityBridge::AccessibilityBridge( << zx_status_get_string(status) << "."; }); fidl::InterfaceHandle< - fuchsia::accessibility::semantics::SemanticActionListener> + fuchsia::accessibility::semantics::SemanticListener> listener_handle; binding_.Bind(listener_handle.NewRequest()); - fuchsia_semantics_manager_->RegisterView( + fuchsia_semantics_manager_->RegisterViewForSemantics( std::move(view_ref), std::move(listener_handle), tree_ptr_.NewRequest()); } @@ -223,20 +223,21 @@ void AccessibilityBridge::AddSemanticsNodeUpdate( PruneUnreachableNodes(); tree_ptr_->UpdateSemanticNodes(std::move(nodes)); - tree_ptr_->Commit(); + // TODO(35718): Implement the callback here. + tree_ptr_->CommitUpdates([]() {}); } -// |fuchsia::accessibility::semantics::SemanticActionListener| +// |fuchsia::accessibility::semantics::SemanticListener| void AccessibilityBridge::OnAccessibilityActionRequested( uint32_t node_id, fuchsia::accessibility::semantics::Action action, - fuchsia::accessibility::semantics::SemanticActionListener:: + fuchsia::accessibility::semantics::SemanticListener:: OnAccessibilityActionRequestedCallback callback) {} -// |fuchsia::accessibility::semantics::SemanticActionListener| +// |fuchsia::accessibility::semantics::SemanticListener| void AccessibilityBridge::HitTest( fuchsia::math::PointF local_point, - fuchsia::accessibility::semantics::SemanticActionListener::HitTestCallback + fuchsia::accessibility::semantics::SemanticListener::HitTestCallback callback) {} } // namespace flutter_runner diff --git a/shell/platform/fuchsia/flutter/accessibility_bridge.h b/shell/platform/fuchsia/flutter/accessibility_bridge.h index 233fcd5f18d08..2d34845fc8e97 100644 --- a/shell/platform/fuchsia/flutter/accessibility_bridge.h +++ b/shell/platform/fuchsia/flutter/accessibility_bridge.h @@ -34,7 +34,7 @@ namespace flutter_runner { // (e.g. Flutter only sends updates for changed nodes, but Fuchsia requires // the entire flattened subtree to be sent when a node changes. class AccessibilityBridge - : public fuchsia::accessibility::semantics::SemanticActionListener { + : public fuchsia::accessibility::semantics::SemanticListener { public: // TODO(MI4-2531, FIDL-718): Remove this. We shouldn't be worried about // batching messages at this level. @@ -76,7 +76,7 @@ class AccessibilityBridge private: static constexpr int32_t kRootNodeId = 0; - fidl::Binding + fidl::Binding binding_; fuchsia::accessibility::semantics::SemanticsManagerPtr fuchsia_semantics_manager_; @@ -115,18 +115,23 @@ class AccessibilityBridge // May result in a call to FuchsiaAccessibility::Commit(). void PruneUnreachableNodes(); - // |fuchsia::accessibility::semantics::SemanticActionListener| + // |fuchsia::accessibility::semantics::SemanticListener| void OnAccessibilityActionRequested( uint32_t node_id, fuchsia::accessibility::semantics::Action action, - fuchsia::accessibility::semantics::SemanticActionListener:: + fuchsia::accessibility::semantics::SemanticListener:: OnAccessibilityActionRequestedCallback callback) override; - // |fuchsia::accessibility::semantics::SemanticActionListener| + // |fuchsia::accessibility::semantics::SemanticListener| void HitTest( fuchsia::math::PointF local_point, - fuchsia::accessibility::semantics::SemanticActionListener::HitTestCallback + fuchsia::accessibility::semantics::SemanticListener::HitTestCallback callback) override; + + // |fuchsia::accessibility::semantics::SemanticListener| + void OnSemanticsModeChanged( + bool enabled, OnSemanticsModeChangedCallback callback) override {} + FML_DISALLOW_COPY_AND_ASSIGN(AccessibilityBridge); }; } // namespace flutter_runner From e992a4daeefbc722f5d30f0f4498869cb72b9634 Mon Sep 17 00:00:00 2001 From: Ankit Dave Date: Mon, 16 Sep 2019 14:43:52 -0700 Subject: [PATCH 2/2] [flutter] Remove old A11y API's. This cl does following: * Replaces SemanticActionListener with SemanticListener. * Replaces Commit with CommitUpdates. * Replaces RegisterView with RegisterViewForSemantics. * Not changes fakes since they are not present in engine yet. Testing: * Build Passed BUG:35718 --- .../fuchsia/flutter/accessibility_bridge.cc | 16 +++++++++------- .../fuchsia/flutter/accessibility_bridge.h | 17 +++++++++++------ 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/shell/platform/fuchsia/flutter/accessibility_bridge.cc b/shell/platform/fuchsia/flutter/accessibility_bridge.cc index ba182ff3730c3..dc3586b7e61f1 100644 --- a/shell/platform/fuchsia/flutter/accessibility_bridge.cc +++ b/shell/platform/fuchsia/flutter/accessibility_bridge.cc @@ -24,10 +24,10 @@ AccessibilityBridge::AccessibilityBridge( << zx_status_get_string(status) << "."; }); fidl::InterfaceHandle< - fuchsia::accessibility::semantics::SemanticActionListener> + fuchsia::accessibility::semantics::SemanticListener> listener_handle; binding_.Bind(listener_handle.NewRequest()); - fuchsia_semantics_manager_->RegisterView( + fuchsia_semantics_manager_->RegisterViewForSemantics( std::move(view_ref), std::move(listener_handle), tree_ptr_.NewRequest()); } @@ -223,20 +223,22 @@ void AccessibilityBridge::AddSemanticsNodeUpdate( PruneUnreachableNodes(); tree_ptr_->UpdateSemanticNodes(std::move(nodes)); - tree_ptr_->Commit(); + // TODO(dnfield): Implement the callback here + // https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=35718. + tree_ptr_->CommitUpdates([]() {}); } -// |fuchsia::accessibility::semantics::SemanticActionListener| +// |fuchsia::accessibility::semantics::SemanticListener| void AccessibilityBridge::OnAccessibilityActionRequested( uint32_t node_id, fuchsia::accessibility::semantics::Action action, - fuchsia::accessibility::semantics::SemanticActionListener:: + fuchsia::accessibility::semantics::SemanticListener:: OnAccessibilityActionRequestedCallback callback) {} -// |fuchsia::accessibility::semantics::SemanticActionListener| +// |fuchsia::accessibility::semantics::SemanticListener| void AccessibilityBridge::HitTest( fuchsia::math::PointF local_point, - fuchsia::accessibility::semantics::SemanticActionListener::HitTestCallback + fuchsia::accessibility::semantics::SemanticListener::HitTestCallback callback) {} } // namespace flutter_runner diff --git a/shell/platform/fuchsia/flutter/accessibility_bridge.h b/shell/platform/fuchsia/flutter/accessibility_bridge.h index 233fcd5f18d08..2d34845fc8e97 100644 --- a/shell/platform/fuchsia/flutter/accessibility_bridge.h +++ b/shell/platform/fuchsia/flutter/accessibility_bridge.h @@ -34,7 +34,7 @@ namespace flutter_runner { // (e.g. Flutter only sends updates for changed nodes, but Fuchsia requires // the entire flattened subtree to be sent when a node changes. class AccessibilityBridge - : public fuchsia::accessibility::semantics::SemanticActionListener { + : public fuchsia::accessibility::semantics::SemanticListener { public: // TODO(MI4-2531, FIDL-718): Remove this. We shouldn't be worried about // batching messages at this level. @@ -76,7 +76,7 @@ class AccessibilityBridge private: static constexpr int32_t kRootNodeId = 0; - fidl::Binding + fidl::Binding binding_; fuchsia::accessibility::semantics::SemanticsManagerPtr fuchsia_semantics_manager_; @@ -115,18 +115,23 @@ class AccessibilityBridge // May result in a call to FuchsiaAccessibility::Commit(). void PruneUnreachableNodes(); - // |fuchsia::accessibility::semantics::SemanticActionListener| + // |fuchsia::accessibility::semantics::SemanticListener| void OnAccessibilityActionRequested( uint32_t node_id, fuchsia::accessibility::semantics::Action action, - fuchsia::accessibility::semantics::SemanticActionListener:: + fuchsia::accessibility::semantics::SemanticListener:: OnAccessibilityActionRequestedCallback callback) override; - // |fuchsia::accessibility::semantics::SemanticActionListener| + // |fuchsia::accessibility::semantics::SemanticListener| void HitTest( fuchsia::math::PointF local_point, - fuchsia::accessibility::semantics::SemanticActionListener::HitTestCallback + fuchsia::accessibility::semantics::SemanticListener::HitTestCallback callback) override; + + // |fuchsia::accessibility::semantics::SemanticListener| + void OnSemanticsModeChanged( + bool enabled, OnSemanticsModeChangedCallback callback) override {} + FML_DISALLOW_COPY_AND_ASSIGN(AccessibilityBridge); }; } // namespace flutter_runner