Commit Graph

11 Commits

Author SHA1 Message Date
Javi Martín
5137913565 Move order links partial to a component
This way the changes we have in mind we'll be easier to implement.
2021-06-28 00:08:19 +02:00
Javi Martín
5214d89c88 Use order links to sort comments and topics
We use order links in many places in the web. However, in the comments
section and the list of community topics, we were displaying a
`<select>` element, and changing the location when users select an
option.

This has several disadvantages.

First, and most important, it's terrible for keyboard users. `<select>`
fields allow using the arrow keys to navigate through their options, and
typing a letter will select the first option starting with that letter.
This will trigger the "change" event and so users will navigate through
a new page while they were probably just checking the available options
[1]. For these reasons, WCAG Success Criterion 3.2.2 [2] states:

> Changing the setting of any user interface component does not
> automatically cause a change of context unless the user has been
> advised of the behavior before using the component.

Second, the form didn't have a submit button. This might confuse screen
reader users, who might not know how that form is supposed to be
submitted.

Finally, dropdowns have usability issues of their own [3], particularly
on mobile phones [4]

The easiest solution is to use the same links we generally use to allow
users select an order, so using them here we make the user experience
more consistent. They offer one disadvantage, though; on small screens
and certain languages, these links might take too much space and not
look that great. This issue affects pretty much every place where we use
order or filter links, so we might revisit it in the future.

Note we're moving the links to order comments after the form to add a
new comment. In my opinion, having an element such as a form to add a
new comment between the element to select the desired order of the
comments and the comments themselves is a bit confusing.

[1] https://webaim.org/techniques/forms/controls#javascript
[2] https://www.w3.org/WAI/WCAG21/Understanding/on-input.html
[3] https://www.youtube.com/watch?v=CUkMCQR4TpY
[4] https://www.lukew.com/ff/entry.asp?1950
2021-06-28 00:08:18 +02:00
Julian Herrero
dbe99f058e Use double quotes in app/views/shared 2019-03-19 12:16:50 +01:00
decabeza
0bf31bde6c Updates all active to is-active classes 2018-06-06 12:02:13 +02:00
Alberto Garcia Cabeza
f64e59bbf6 fixes ul tag on order links submenu 2016-12-29 17:44:16 +01:00
kikito
9d97421b0e Merge branch 'master' into budgets 2016-12-27 14:02:12 +01:00
kikito
03ef20bfde Merges orders_helper functionality inside has_orders concern
Both these objects where using/setting a variable called valid_orders.
As a results, some specs where becoming flacky
(features/budgets/investments_spec.rb, balloting phase). By putting
them together, there is no `valid_orders` variable any more (everything
is @valid_orders) and the flackyness is gone.
2016-12-24 14:42:46 +01:00
Alberto Garcia Cabeza
4267b47cf5 adds unordered list tags on submenu links 2016-12-19 12:52:30 +01:00
Alberto Garcia Cabeza
2249fdbdfa improves outline and structure headings 2016-11-14 17:45:20 +01:00
Alberto Garcia Cabeza
c9f9433f96 Improves styles for submenu links 2016-01-07 13:49:42 +01:00
kikito
7eda0b2889 Uses order_links in proposals/index and debates/index 2016-01-05 19:37:40 +01:00