From 64d621ac193161d7eeb848a553f47c7374e9ce26 Mon Sep 17 00:00:00 2001 From: Fomafix Date: Tue, 1 Aug 2017 22:57:45 +0200 Subject: [PATCH] ListToggle: Avoid href="#" for JavaScript buttons is problematic because it allows to open a new tab on middleclick and it shows a status line. Change-Id: Id8d7f79a2894693a82f86ae46900e6f0aecba4f3 --- includes/ListToggle.php | 2 +- resources/src/mediawiki/mediawiki.checkboxtoggle.js | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/includes/ListToggle.php b/includes/ListToggle.php index 2c87b8bac0..7a5fd9a1be 100644 --- a/includes/ListToggle.php +++ b/includes/ListToggle.php @@ -42,7 +42,7 @@ class ListToggle { private function checkboxLink( $checkboxType ) { return Html::element( // CSS classes: mw-checkbox-all, mw-checkbox-none, mw-checkbox-invert - 'a', [ 'href' => '#', 'class' => 'mw-checkbox-' . $checkboxType ], + 'a', [ 'class' => 'mw-checkbox-' . $checkboxType, 'role' => 'button', 'tabindex' => 0 ], $this->output->msg( 'checkbox-' . $checkboxType )->text() ); } diff --git a/resources/src/mediawiki/mediawiki.checkboxtoggle.js b/resources/src/mediawiki/mediawiki.checkboxtoggle.js index 901f8751a6..36090ea18c 100644 --- a/resources/src/mediawiki/mediawiki.checkboxtoggle.js +++ b/resources/src/mediawiki/mediawiki.checkboxtoggle.js @@ -21,16 +21,13 @@ $checkboxes.prop( 'checked', check ); } - $( '.mw-checkbox-all' ).click( function ( e ) { - e.preventDefault(); + $( '.mw-checkbox-all' ).click( function () { selectAll( true ); } ); - $( '.mw-checkbox-none' ).click( function ( e ) { - e.preventDefault(); + $( '.mw-checkbox-none' ).click( function () { selectAll( false ); } ); - $( '.mw-checkbox-invert' ).click( function ( e ) { - e.preventDefault(); + $( '.mw-checkbox-invert' ).click( function () { $checkboxes.prop( 'checked', function ( i, val ) { return !val; } ); -- 2.20.1