forked from dmorrill10/acpc_poker_gui_client
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
ae7d5c1
commit fb65e4e
Showing
6 changed files
with
180 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
#About | ||
**jQuery Hotkeys** is a plug-in that lets you easily add and remove handlers for keyboard events anywhere in your code supporting almost any key combination. | ||
|
||
This plugin is based off of the plugin by Tzury Bar Yochay: [jQuery.hotkeys](http://github.com/tzuryby/hotkeys) | ||
|
||
The syntax is as follows: | ||
|
||
$(expression).bind(types, keys, handler); | ||
$(expression).unbind(types, handler); | ||
|
||
$(document).bind('keydown', 'ctrl+a', fn); | ||
|
||
// e.g. replace '$' sign with 'EUR' | ||
$('input.foo').bind('keyup', '$', function(){ | ||
this.value = this.value.replace('$', 'EUR'); | ||
}); | ||
|
||
## Types | ||
Supported types are `'keydown'`, `'keyup'` and `'keypress'` | ||
|
||
## Notes | ||
|
||
If you want to use more than one modifiers (e.g. alt+ctrl+z) you should define them by an alphabetical order e.g. alt+ctrl+shift | ||
|
||
Hotkeys aren't tracked if you're inside of an input element (unless you explicitly bind the hotkey directly to the input). This helps to avoid conflict with normal user typing. | ||
|
||
## jQuery Compatibility | ||
|
||
Works with jQuery 1.4.2 and newer. | ||
|
||
It known to be working with all the major browsers on all available platforms (Win/Mac/Linux) | ||
|
||
* IE 6/7/8 | ||
* FF 1.5/2/3 | ||
* Opera-9 | ||
* Safari-3 | ||
* Chrome-0.2 | ||
|
||
### Addendum | ||
|
||
Firefox is the most liberal one in the manner of letting you capture all short-cuts even those that are built-in in the browser such as `Ctrl-t` for new tab, or `Ctrl-a` for selecting all text. You can always bubble them up to the browser by returning `true` in your handler. | ||
|
||
Others, (IE) either let you handle built-in short-cuts, but will add their functionality after your code has executed. Or (Opera/Safari) will *not* pass those events to the DOM at all. | ||
|
||
*So, if you bind `Ctrl-Q` or `Alt-F4` and your Safari/Opera window is closed don't be surprised.* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
/* | ||
* jQuery Hotkeys Plugin | ||
* Copyright 2010, John Resig | ||
* Dual licensed under the MIT or GPL Version 2 licenses. | ||
* | ||
* Based upon the plugin by Tzury Bar Yochay: | ||
* http://github.com/tzuryby/hotkeys | ||
* | ||
* Original idea by: | ||
* Binny V A, http://www.openjs.com/scripts/events/keyboard_shortcuts/ | ||
*/ | ||
|
||
(function(jQuery){ | ||
|
||
jQuery.hotkeys = { | ||
version: "0.8", | ||
|
||
specialKeys: { | ||
8: "backspace", 9: "tab", 13: "return", 16: "shift", 17: "ctrl", 18: "alt", 19: "pause", | ||
20: "capslock", 27: "esc", 32: "space", 33: "pageup", 34: "pagedown", 35: "end", 36: "home", | ||
37: "left", 38: "up", 39: "right", 40: "down", 45: "insert", 46: "del", | ||
96: "0", 97: "1", 98: "2", 99: "3", 100: "4", 101: "5", 102: "6", 103: "7", | ||
104: "8", 105: "9", 106: "*", 107: "+", 109: "-", 110: ".", 111 : "/", | ||
112: "f1", 113: "f2", 114: "f3", 115: "f4", 116: "f5", 117: "f6", 118: "f7", 119: "f8", | ||
120: "f9", 121: "f10", 122: "f11", 123: "f12", 144: "numlock", 145: "scroll", 191: "/", 224: "meta" | ||
}, | ||
|
||
shiftNums: { | ||
"`": "~", "1": "!", "2": "@", "3": "#", "4": "$", "5": "%", "6": "^", "7": "&", | ||
"8": "*", "9": "(", "0": ")", "-": "_", "=": "+", ";": ": ", "'": "\"", ",": "<", | ||
".": ">", "/": "?", "\\": "|" | ||
} | ||
}; | ||
|
||
function keyHandler( handleObj ) { | ||
// Only care when a possible input has been specified | ||
if ( typeof handleObj.data !== "string" ) { | ||
return; | ||
} | ||
|
||
var origHandler = handleObj.handler, | ||
keys = handleObj.data.toLowerCase().split(" "); | ||
|
||
handleObj.handler = function( event ) { | ||
// Don't fire in text-accepting inputs that we didn't directly bind to | ||
if ( this !== event.target && (/textarea|select/i.test( event.target.nodeName ) || | ||
event.target.type === "text") ) { | ||
return; | ||
} | ||
|
||
// Keypress represents characters, not special keys | ||
var special = event.type !== "keypress" && jQuery.hotkeys.specialKeys[ event.which ], | ||
character = String.fromCharCode( event.which ).toLowerCase(), | ||
key, modif = "", possible = {}; | ||
|
||
// check combinations (alt|ctrl|shift+anything) | ||
if ( event.altKey && special !== "alt" ) { | ||
modif += "alt+"; | ||
} | ||
|
||
if ( event.ctrlKey && special !== "ctrl" ) { | ||
modif += "ctrl+"; | ||
} | ||
|
||
// TODO: Need to make sure this works consistently across platforms | ||
if ( event.metaKey && !event.ctrlKey && special !== "meta" ) { | ||
modif += "meta+"; | ||
} | ||
|
||
if ( event.shiftKey && special !== "shift" ) { | ||
modif += "shift+"; | ||
} | ||
|
||
if ( special ) { | ||
possible[ modif + special ] = true; | ||
|
||
} else { | ||
possible[ modif + character ] = true; | ||
possible[ modif + jQuery.hotkeys.shiftNums[ character ] ] = true; | ||
|
||
// "$" can be triggered as "Shift+4" or "Shift+$" or just "$" | ||
if ( modif === "shift+" ) { | ||
possible[ jQuery.hotkeys.shiftNums[ character ] ] = true; | ||
} | ||
} | ||
|
||
for ( var i = 0, l = keys.length; i < l; i++ ) { | ||
if ( possible[ keys[i] ] ) { | ||
return origHandler.apply( this, arguments ); | ||
} | ||
} | ||
}; | ||
} | ||
|
||
jQuery.each([ "keydown", "keyup", "keypress" ], function() { | ||
jQuery.event.special[ this ] = { add: keyHandler }; | ||
}); | ||
|
||
})( jQuery ); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
Hotkey = | ||
bind: (element, key) -> | ||
$(document).bind('keypress', key, (evt)-> | ||
$(element).click() | ||
) | ||
|
||
Hotkey.bind('#fold.button', 'a') | ||
Hotkey.bind('#pass.button', 's') | ||
Hotkey.bind('#wager.button', 'd') | ||
Hotkey.bind('#leave.button', 'q') | ||
Hotkey.bind('#next.button', 'f') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
#rejoin_match_form | ||
= form_tag rejoin_match_url, remote: true do | ||
= label_tag 'Match name' | ||
= text_field_tag 'match_name' | ||
- rejoin_match_label = 'Rejoin match' | ||
= submit_tag rejoin_match_label, class: 'button', disable_with: rejoin_match_label | ||
.hidden= hidden_game_parameter_form | ||
= form_tag rejoin_match_url, remote: true do | ||
= label_tag 'Match name' | ||
= text_field_tag 'match_name' | ||
- rejoin_match_label = 'Rejoin match' | ||
= submit_tag rejoin_match_label, class: 'button', data: { disable_with: rejoin_match_label } | ||
.hidden= hidden_game_parameter_form |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters