1 | #include <gtk/gtk.h> |
2 | |
3 | static void |
4 | flowbox_role (void) |
5 | { |
6 | GtkWidget *widget = gtk_flow_box_new (); |
7 | |
8 | g_object_ref_sink (widget); |
9 | |
10 | gtk_flow_box_insert (GTK_FLOW_BOX (widget), widget: gtk_label_new (str: "a" ), position: 0); |
11 | |
12 | gtk_test_accessible_assert_role (GTK_ACCESSIBLE (widget), GTK_ACCESSIBLE_ROLE_GRID); |
13 | gtk_test_accessible_assert_role (GTK_ACCESSIBLE (gtk_widget_get_first_child (widget)), GTK_ACCESSIBLE_ROLE_GRID_CELL); |
14 | |
15 | g_object_unref (object: widget); |
16 | } |
17 | |
18 | static void |
19 | flowbox_state (void) |
20 | { |
21 | GtkWidget *window = gtk_window_new (); |
22 | GtkWidget *widget = gtk_flow_box_new (); |
23 | |
24 | gtk_window_set_child (GTK_WINDOW (window), child: widget); |
25 | |
26 | gtk_flow_box_insert (GTK_FLOW_BOX (widget), widget: gtk_label_new (str: "a" ), position: 0); |
27 | |
28 | gtk_test_accessible_assert_state (GTK_ACCESSIBLE (gtk_widget_get_first_child (widget)), GTK_ACCESSIBLE_STATE_SELECTED, FALSE); |
29 | |
30 | gtk_flow_box_select_child (GTK_FLOW_BOX (widget), |
31 | GTK_FLOW_BOX_CHILD (gtk_widget_get_first_child (widget))); |
32 | |
33 | gtk_test_accessible_assert_state (GTK_ACCESSIBLE (gtk_widget_get_first_child (widget)), GTK_ACCESSIBLE_STATE_SELECTED, TRUE); |
34 | |
35 | gtk_window_destroy (GTK_WINDOW (window)); |
36 | } |
37 | |
38 | static void |
39 | flowbox_properties (void) |
40 | { |
41 | GtkWidget *widget = gtk_flow_box_new (); |
42 | |
43 | g_object_ref_sink (widget); |
44 | |
45 | gtk_flow_box_insert (GTK_FLOW_BOX (widget), widget: gtk_label_new (str: "a" ), position: 0); |
46 | |
47 | gtk_test_accessible_assert_property (GTK_ACCESSIBLE (widget), GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, FALSE); |
48 | |
49 | gtk_flow_box_set_selection_mode (GTK_FLOW_BOX (widget), mode: GTK_SELECTION_MULTIPLE); |
50 | |
51 | gtk_test_accessible_assert_property (GTK_ACCESSIBLE (widget), GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, TRUE); |
52 | |
53 | g_object_unref (object: widget); |
54 | } |
55 | |
56 | int |
57 | main (int argc, char *argv[]) |
58 | { |
59 | gtk_test_init (argcp: &argc, argvp: &argv, NULL); |
60 | |
61 | g_test_add_func (testpath: "/a11y/flowbox/role" , test_func: flowbox_role); |
62 | g_test_add_func (testpath: "/a11y/flowbox/state" , test_func: flowbox_state); |
63 | g_test_add_func (testpath: "/a11y/flowbox/properties" , test_func: flowbox_properties); |
64 | |
65 | return g_test_run (); |
66 | } |
67 | |