1 // Copyright 2020 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "ui/views/accessibility/test_list_grid_view.h"
6 
7 #include "ui/accessibility/ax_enums.mojom.h"
8 #include "ui/accessibility/ax_node_data.h"
9 
10 namespace views {
11 namespace test {
12 
13 TestListGridView::TestListGridView() = default;
14 TestListGridView::~TestListGridView() = default;
15 
GetAccessibleNodeData(ui::AXNodeData * node_data)16 void TestListGridView::GetAccessibleNodeData(ui::AXNodeData* node_data) {
17   node_data->role = ax::mojom::Role::kListGrid;
18   if (aria_row_count) {
19     node_data->AddIntAttribute(ax::mojom::IntAttribute::kAriaRowCount,
20                                *aria_row_count);
21   }
22   if (aria_column_count) {
23     node_data->AddIntAttribute(ax::mojom::IntAttribute::kAriaColumnCount,
24                                *aria_column_count);
25   }
26   if (table_row_count) {
27     node_data->AddIntAttribute(ax::mojom::IntAttribute::kTableRowCount,
28                                *table_row_count);
29   }
30   if (table_column_count) {
31     node_data->AddIntAttribute(ax::mojom::IntAttribute::kTableColumnCount,
32                                *table_column_count);
33   }
34 }
35 
SetAriaTableSize(int row_count,int column_count)36 void TestListGridView::SetAriaTableSize(int row_count, int column_count) {
37   aria_row_count = base::make_optional(row_count);
38   aria_column_count = base::make_optional(column_count);
39 }
40 
SetTableSize(int row_count,int column_count)41 void TestListGridView::SetTableSize(int row_count, int column_count) {
42   table_row_count = base::make_optional(row_count);
43   table_column_count = base::make_optional(column_count);
44 }
45 
UnsetAriaTableSize()46 void TestListGridView::UnsetAriaTableSize() {
47   aria_row_count = base::nullopt;
48   aria_column_count = base::nullopt;
49 }
50 
UnsetTableSize()51 void TestListGridView::UnsetTableSize() {
52   table_row_count = base::nullopt;
53   table_column_count = base::nullopt;
54 }
55 
56 }  // namespace test
57 }  // namespace views
58