forked from AuroraMiddleware/gtk
a11y: Return the ATSPI role for the root element
This commit is contained in:
parent
d7ebf18723
commit
e6c5d57ffe
160
gtk/a11y/gtkatspiprivate.h
Normal file
160
gtk/a11y/gtkatspiprivate.h
Normal file
@ -0,0 +1,160 @@
|
||||
/* gtkatspiprivate.h: AT-SPI shared types
|
||||
*
|
||||
* Copyright 2020 GNOME Foundation
|
||||
*
|
||||
* SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
typedef enum {
|
||||
ATSPI_ROLE_INVALID,
|
||||
ATSPI_ROLE_ACCELERATOR_LABEL,
|
||||
ATSPI_ROLE_ALERT,
|
||||
ATSPI_ROLE_ANIMATION,
|
||||
ATSPI_ROLE_ARROW,
|
||||
ATSPI_ROLE_CALENDAR,
|
||||
ATSPI_ROLE_CANVAS,
|
||||
ATSPI_ROLE_CHECK_BOX,
|
||||
ATSPI_ROLE_CHECK_MENU_ITEM,
|
||||
ATSPI_ROLE_COLOR_CHOOSER,
|
||||
ATSPI_ROLE_COLUMN_HEADER,
|
||||
ATSPI_ROLE_COMBO_BOX,
|
||||
ATSPI_ROLE_DATE_EDITOR,
|
||||
ATSPI_ROLE_DESKTOP_ICON,
|
||||
ATSPI_ROLE_DESKTOP_FRAME,
|
||||
ATSPI_ROLE_DIAL,
|
||||
ATSPI_ROLE_DIALOG,
|
||||
ATSPI_ROLE_DIRECTORY_PANE,
|
||||
ATSPI_ROLE_DRAWING_AREA,
|
||||
ATSPI_ROLE_FILE_CHOOSER,
|
||||
ATSPI_ROLE_FILLER,
|
||||
ATSPI_ROLE_FOCUS_TRAVERSABLE,
|
||||
ATSPI_ROLE_FONT_CHOOSER,
|
||||
ATSPI_ROLE_FRAME,
|
||||
ATSPI_ROLE_GLASS_PANE,
|
||||
ATSPI_ROLE_HTML_CONTAINER,
|
||||
ATSPI_ROLE_ICON,
|
||||
ATSPI_ROLE_IMAGE,
|
||||
ATSPI_ROLE_INTERNAL_FRAME,
|
||||
ATSPI_ROLE_LABEL,
|
||||
ATSPI_ROLE_LAYERED_PANE,
|
||||
ATSPI_ROLE_LIST,
|
||||
ATSPI_ROLE_LIST_ITEM,
|
||||
ATSPI_ROLE_MENU,
|
||||
ATSPI_ROLE_MENU_BAR,
|
||||
ATSPI_ROLE_MENU_ITEM,
|
||||
ATSPI_ROLE_OPTION_PANE,
|
||||
ATSPI_ROLE_PAGE_TAB,
|
||||
ATSPI_ROLE_PAGE_TAB_LIST,
|
||||
ATSPI_ROLE_PANEL,
|
||||
ATSPI_ROLE_PASSWORD_TEXT,
|
||||
ATSPI_ROLE_POPUP_MENU,
|
||||
ATSPI_ROLE_PROGRESS_BAR,
|
||||
ATSPI_ROLE_PUSH_BUTTON,
|
||||
ATSPI_ROLE_RADIO_BUTTON,
|
||||
ATSPI_ROLE_RADIO_MENU_ITEM,
|
||||
ATSPI_ROLE_ROOT_PANE,
|
||||
ATSPI_ROLE_ROW_HEADER,
|
||||
ATSPI_ROLE_SCROLL_BAR,
|
||||
ATSPI_ROLE_SCROLL_PANE,
|
||||
ATSPI_ROLE_SEPARATOR,
|
||||
ATSPI_ROLE_SLIDER,
|
||||
ATSPI_ROLE_SPIN_BUTTON,
|
||||
ATSPI_ROLE_SPLIT_PANE,
|
||||
ATSPI_ROLE_STATUS_BAR,
|
||||
ATSPI_ROLE_TABLE,
|
||||
ATSPI_ROLE_TABLE_CELL,
|
||||
ATSPI_ROLE_TABLE_COLUMN_HEADER,
|
||||
ATSPI_ROLE_TABLE_ROW_HEADER,
|
||||
ATSPI_ROLE_TEAROFF_MENU_ITEM,
|
||||
ATSPI_ROLE_TERMINAL,
|
||||
ATSPI_ROLE_TEXT,
|
||||
ATSPI_ROLE_TOGGLE_BUTTON,
|
||||
ATSPI_ROLE_TOOL_BAR,
|
||||
ATSPI_ROLE_TOOL_TIP,
|
||||
ATSPI_ROLE_TREE,
|
||||
ATSPI_ROLE_TREE_TABLE,
|
||||
ATSPI_ROLE_UNKNOWN,
|
||||
ATSPI_ROLE_VIEWPORT,
|
||||
ATSPI_ROLE_WINDOW,
|
||||
ATSPI_ROLE_EXTENDED,
|
||||
ATSPI_ROLE_HEADER,
|
||||
ATSPI_ROLE_FOOTER,
|
||||
ATSPI_ROLE_PARAGRAPH,
|
||||
ATSPI_ROLE_RULER,
|
||||
ATSPI_ROLE_APPLICATION,
|
||||
ATSPI_ROLE_AUTOCOMPLETE,
|
||||
ATSPI_ROLE_EDITBAR,
|
||||
ATSPI_ROLE_EMBEDDED,
|
||||
ATSPI_ROLE_ENTRY,
|
||||
ATSPI_ROLE_CHART,
|
||||
ATSPI_ROLE_CAPTION,
|
||||
ATSPI_ROLE_DOCUMENT_FRAME,
|
||||
ATSPI_ROLE_HEADING,
|
||||
ATSPI_ROLE_PAGE,
|
||||
ATSPI_ROLE_SECTION,
|
||||
ATSPI_ROLE_REDUNDANT_OBJECT,
|
||||
ATSPI_ROLE_FORM,
|
||||
ATSPI_ROLE_LINK,
|
||||
ATSPI_ROLE_INPUT_METHOD_WINDOW,
|
||||
ATSPI_ROLE_TABLE_ROW,
|
||||
ATSPI_ROLE_TREE_ITEM,
|
||||
ATSPI_ROLE_DOCUMENT_SPREADSHEET,
|
||||
ATSPI_ROLE_DOCUMENT_PRESENTATION,
|
||||
ATSPI_ROLE_DOCUMENT_TEXT,
|
||||
ATSPI_ROLE_DOCUMENT_WEB,
|
||||
ATSPI_ROLE_DOCUMENT_EMAIL,
|
||||
ATSPI_ROLE_COMMENT,
|
||||
ATSPI_ROLE_LIST_BOX,
|
||||
ATSPI_ROLE_GROUPING,
|
||||
ATSPI_ROLE_IMAGE_MAP,
|
||||
ATSPI_ROLE_NOTIFICATION,
|
||||
ATSPI_ROLE_INFO_BAR,
|
||||
ATSPI_ROLE_LEVEL_BAR,
|
||||
ATSPI_ROLE_TITLE_BAR,
|
||||
ATSPI_ROLE_BLOCK_QUOTE,
|
||||
ATSPI_ROLE_AUDIO,
|
||||
ATSPI_ROLE_VIDEO,
|
||||
ATSPI_ROLE_DEFINITION,
|
||||
ATSPI_ROLE_ARTICLE,
|
||||
ATSPI_ROLE_LANDMARK,
|
||||
ATSPI_ROLE_LOG,
|
||||
ATSPI_ROLE_MARQUEE,
|
||||
ATSPI_ROLE_MATH,
|
||||
ATSPI_ROLE_RATING,
|
||||
ATSPI_ROLE_TIMER,
|
||||
ATSPI_ROLE_STATIC,
|
||||
ATSPI_ROLE_MATH_FRACTION,
|
||||
ATSPI_ROLE_MATH_ROOT,
|
||||
ATSPI_ROLE_SUBSCRIPT,
|
||||
ATSPI_ROLE_SUPERSCRIPT,
|
||||
ATSPI_ROLE_DESCRIPTION_LIST,
|
||||
ATSPI_ROLE_DESCRIPTION_TERM,
|
||||
ATSPI_ROLE_DESCRIPTION_VALUE,
|
||||
ATSPI_ROLE_FOOTNOTE,
|
||||
ATSPI_ROLE_CONTENT_DELETION,
|
||||
ATSPI_ROLE_CONTENT_INSERTION,
|
||||
ATSPI_ROLE_MARK,
|
||||
ATSPI_ROLE_SUGGESTION,
|
||||
ATSPI_ROLE_LAST_DEFINED,
|
||||
} AtspiRole;
|
||||
|
||||
G_END_DECLS
|
@ -22,6 +22,8 @@
|
||||
|
||||
#include "gtkatspirootprivate.h"
|
||||
|
||||
#include "gtkatspiprivate.h"
|
||||
|
||||
#include "gtkdebug.h"
|
||||
#include "gtkwindow.h"
|
||||
|
||||
@ -210,6 +212,12 @@ handle_accessible_method (GDBusConnection *connection,
|
||||
g_printerr ("[Accessible] Method '%s' on interface '%s' for object '%s' from '%s'\n",
|
||||
method_name, interface_name, object_path, sender);
|
||||
|
||||
if (g_strcmp0 (method_name, "GetRole") == 0)
|
||||
g_dbus_method_invocation_return_value (invocation, g_variant_new ("(u)", ATSPI_ROLE_APPLICATION));
|
||||
else if (g_strcmp0 (method_name, "GetRoleName") == 0)
|
||||
g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "application"));
|
||||
else if (g_strcmp0 (method_name, "GetLocalizedRoleName") == 0)
|
||||
g_dbus_method_invocation_return_value (invocation, g_variant_new ("(s)", "application"));
|
||||
}
|
||||
|
||||
static GVariant *
|
||||
|
Loading…
Reference in New Issue
Block a user