https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114976
Revision: 114976
Author: foxtrott
Date: 2012-04-19 21:08:07 +0000 (Thu, 19 Apr 2012)
Log Message:
-----------
fix bug 35652 (SemanticFormsInputs: Datepicker and timepicker: wrong tab order)
Modified Paths:
--------------
trunk/extensions/SemanticFormsInputs/libs/datepicker.js
trunk/extensions/SemanticFormsInputs/libs/datetimepicker.js
trunk/extensions/SemanticFormsInputs/libs/timepicker.js
Modified: trunk/extensions/SemanticFormsInputs/libs/datepicker.js
===================================================================
--- trunk/extensions/SemanticFormsInputs/libs/datepicker.js 2012-04-19
19:38:37 UTC (rev 114975)
+++ trunk/extensions/SemanticFormsInputs/libs/datepicker.js 2012-04-19
21:08:07 UTC (rev 114976)
@@ -28,6 +28,8 @@
}
+ var tabindex = inputShow.attr('tabindex');
+
var re = /\d{4}\/\d{2}\/\d{2}/
if ( params.disabled ) {
@@ -52,7 +54,7 @@
// append reset button if image is set
if ( params.resetButtonImage && ! params.partOfDTP ) {
- var resetbutton = jQuery( '<button type="button"
class="ui-datepicker-trigger ' + params.userClasses + '" ><img src="' +
params.resetButtonImage + '" alt="..." title="..."></button>' );
+ var resetbutton = jQuery( '<button type="button"
class="ui-datepicker-trigger ' + params.userClasses + '"><img src="' +
params.resetButtonImage + '" alt="..." title="..."></button>' );
inputShow.after( resetbutton );
resetbutton.click( function(){
inputShow.datepicker( 'setDate', null);
@@ -75,6 +77,11 @@
'dateFormat': params.dateFormat,
'beforeShowDay': function ( date ) {return
SFI_DP_checkDate( '#' + input_id + '_show', date );}
} );
+
+ // at least in FF tabindex needs to be set delayed
+ setTimeout(function(){
+ inputShow.siblings('button').attr('tabindex', tabindex);
+ }, 0);
if ( params.minDate ) {
inputShow.datepicker( 'option', 'minDate',
Modified: trunk/extensions/SemanticFormsInputs/libs/datetimepicker.js
===================================================================
--- trunk/extensions/SemanticFormsInputs/libs/datetimepicker.js 2012-04-19
19:38:37 UTC (rev 114975)
+++ trunk/extensions/SemanticFormsInputs/libs/datetimepicker.js 2012-04-19
21:08:07 UTC (rev 114976)
@@ -10,6 +10,8 @@
var input = jQuery( '#' + inputId );
+ var tabindex = input.attr('tabindex');
+
var hiddenInput = jQuery( '<input type="hidden" >' );
hiddenInput.attr( {
@@ -72,7 +74,7 @@
} else {
- var resetbutton = jQuery('<button type="button"
class="ui-datetimepicker-trigger ' + params.userClasses + '" ><img src="' +
params.resetButtonImage + '" alt="..." title="..."></button>');
+ var resetbutton = jQuery('<button type="button"
class="ui-datetimepicker-trigger ' + params.userClasses + '" tabindex="' +
tabindex + '" ><img src="' + params.resetButtonImage + '" alt="..."
title="..."></button>');
input.before( resetbutton );
resetbutton.click( function(){
Modified: trunk/extensions/SemanticFormsInputs/libs/timepicker.js
===================================================================
--- trunk/extensions/SemanticFormsInputs/libs/timepicker.js 2012-04-19
19:38:37 UTC (rev 114975)
+++ trunk/extensions/SemanticFormsInputs/libs/timepicker.js 2012-04-19
21:08:07 UTC (rev 114976)
@@ -42,11 +42,14 @@
input = inputShow;
}
+ var tabindex = inputShow.attr('tabindex');
+
// append time picker button
var button = jQuery( '<button type="button" ></button>' );
button.attr({
'class': params.userClasses,
- 'id': inputID + '_button'
+ 'id': inputID + '_button',
+ 'tabindex': tabindex
});
@@ -80,7 +83,8 @@
var resetbutton = jQuery('<button type="button" ></button>');
resetbutton.attr({
'class': params.userClasses,
- 'id': inputID + '_resetbutton'
+ 'id': inputID + '_resetbutton',
+ 'tabindex': tabindex
});
if ( params.disabled ) {
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs