I think you should extend (possibly include) some widget in the web module. If you go to the /addons/web/static/src/js/view_list.js file, you will see a widget that displays the table:
instance.web.ListView = instance.web.View.extend( { _template: 'ListView', display_name: _lt('List'), defaults: {
As you can see, there is an event declared as sort_by_column , so you will need to add the plugin you want in a similar way.
And if you have doubts about inheriting and modifying widgets, you can go to the Odoo Documentation
source share