From 9a0031211ae0ac88053de91b429ecf3b8d6d2d17 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Mon, 1 Jul 2019 16:18:56 +0200 Subject: Add support for checking .ui accessibility with gla11y --- .travis.yml | 6 ++++++ configure.ac | 1 + gla11y.mk | 19 +++++++++++++++++++ src/Makefile.am | 12 ++++++++++-- src/ui-a11y.suppr | 35 +++++++++++++++++++++++++++++++++++ 5 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 gla11y.mk create mode 100644 src/ui-a11y.suppr diff --git a/.travis.yml b/.travis.yml index 1e02d68e..9962d98f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -69,6 +69,7 @@ requires: - git - make - exempi + - file - gobject-introspection - gvfs - intltool @@ -105,6 +106,7 @@ requires: - libx11-dev - libxml2-dev - mate-common + - python3-lxml - quilt - shared-mime-info @@ -129,6 +131,7 @@ requires: - mate-common - mate-desktop-devel - pangox-compat-devel + - python3-lxml - startup-notification-devel - libnotify-devel @@ -155,6 +158,7 @@ requires: - libx11-dev - libxml2-dev - mate-common + - python3-lxml - quilt - shared-mime-info @@ -181,6 +185,8 @@ before_scripts: - egrep -lRZ 'G_GNUC_BEGIN_IGNORE_DEPRECATIONS' . | xargs -0 -l sed -i -e 's/G_GNUC_BEGIN_IGNORE_DEPRECATIONS/ /g' - egrep -lRZ 'G_GNUC_END_IGNORE_DEPRECATIONS' . | xargs -0 -l sed -i -e 's/G_GNUC_END_IGNORE_DEPRECATIONS/ /g' - fi + - curl -Ls -o /usr/bin/gla11y https://github.com/hypra/gla11y/raw/v0.2/gla11y + - chmod +x /usr/bin/gla11y build_scripts: # build failed with f30 und using clang patch, fixed in f30? diff --git a/configure.ac b/configure.ac index 60df9083..dbc8fc45 100644 --- a/configure.ac +++ b/configure.ac @@ -59,6 +59,7 @@ dnl Give error and exit if we dont have pkgconfig if test "x$PKG_CONFIG" = "x"; then AC_MSG_ERROR([you need to have pkgconfig installed!]) fi +AC_PATH_PROG([GLA11Y], [gla11y], [true]) AC_CHECK_LIB(m, floor) diff --git a/gla11y.mk b/gla11y.mk new file mode 100644 index 00000000..abe9f534 --- /dev/null +++ b/gla11y.mk @@ -0,0 +1,19 @@ +GLA11Y_OUTPUT = ui-a11y.err +GLA11Y_SUPPR = ui-a11y.suppr +GLA11Y_FALSE = ui-a11y.false + +a11y_verbose = $(a11y_verbose_@AM_V@) +a11y_verbose_ = $(a11y_verbose_@AM_DEFAULT_V@) +a11y_verbose_0 = @echo " A11Y " $@; +a11y_verbose_1 = + + +all-local: $(GLA11Y_OUTPUT) +$(GLA11Y_OUTPUT): $(ui_files) + $(a11y_verbose) python3 $(GLA11Y) -P $(srcdir)/ -f $(srcdir)/$(GLA11Y_FALSE) -s $(srcdir)/$(GLA11Y_SUPPR) -o $@ $(ui_files:%=$(srcdir)/%) + +clean-local: clean-local-check +clean-local-check: + -rm -f $(GLA11Y_OUTPUT) + +.PHONY: clean-local-check diff --git a/src/Makefile.am b/src/Makefile.am index 0f917ea4..6b8f5d65 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -209,12 +209,19 @@ TESTS=check-caja endif uidir = $(datadir)/caja/ui + +ui_files = \ + caja-file-management-properties.ui \ + caja-bookmarks-window.ui \ + $(NULL) + +include $(top_srcdir)/gla11y.mk + ui_DATA = \ caja-shell-ui.xml \ caja-navigation-window-ui.xml \ caja-spatial-window-ui.xml \ - caja-file-management-properties.ui \ - caja-bookmarks-window.ui \ + $(ui_files) \ $(NULL) CLEANFILES = \ @@ -231,6 +238,7 @@ EXTRA_DIST = \ check-caja \ $(about_DATA) \ $(desktop_in_files) \ + ui-a11y.suppr \ $(NULL) dist-hook: diff --git a/src/ui-a11y.suppr b/src/ui-a11y.suppr new file mode 100644 index 00000000..c257b3c7 --- /dev/null +++ b/src/ui-a11y.suppr @@ -0,0 +1,35 @@ +caja-bookmarks-window.ui://GtkLabel[@id='label4'] orphan-label +caja-bookmarks-window.ui://GtkLabel[@id='bookmark_name_label'] orphan-label +caja-bookmarks-window.ui://GtkLabel[@id='label3'] orphan-label +caja-bookmarks-window.ui://GtkLabel[@id='bookmark_location_label'] orphan-label +caja-bookmarks-window.ui://GtkLabel[@id='label2'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label4'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label5'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label6'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label25'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label10'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label12'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label14'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label28'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label29'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='captions_label_0'] orphan-label +caja-file-management-properties.ui://GtkComboBoxText[@id='captions_0_combobox'] no-labelled-by +caja-file-management-properties.ui://GtkLabel[@id='captions_label_1'] orphan-label +caja-file-management-properties.ui://GtkComboBoxText[@id='captions_1_combobox'] no-labelled-by +caja-file-management-properties.ui://GtkLabel[@id='captions_label_2'] orphan-label +caja-file-management-properties.ui://GtkComboBoxText[@id='captions_2_combobox'] no-labelled-by +caja-file-management-properties.ui://GtkLabel[@id='label34'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label40'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label31'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label33'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label16'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label18'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label20'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label22'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label42'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label60'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label61'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label65'] orphan-label +caja-file-management-properties.ui://GtkLabel[@id='label7'] orphan-label +caja-file-management-properties.ui://GtkTreeView[@id='extension_view'] no-labelled-by -- cgit v1.2.1