Switch to a diffrent keyboard and timepicker
these should hopefully work better on mobile browsers
This commit is contained in:
parent
b6dfba391c
commit
0eada46ece
27 changed files with 8074 additions and 3643 deletions
91
web_app/js/external/jquery.keyboard.extension-previewkeyset.js
vendored
Normal file
91
web_app/js/external/jquery.keyboard.extension-previewkeyset.js
vendored
Normal file
|
@ -0,0 +1,91 @@
|
|||
/*! jQuery UI Virtual Keyboard previewKeyset v1.1.1 *//*
|
||||
* for Keyboard v1.18+ only (updated 7/7/2015)
|
||||
*
|
||||
* By Rob Garrison (aka Mottie & Fudgey)
|
||||
* Licensed under the MIT License
|
||||
*
|
||||
* Use this extension with the Virtual Keyboard to add a preview
|
||||
* of other keysets to the main keyboard.
|
||||
*
|
||||
* Requires:
|
||||
* jQuery
|
||||
* Keyboard plugin : https://github.com/Mottie/Keyboard
|
||||
*
|
||||
* Setup:
|
||||
* $('.ui-keyboard-input')
|
||||
* .keyboard(options)
|
||||
* .previewKeyset();
|
||||
*
|
||||
* // or if targeting a specific keyboard
|
||||
* $('#keyboard1')
|
||||
* .keyboard(options) // keyboard plugin
|
||||
* .previewKeyset(); // this keyboard extension
|
||||
*
|
||||
*/
|
||||
/*jshint browser:true, jquery:true, unused:false */
|
||||
/*global require:false, define:false, module:false */
|
||||
;(function(factory) {
|
||||
if (typeof define === 'function' && define.amd) {
|
||||
define(['jquery'], factory);
|
||||
} else if (typeof module === 'object' && typeof module.exports === 'object') {
|
||||
module.exports = factory(require('jquery'));
|
||||
} else {
|
||||
factory(jQuery);
|
||||
}
|
||||
}(function($) {
|
||||
'use strict';
|
||||
$.keyboard = $.keyboard || {};
|
||||
|
||||
$.fn.previewKeyset = function( options ) {
|
||||
return this.each( function() {
|
||||
// make sure a keyboard is attached
|
||||
var base = $( this ).data( 'keyboard' ),
|
||||
namespace = base.namespace + 'Preview',
|
||||
defaults = {
|
||||
sets : [ 'normal', 'shift', 'alt', 'alt-shift' ]
|
||||
};
|
||||
|
||||
if ( !base ) { return; }
|
||||
|
||||
base.previewKeyset_options = $.extend( {}, defaults, options );
|
||||
base.extensionNamespace.push( namespace );
|
||||
|
||||
base.previewKeyset = function() {
|
||||
var kbcss = $.keyboard.css,
|
||||
sets = base.previewKeyset_options.sets,
|
||||
// only target option defined sets
|
||||
$sets = base.$keyboard.find( '.' + kbcss.keySet ).filter( '[name="' + sets.join('"],[name="') + '"]' );
|
||||
if ( $sets.length > 1 ) {
|
||||
// start with normal keyset & find all non-action buttons
|
||||
$sets.eq( 0 ).find( '.' + kbcss.keyButton ).not( '.' + kbcss.keyAction ).each(function(){
|
||||
var indx, nam,
|
||||
data = {},
|
||||
len = sets.length,
|
||||
// find all keys with the same position
|
||||
$sibs = $sets.find( 'button[data-pos="' + $(this).attr('data-pos') + '"]' );
|
||||
for ( indx = 0; indx < len; indx++ ) {
|
||||
nam = $sibs.eq( indx ).parent().attr( 'name' );
|
||||
if ( $.inArray( nam, sets ) >= 0 ) {
|
||||
data[ 'data-' + nam ] = $sibs.eq( indx ).find( '.' + kbcss.keyText ).text();
|
||||
}
|
||||
}
|
||||
$sibs.attr( data );
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
// visible event is fired before this extension is initialized, so check!
|
||||
if (base.options.alwaysOpen && base.isVisible()) {
|
||||
base.previewKeyset();
|
||||
} else {
|
||||
base.$el
|
||||
.unbind($.keyboard.events.kbBeforeVisible + namespace)
|
||||
.bind($.keyboard.events.kbBeforeVisible + namespace, function() {
|
||||
base.previewKeyset();
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
};
|
||||
|
||||
}));
|
Loading…
Add table
Add a link
Reference in a new issue