Conflict with Editoria11y dismissals table

Created on 17 July 2025, 19 days ago

Problem/motivation

When the Responsive Tables Filter module is enabled and its setting "Automatically add to all table-based Drupal Views and tables generated via theme rendering" is checked, and Editoria11y Accessibility Checker β†’ is also enabled, resetting dismissals on /admin/reports/editoria11y/dismissals doesn't work.

Steps to reproduce

  1. Enable both responsive_tables_filter and editoria11y
  2. Check "Automatically add to all table-based Drupal Views and tables generated via theme rendering" on /admin/config/content/responsive_tables_filter
  3. View a node with some issues flagged by Editoria11y (such as skipping a heading level or having only "here" as link text) and mark one or more as OK or hidden
  4. Go to /admin/reports/editoria11y/dismissals and try to remove any of the dismissals you just made and observe that they are not removed (though there is a "Deleted" success message at the top of the page)

Proposed resolution

I've made an issue on Editoria11y as well; I'm not sure if JS updates would be required on one or both modules in order to play nicely together.

A less-but-still-helpful feature on the Responsive Tables Filter side would be to allow the user to add tables to an exemption list so that "Automatically add to all table-based Drupal Views and tables generated via theme rendering" worked on everything except the identified tables (by class or ID, maybe?).

I also didn't see a way to remove the Responsive Tables Filter library using hook_page_attachments_alter() (at least not with JS aggregated). As a quick workaround, I added this to a jQuery I'm already running on my admin theme:

// Remove tablesaw stuff (responsive_tables_filter) on Editoria11y dismissals page.
if (window.location.pathname == '/admin/reports/editoria11y/dismissals') {
  $('table.tablesaw').each(function() {
    this.classList.remove('tablesaw-stack');
  });
  $('strong.tablesaw-cell-label').each(function() {
    this.remove();
  });
}

Thanks for Responsive Tables Filter! I've really enjoyed using it.

πŸ’¬ Support request
Status

Active

Version

2.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States Kasey_MK

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

  • Issue created by @Kasey_MK
  • πŸ‡ΊπŸ‡ΈUnited States mark_fullmer Tucson

    Thanks for reporting this. I was able to reproduce the conflict described. My review of the code suggests that the adjustment should happen on the `editoria11y` front. The problem stems from the fact that the reponsive tables logic wraps the "Reset" link in a span tag, as shown below, and the JavaScript in Editoria11y assumes that the <a> is the immediate sibling of the <td> element here: https://git.drupalcode.org/project/editoria11y/-/blob/2.2.x/js/editoria1...

    <span class="tablesaw-cell-content">
      <a role="button" title="Reset this dismissal" class="ed11y-reset-this-dismissal action-link action-link--icon-trash">
        <span hidden="" class="ed11y-api-by">1</span>
        <span hidden="" class="ed11y-api-path">/node/1</span>
       </a>
    </span>
    

    I'll leave a similar comment in πŸ’¬ Conflict with Responsive Tables Filter & clearing dismissals Active

Production build 0.71.5 2024