Page MenuHomePhabricator

Consider removing tabindex from 'diff' links on Special:RecentChanges
Closed, ResolvedPublic

Description

These were added back in 2004 (MediaWiki 1.2.4) by @GWicke with 0340509d5200. They've survived many refactors (split off from Skin into ChangesList etc) but are still there:

includes/changes/ChangesList.php#L341:

$diffLink = Linker::linkKnown(
	$rc->getTitle(),
	$this->message['diff'],
	array( 'tabindex' => $rc->counter ),
	$query
);
<div class="mw-changeslist"><h4>21 October 2015</h4>
<ul class="special"><li ..>(<a href tabindex="1">diff</a> | ..</li>
<li ..>(<a href tabindex="2">diff</a> | ..</li>
..

At least they can probably be given the same tabindex since browsers naturally spread sequential context anyway (similar to z-index).

This came up in an audit of tabindex use which affected the search bar in the Vector skin, where the JavaScript assigns it the highest known tabindex +1 (source), which behaves a bit odd on Special:RecentChanges.

What is this tabindex for? Can the usecase be satisfied with a different solution?

Event Timeline

Krinkle created this task.Oct 21 2015, 3:56 AM
Krinkle updated the task description. (Show Details)
Krinkle raised the priority of this task from to Needs Triage.
Krinkle added subscribers: Krinkle, GWicke, brion and 2 others.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 21 2015, 3:56 AM
Danny_B moved this task from Unsorted to Tabindex on the Accessibility board.Jan 22 2016, 9:14 PM
Restricted Application added a subscriber: StudiesWorld. · View Herald TranscriptJan 22 2016, 9:14 PM

Change 290509 had a related patch set uploaded (by TheDJ):
Remove explicit tabindex from diff links

https://gerrit.wikimedia.org/r/290509

TheDJ triaged this task as Lowest priority.May 24 2016, 6:23 PM
TheDJ claimed this task.
TheDJ added a subscriber: Graham87.May 24 2016, 6:27 PM

@Graham87 Hi Graham, this ticket/patch would remove the tabindex of the diff links, from the Special:Watchlist and Special:RecentChanges pages.

That means that all links inside a row of one of these pages, would be 'in order', instead of like now, where you first get all 50 diff links by tabbing through the page.

If I remember correctly, you once told me that your screenreader doesn't use tabindex, so this should not influence you, this should only change behavior for keyboard-only users. Wanted to inform you, just in case I am mistaken.

@TheDJ: Yes, you are correct.

matmarex closed this task as Resolved.May 25 2016, 1:05 PM
matmarex removed a project: Patch-For-Review.

Change 290509 merged by jenkins-bot:
Remove explicit tabindex from diff links

https://gerrit.wikimedia.org/r/290509