summaryrefslogtreecommitdiff
path: root/chromium/ui/accessibility/ax_event_generator.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-12 14:27:29 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:35:20 +0000
commitc30a6232df03e1efbd9f3b226777b07e087a1122 (patch)
treee992f45784689f373bcc38d1b79a239ebe17ee23 /chromium/ui/accessibility/ax_event_generator.cc
parent7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (diff)
downloadqtwebengine-chromium-c30a6232df03e1efbd9f3b226777b07e087a1122.tar.gz
BASELINE: Update Chromium to 85.0.4183.14085-based
Change-Id: Iaa42f4680837c57725b1344f108c0196741f6057 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/ui/accessibility/ax_event_generator.cc')
-rw-r--r--chromium/ui/accessibility/ax_event_generator.cc21
1 files changed, 15 insertions, 6 deletions
diff --git a/chromium/ui/accessibility/ax_event_generator.cc b/chromium/ui/accessibility/ax_event_generator.cc
index 472dd5b1579..7561e537be6 100644
--- a/chromium/ui/accessibility/ax_event_generator.cc
+++ b/chromium/ui/accessibility/ax_event_generator.cc
@@ -49,9 +49,13 @@ void RemoveEvent(std::set<AXEventGenerator::EventParams>* node_events,
} // namespace
-AXEventGenerator::EventParams::EventParams(Event event,
- ax::mojom::EventFrom event_from)
- : event(event), event_from(event_from) {}
+AXEventGenerator::EventParams::EventParams(
+ Event event,
+ ax::mojom::EventFrom event_from,
+ const std::vector<AXEventIntent>& event_intents)
+ : event(event), event_from(event_from), event_intents(event_intents) {}
+
+AXEventGenerator::EventParams::~EventParams() = default;
AXEventGenerator::TargetedEvent::TargetedEvent(AXNode* node,
const EventParams& event_params)
@@ -138,7 +142,8 @@ void AXEventGenerator::AddEvent(AXNode* node, AXEventGenerator::Event event) {
return;
std::set<EventParams>& node_events = tree_events_[node];
- node_events.emplace(event, ax::mojom::EventFrom::kNone);
+ node_events.emplace(event, ax::mojom::EventFrom::kNone,
+ tree_->event_intents());
}
void AXEventGenerator::OnNodeDataChanged(AXTree* tree,
@@ -154,7 +159,8 @@ void AXEventGenerator::OnNodeDataChanged(AXTree* tree,
new_node_data.role != ax::mojom::Role::kStaticText) {
AXNode* node = tree_->GetFromId(new_node_data.id);
tree_events_[node].emplace(Event::CHILDREN_CHANGED,
- ax::mojom::EventFrom::kNone);
+ ax::mojom::EventFrom::kNone,
+ tree_->event_intents());
}
}
@@ -543,7 +549,7 @@ void AXEventGenerator::FireLiveRegionEvents(AXNode* node) {
.GetStringAttribute(ax::mojom::StringAttribute::kName)
.empty())
AddEvent(node, Event::LIVE_REGION_NODE_CHANGED);
- // Fire LIVE_REGION_CHANGED on the root of the live region.
+ // Fire LIVE_REGION_NODE_CHANGED on the root of the live region.
AddEvent(live_root, Event::LIVE_REGION_CHANGED);
}
}
@@ -610,6 +616,9 @@ void AXEventGenerator::FireRelationSourceEvents(AXTree* tree,
// Attempts to suppress load-related events that we presume no AT will be
// interested in under any circumstances, such as pages which have no size.
bool AXEventGenerator::ShouldFireLoadEvents(AXNode* node) {
+ if (always_fire_load_complete_)
+ return true;
+
const AXNodeData& data = node->data();
return data.relative_bounds.bounds.width() ||
data.relative_bounds.bounds.height();