crossbrowdy
Version:
A Multimedia JavaScript framework to create real cross-platform and hybrid game engines, games, emulators, multimedia libraries and apps.
866 lines (827 loc) • 145 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>CrossBrowdy API documentation [printable] Source: CrossBase/input/CB_Keyboard.js</title>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">
<link type="text/css" rel="stylesheet" href="styles/site.yeti.css">
</head>
<body style="min-width:800px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<div class="navbar navbar-default navbar-fixed-top ">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="index.html">CrossBrowdy API documentation [printable]</a>
<button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#topNavigation">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse" id="topNavigation">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="namespaces.list.html" class="dropdown-toggle" data-toggle="dropdown">Namespaces<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="CB_Arrays.html">CB_Arrays</a></li><li><a href="CB_AudioDetector.html">CB_AudioDetector</a></li><li><a href="CB_Client.html">CB_Client</a></li><li><a href="CB_Collisions.html">CB_Collisions</a></li><li><a href="CB_Configuration.html">CB_Configuration</a></li><li><a href="CB_Configuration.CrossBase.html">CB_Configuration.CrossBase</a></li><li><a href="CB_Configuration.CrossBrowdy.html">CB_Configuration.CrossBrowdy</a></li><li><a href="CB_Controllers.html">CB_Controllers</a></li><li><a href="CB_Controllers_Proprietary.html">CB_Controllers_Proprietary</a></li><li><a href="CB_Controllers_Proprietary.WII.html">CB_Controllers_Proprietary.WII</a></li><li><a href="CB_Controllers_Proprietary.WII_U.html">CB_Controllers_Proprietary.WII_U</a></li><li><a href="CB_Device.html">CB_Device</a></li><li><a href="CB_Device.AmbientLight.html">CB_Device.AmbientLight</a></li><li><a href="CB_Device.Battery.html">CB_Device.Battery</a></li><li><a href="CB_Device.Location.html">CB_Device.Location</a></li><li><a href="CB_Device.Motion.html">CB_Device.Motion</a></li><li><a href="CB_Device.Orientation.html">CB_Device.Orientation</a></li><li><a href="CB_Device.Proximity.html">CB_Device.Proximity</a></li><li><a href="CB_Device.Vibration.html">CB_Device.Vibration</a></li><li><a href="CB_Elements.html">CB_Elements</a></li><li><a href="CB_Events.html">CB_Events</a></li><li><a href="CB_Keyboard.html">CB_Keyboard</a></li><li><a href="CB_Keyboard.chars.html">CB_Keyboard.chars</a></li><li><a href="CB_Keyboard.extended.html">CB_Keyboard.extended</a></li><li><a href="CB_Keyboard.keys.html">CB_Keyboard.keys</a></li><li><a href="CB_Modules.html">CB_Modules</a></li><li><a href="CB_Mouse.html">CB_Mouse</a></li><li><a href="CB_Mouse.CursorImage.html">CB_Mouse.CursorImage</a></li><li><a href="CB_Net.html">CB_Net</a></li><li><a href="CB_Net.Fetch.html">CB_Net.Fetch</a></li><li><a href="CB_Net.REST.html">CB_Net.REST</a></li><li><a href="CB_Net.Sockets.html">CB_Net.Sockets</a></li><li><a href="CB_Net.Sockets.SockJS.html">CB_Net.Sockets.SockJS</a></li><li><a href="CB_Net.XHR.html">CB_Net.XHR</a></li><li><a href="CB_Pointer.html">CB_Pointer</a></li><li><a href="CB_Screen.html">CB_Screen</a></li><li><a href="CB_Speaker.html">CB_Speaker</a></li><li><a href="CB_Touch.html">CB_Touch</a></li><li><a href="CB_baseSymbols.html">CB_baseSymbols</a></li>
</ul>
</li>
<li class="dropdown">
<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="CB_AudioFile.html">CB_AudioFile</a></li><li><a href="CB_AudioFileCache.html">CB_AudioFileCache</a></li><li><a href="CB_AudioFileSprites.html">CB_AudioFileSprites</a></li><li><a href="CB_AudioFileSpritesPool.html">CB_AudioFileSpritesPool</a></li><li><a href="CB_AudioFile_API.AAPI.html">CB_AudioFile_API.AAPI</a></li><li><a href="CB_AudioFile_API.ACMP.html">CB_AudioFile_API.ACMP</a></li><li><a href="CB_AudioFile_API.SM2.html">CB_AudioFile_API.SM2</a></li><li><a href="CB_AudioFile_API.WAAPI.html">CB_AudioFile_API.WAAPI</a></li><li><a href="CB_Canvas.html">CB_Canvas</a></li><li><a href="CB_GraphicSprites.html">CB_GraphicSprites</a></li><li><a href="CB_GraphicSpritesScene.html">CB_GraphicSpritesScene</a></li>
</ul>
</li>
<li class="dropdown">
<a href="global.html" class="dropdown-toggle" data-toggle="dropdown">Global<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="global.html#CB_BASE_NAME">CB_BASE_NAME</a></li><li><a href="global.html#CB_CREDITS_DEFAULT">CB_CREDITS_DEFAULT</a></li><li><a href="global.html#CB_NAME">CB_NAME</a></li><li><a href="global.html#CB_OPTIONS">CB_OPTIONS</a></li><li><a href="global.html#CB_VERSION">CB_VERSION</a></li><li><a href="global.html#CB_addCredits">CB_addCredits</a></li><li><a href="global.html#CB_baseToBase">CB_baseToBase</a></li><li><a href="global.html#CB_baseToInt">CB_baseToInt</a></li><li><a href="global.html#CB_br2nl">CB_br2nl</a></li><li><a href="global.html#CB_brToNl">CB_brToNl</a></li><li><a href="global.html#CB_combineArraysOrObjects">CB_combineArraysOrObjects</a></li><li><a href="global.html#CB_combineAutomatically">CB_combineAutomatically</a></li><li><a href="global.html#CB_combineJSON">CB_combineJSON</a></li><li><a href="global.html#CB_combineURIParameters">CB_combineURIParameters</a></li><li><a href="global.html#CB_combineURLParameters">CB_combineURLParameters</a></li><li><a href="global.html#CB_console">CB_console</a></li><li><a href="global.html#CB_copyObject">CB_copyObject</a></li><li><a href="global.html#CB_countDecimalDigits">CB_countDecimalDigits</a></li><li><a href="global.html#CB_countDecimalPart">CB_countDecimalPart</a></li><li><a href="global.html#CB_countDecimals">CB_countDecimals</a></li><li><a href="global.html#CB_countIntegerDigits">CB_countIntegerDigits</a></li><li><a href="global.html#CB_countIntegerPart">CB_countIntegerPart</a></li><li><a href="global.html#CB_credits">CB_credits</a></li><li><a href="global.html#CB_forEach">CB_forEach</a></li><li><a href="global.html#CB_forceString">CB_forceString</a></li><li><a href="global.html#CB_getBase64StringObject">CB_getBase64StringObject</a></li><li><a href="global.html#CB_getCookie">CB_getCookie</a></li><li><a href="global.html#CB_getDatum">CB_getDatum</a></li><li><a href="global.html#CB_getJSONPropertyValue">CB_getJSONPropertyValue</a></li><li><a href="global.html#CB_getLZStringObject">CB_getLZStringObject</a></li><li><a href="global.html#CB_getValueIndex">CB_getValueIndex</a></li><li><a href="global.html#CB_getValuePath">CB_getValuePath</a></li><li><a href="global.html#CB_includeJSFile">CB_includeJSFile</a></li><li><a href="global.html#CB_indexOf">CB_indexOf</a></li><li><a href="global.html#CB_init">CB_init</a></li><li><a href="global.html#CB_intToBase">CB_intToBase</a></li><li><a href="global.html#CB_isArray">CB_isArray</a></li><li><a href="global.html#CB_isEmail">CB_isEmail</a></li><li><a href="global.html#CB_isFileLocal">CB_isFileLocal</a></li><li><a href="global.html#CB_isString">CB_isString</a></li><li><a href="global.html#CB_lastIndexOf">CB_lastIndexOf</a></li><li><a href="global.html#CB_ltrim">CB_ltrim</a></li><li><a href="global.html#CB_nl2br">CB_nl2br</a></li><li><a href="global.html#CB_nlToBr">CB_nlToBr</a></li><li><a href="global.html#CB_numberFormat">CB_numberFormat</a></li><li><a href="global.html#CB_numberOfDecimalDigits">CB_numberOfDecimalDigits</a></li><li><a href="global.html#CB_numberOfDecimals">CB_numberOfDecimals</a></li><li><a href="global.html#CB_numberOfIntegerDigits">CB_numberOfIntegerDigits</a></li><li><a href="global.html#CB_parseJSON">CB_parseJSON</a></li><li><a href="global.html#CB_parseString">CB_parseString</a></li><li><a href="global.html#CB_regularExpressionString">CB_regularExpressionString</a></li><li><a href="global.html#CB_renderString">CB_renderString</a></li><li><a href="global.html#CB_replaceAll">CB_replaceAll</a></li><li><a href="global.html#CB_rtrim">CB_rtrim</a></li><li><a href="global.html#CB_scriptPath">CB_scriptPath</a></li><li><a href="global.html#CB_scriptPathCalculate">CB_scriptPathCalculate</a></li><li><a href="global.html#CB_setCookie">CB_setCookie</a></li><li><a href="global.html#CB_setDatum">CB_setDatum</a></li><li><a href="global.html#CB_sizeOf">CB_sizeOf</a></li><li><a href="global.html#CB_sizeof">CB_sizeof</a></li><li><a href="global.html#CB_stringifyJSON">CB_stringifyJSON</a></li><li><a href="global.html#CB_symmetricCall">CB_symmetricCall</a></li><li><a href="global.html#CB_symmetricCallClear">CB_symmetricCallClear</a></li><li><a href="global.html#CB_this">CB_this</a></li><li><a href="global.html#CB_trim">CB_trim</a></li>
</ul>
</li>
</ul>
<div class="col-sm-3 col-md-3">
<form class="navbar-form" role="search">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search" name="q" id="search-input">
<div class="input-group-btn">
<button class="btn btn-default" id="search-submit"><i class="glyphicon glyphicon-search"></i></button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="container" id="toc-content" style="width:100%;">
<div class="row" style="width:100%;">
<div class="col-md-12">
<div id="main">
<h1 class="page-title">Source: CrossBase/input/CB_Keyboard.js</h1>
<section>
<article>
<pre
class="sunlight-highlight-javascript linenums">/**
* @file Keyboard management (and other devices which also fire [keyboard events]{@link https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent} as TV remote controls, game consoles' gamepads, etc.). Contains the {@link CB_Keyboard} static class.
* @author Joan Alba Maldonado <workindalian@gmail.com>
* @license Creative Commons Attribution 4.0 International. See more at {@link https://crossbrowdy.com/about#what_is_the_crossbrowdy_copyright_and_license}.
*/
/**
* Static class to manage the keyboard and other input devices that generate key codes. It will return itself if it is tried to be instantiated.
* @namespace
*/
var CB_Keyboard = function() { return CB_Keyboard; };
{
//CB_Keyboard.onKeyPressFunction; //Function that is executed when a key is pressed (onKeyPress event).
//CB_Keyboard.onKeyDownFunction; //Function that is executed when a key is down (onKeyDown event).
//CB_Keyboard.onKeyUpFunction; //Function that is executed when a key is released (onKeyUp event).
//CB_Keyboard.firstEvent = ""; //Defines wheter the first event captured is onKeyDown or onKeyPress (compatibility reasons).
//CB_Keyboard.onKeyDownOrPressFunction; //Function that is executed when either a key is down os pressed (onKeyDown or onKeyPress event)
/**
* Object that will store the status for each key detected, using the key code as index and a boolean as their value (true when down or false when released).
* @var
* @readonly
* @type {Object}
* @default
*/
CB_Keyboard.keysDown = {};
/**
* Array with the codes of the keys pressed recently (it will be cleared after the chosen milliseconds set with the {@link CB_Keyboard.setKeysPressedExpiration} function).
* @var
* @readonly
* @type {array}
* @default
*/
CB_Keyboard.keysPressed = [];
CB_Keyboard._keysPressedExpiration = 500; //Milliseconds before keys pressed array expires.
CB_Keyboard._keysPressedExpirationTimeout = null; //It will store the timeout that clears the keys pressed array.
/**
* Array with the codes of the string typed recently (it will be cleared after the chosen milliseconds set with the {@link CB_Keyboard.setTypedStringExpiration} function).
* @var
* @readonly
* @type {array}
* @default
*/
CB_Keyboard.typedStringCodes = [];
/**
* Stores the string typed recently (it will be cleared after the chosen milliseconds set with the {@link CB_Keyboard.setTypedStringExpiration} function).
* @var
* @readonly
* @type {string}
* @default
*/
CB_Keyboard.typedString = ""; //Stores the string typed (it will be cleared after some milliseconds).
CB_Keyboard._typedStringExpiration = 500; //Milliseconds before typed string expires.
CB_Keyboard._typedStringExpirationTimeout = null; //It will store the timeout that clears the typed string.
CB_Keyboard.initialized = false; //It will tells whether the object has been initialized or not.
/**
Property that keeps extended key codes for different systems and platforms.
* @namespace CB_Keyboard.extended
*/
CB_Keyboard.extended = {};
/**
* Smart TV Alliance and virtual keyboard key codes.
* @memberof CB_Keyboard.extended
* @name VK
* @constant
* @type {Object}
* @default
* @todo Consider adding more (found in {@link https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx} and {@link http://nehe.gamedev.net/article/msdn_virtualkey_codes/15009/})
* @property {number} ENTER - ENTER key.
* @property {number} PAUSE - PAUSE key.
* @property {number} PAGE_UP - PAGE UP key.
* @property {number} PAGE_DOWN - PAGE DOWN key.
* @property {number} LEFT - LEFT key.
* @property {number} UP - UP key.
* @property {number} RIGHT - RIGHT key.
* @property {number} DOWN - DOWN key.
* @property {number} _0 - 0 (zero) key.
* @property {number} _1 - 1 key.
* @property {number} _2 - 2 key.
* @property {number} _3 - 3 key.
* @property {number} _4 - 4 key.
* @property {number} _5 - 5 key.
* @property {number} _6 - 6 key.
* @property {number} _7 - 7 key.
* @property {number} _8 - 8 key.
* @property {number} _9 - 9 key.
* @property {number} 0 - Alias for {@link CB_Keyboard.extended.VK._0}.
* @property {number} 1 - Alias for {@link CB_Keyboard.extended.VK._1}.
* @property {number} 2 - Alias for {@link CB_Keyboard.extended.VK._2}.
* @property {number} 3 - Alias for {@link CB_Keyboard.extended.VK._3}.
* @property {number} 4 - Alias for {@link CB_Keyboard.extended.VK._4}.
* @property {number} 5 - Alias for {@link CB_Keyboard.extended.VK._5}.
* @property {number} 6 - Alias for {@link CB_Keyboard.extended.VK._6}.
* @property {number} 7 - Alias for {@link CB_Keyboard.extended.VK._7}.
* @property {number} 8 - Alias for {@link CB_Keyboard.extended.VK._8}.
* @property {number} 9 - Alias for {@link CB_Keyboard.extended.VK._9}.
* @property {number} REWIND - RW (REWIND) key.
* @property {number} STOP - STOP key.
* @property {number} PLAY - PLAY key.
* @property {number} FAST_FWD - FF (FAST FORWARD) key.
* @property {number} BACK - BACK key.
* @property {number} PREV - PREVIOUS key.
* @property {number} NEXT - NEXT key.
* @property {number} INFO - INFORMATION key.
* @property {number} RED - RED key.
* @property {number} GREEN - GREEN key.
* @property {number} YELLOW - YELLOW key.
* @property {number} BLUE - BLUE key.
* @property {number} SPACE - SPACE key.
* @property {number} BACK_SPACE - BACK SPACE key.
* @property {number} A - A key.
* @property {number} B - B key.
* @property {number} C - C key.
* @property {number} D - D key.
* @property {number} E - E key.
* @property {number} F - F key.
* @property {number} G - G key.
* @property {number} H - H key.
* @property {number} I - I key.
* @property {number} J - J key.
* @property {number} K - K key.
* @property {number} L - L key.
* @property {number} M - M key.
* @property {number} N - N key.
* @property {number} O - O key.
* @property {number} P - P key.
* @property {number} Q - Q key.
* @property {number} R - R key.
* @property {number} S - S key.
* @property {number} T - T key.
* @property {number} U - U key.
* @property {number} V - V key.
* @property {number} W - W key.
* @property {number} X - X key.
* @property {number} Y - Y key.
* @property {number} Z - Z key.
* @property {number} VOLUME_UP - VOLUME UP key.
* @property {number} VOLUME_DOWN - VOLUME DOWN key.
* @property {number} MUTE - MUTE key.
* @property {number} PLAY_PAUSE - PLAY/PAUSE key.
* @property {number} HELP - HELP key.
* @property {number} SUBTITLE - SUBTITLE key.
* @property {number} SEARCH - SEARCH key.
* @property {number} AUDIODESCRIPTION - AUDIODESCRIPTION key.
* @property {number} HD - HD (High Definition) key.
*/
CB_Keyboard.extended.VK =
{
//* Source: http://smarttv-alliance.org/Markets/Developers.aspx
ENTER: window.VK_ENTER || 13,
PAUSE: window.VK_PAUSE || 19,
PAGE_UP: window.VK_PAGE_UP || 33,
PAGE_DOWN: window.VK_PAGE_DOWN || 34,
LEFT: window.VK_LEFT || 37,
UP: window.VK_UP || 38,
RIGHT: window.VK_RIGHT || 39,
DOWN: window.VK_DOWN || 40,
_0: window.VK_0 || 48,
_1: window.VK_1 || 49,
_2: window.VK_2 || 50,
_3: window.VK_3 || 51,
_4: window.VK_4 || 52,
_5: window.VK_5 || 53,
_6: window.VK_6 || 54,
_7: window.VK_7 || 55,
_8: window.VK_8 || 56,
_9: window.VK_9 || 57,
REWIND: window.VK_REWIND || 412,
STOP: window.VK_STOP || 413,
PLAY: window.VK_PLAY || 415,
FAST_FWD: window.VK_FAST_FWD || 417,
BACK: window.VK_BACK || 461,
PREV: window.VK_PREV || 424,
NEXT: window.VK_NEXT || 425,
INFO: window.VK_INFO || 457,
RED: window.VK_RED || 403,
GREEN: window.VK_GREEN || 404,
YELLOW: window.VK_YELLOW || 405,
BLUE: window.VK_BLUE || 406,
//More virtual keyboard keys:
//* Source: https://fmtvp.github.io/tal/jsdoc/symbols/src/antie_static_script_events_keyevent.js.html
SPACE: window.VK_SPACE || 32,
BACK_SPACE: window.VK_BACK_SPACE || 8,
A: window.VK_A || 65,
B: window.VK_B || 66,
C: window.VK_C || 67,
D: window.VK_D || 68,
E: window.VK_E || 69,
F: window.VK_F || 70,
G: window.VK_G || 71,
H: window.VK_H || 72,
I: window.VK_I || 73,
J: window.VK_J || 74,
K: window.VK_K || 75,
L: window.VK_L || 76,
M: window.VK_M || 77,
N: window.VK_N || 78,
O: window.VK_O || 79,
P: window.VK_P || 80,
Q: window.VK_Q || 81,
R: window.VK_R || 82,
S: window.VK_S || 83,
T: window.VK_T || 84,
U: window.VK_U || 85,
V: window.VK_V || 86,
W: window.VK_W || 87,
X: window.VK_X || 88,
Y: window.VK_Y || 89,
Z: window.VK_Z || 90,
VOLUME_UP: window.VK_VOLUME_UP || 447,
VOLUME_DOWN: window.VK_VOLUME_DOWN || 448,
MUTE: window.VK_MUTE || 449,
PLAY_PAUSE: window.VK_PLAY_PAUSE || 402,
HELP: window.VK_HELP || 156,
SUBTITLE: window.VK_SUBTITLE || 460,
SEARCH: window.VK_SEARCH || 112, //112 is the same code as the F1 key.
AUDIODESCRIPTION: window.VK_AUDIODESCRIPTION || 113, //113 is the same code as the F2 key.
HD: window.VK_HD || 114 //114 is the same code as the F3 key.
};
CB_Keyboard.extended.VK[0] = CB_Keyboard.extended.VK._0;
CB_Keyboard.extended.VK[1] = CB_Keyboard.extended.VK._1;
CB_Keyboard.extended.VK[2] = CB_Keyboard.extended.VK._2;
CB_Keyboard.extended.VK[3] = CB_Keyboard.extended.VK._3;
CB_Keyboard.extended.VK[4] = CB_Keyboard.extended.VK._4;
CB_Keyboard.extended.VK[5] = CB_Keyboard.extended.VK._5;
CB_Keyboard.extended.VK[6] = CB_Keyboard.extended.VK._6;
CB_Keyboard.extended.VK[7] = CB_Keyboard.extended.VK._7;
CB_Keyboard.extended.VK[8] = CB_Keyboard.extended.VK._8;
CB_Keyboard.extended.VK[9] = CB_Keyboard.extended.VK._9;
CB_Keyboard.extended.VK._allowDuplicateKeyAliases = CB_Configuration[CB_BASE_NAME].CB_Keyboard_extended_VK_allowDuplicateKeyAliases;
/**
* Samsung Tizen TV key codes.
* @memberof CB_Keyboard.extended
* @name SAMSUNG_TIZEN_TV
* @constant
* @type {Object}
* @default
* @property {number} UP - UP button.
* @property {number} DOWN - DOWN button.
* @property {number} LEFT - LEFT button.
* @property {number} RIGHT - RIGHT button.
* @property {number} ENTER - ENTER button.
* @property {number} MEDIA_PLAY_PAUSE - PLAY/PAUSE MEDIA button.
* @property {number} MEDIA_REWIND - RW (REWIND) MEDIA button.
* @property {number} MEDIA_FORWARD - FW (FORWARD) MEDIA button.
* @property {number} MEDIA_PLAY - PLAY MEDIA button.
* @property {number} MEDIA_PAUSE - PAUSE MEDIA button.
* @property {number} MEDIA_STOP - STOP MEDIA button.
* @property {number} RETURN - RETURN button.
* @property {number} MEDIA_RECORD - RECORD MEDIA button.
* @property {number} MEDIA_TRACK_PREVIOUS - PREVIOUS TRACK MEDIA button.
* @property {number} MEDIA_TRACK_NEXT - NEXT TRACK MEDIA button.
* @property {number} VOLUME_UP - VOLUME UP button.
* @property {number} VOLUME_DOWN - VOLUME DOWN button.
* @property {number} MUTE - MUTE button.
* @property {number} _0 - 0 (zero) button.
* @property {number} _1 - 1 button.
* @property {number} _2 - 2 button.
* @property {number} _3 - 3 button.
* @property {number} _4 - 4 button.
* @property {number} _5 - 5 button.
* @property {number} _6 - 6 button.
* @property {number} _7 - 7 button.
* @property {number} _8 - 8 button.
* @property {number} _9 - 9 button.
* @property {number} 0 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._0}.
* @property {number} 1 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._1}.
* @property {number} 2 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._2}.
* @property {number} 3 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._3}.
* @property {number} 4 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._4}.
* @property {number} 5 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._5}.
* @property {number} 6 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._6}.
* @property {number} 7 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._7}.
* @property {number} 8 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._8}.
* @property {number} 9 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._9}.
* @property {number} RED - RED button.
* @property {number} GREEN - GREEN button.
* @property {number} YELLOW - YELLOW button.
* @property {number} BLUE - BLUE button.
* @property {number} INFO - INFORMATION button.
* @property {number} EXIT - EXIT button.
* @property {number} MINUS - MINUS button.
* @property {number} CAPTION - CAPTION button.
* @property {number} CH_UP - CHANNEL UP button.
* @property {number} CH_DOWN - CHANNEL DOWN button.
* @property {number} CH_PREVIOUS - PREVIOUS CHANNEL button.
* @property {number} CH_LIST - CHANNEL LIST button.
* @property {number} E_MANUAL - E-MANUAL button.
* @property {number} SEARCH - SEARCH button.
* @property {number} _3D - 3D button.
* @property {number} 3D - Alias for {@link CB_Keyboard.extended.SAMSUNG_TIZEN_TV._3D}.
* @property {number} GUIDE - GUIDE button.
* @property {number} SOURCE - SOURCE button.
* @property {number} PICTURE_SIZE - PICTURE SIZE button.
* @property {number} EXTRA - EXTRA button.
* @property {number} SOCCER - SOCCER button.
* @property {number} MTS - MTS (Multichannel Television Sound) button.
* @property {number} TELETEXT - TELETEXT button.
* @property {number} MENU - MENU button.
* @property {number} TOOLS - TOOLS button.
*/
CB_Keyboard.extended.SAMSUNG_TIZEN_TV =
{
UP: 38,
DOWN: 40,
LEFT: 37,
RIGHT: 39,
ENTER: 13,
MEDIA_PLAY_PAUSE: 10252,
MEDIA_REWIND: 412,
MEDIA_FORWARD: 417,
MEDIA_PLAY: 415,
MEDIA_PAUSE: 19,
MEDIA_STOP: 413,
RETURN: 10009,
MEDIA_RECORD: 416,
MEDIA_TRACK_PREVIOUS: 10232,
MEDIA_TRACK_NEXT: 10233,
VOLUME_UP: 447,
VOLUME_DOWN: 448,
MUTE: 449,
_0: 48,
_1: 49,
_2: 50,
_3: 51,
_4: 52,
_5: 53,
_6: 54,
_7: 55,
_8: 56,
_9: 57,
RED: 403,
GREEN: 404,
YELLOW: 405,
BLUE: 406,
INFO: 457,
EXIT: 10182,
MINUS: 189,
CAPTION: 10221,
CH_UP: 427,
CH_DOWN: 428,
CH_PREVIOUS: 10190,
CH_LIST: 10073,
E_MANUAL: 10146,
SEARCH: 10225,
_3D: 10199,
GUIDE: 458,
SOURCE: 10072,
PICTURE_SIZE: 10140,
EXTRA: 10253,
SOCCER: 10228,
MTS: 10195,
TELETEXT: 10200,
MENU: 457,
TOOLS: 10135
};
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[0] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._0;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[1] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._1;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[2] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._2;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[3] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._3;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[4] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._4;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[5] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._5;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[6] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._6;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[7] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._7;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[8] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._8;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV[9] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._9;
CB_Keyboard.extended.SAMSUNG_TIZEN_TV["3D"] = CB_Keyboard.extended.SAMSUNG_TIZEN_TV._3D;
try { var tvKey = new Common.API.TVKeyValue(); } catch(E) { try { tvKey = sf.key; } catch(E) { tvKey = {}; } }
/**
* Samsung TV key codes.
* @memberof CB_Keyboard.extended
* @name SAMSUNG_TV
* @constant
* @type {Object}
* @default
* @property {number} TOOLS - TOOLS button.
* @property {number} EMODE - EMODE button.
* @property {number} DMA - DMA (Digital Media Adapter) button.
* @property {number} SOURCE - SOURCE button.
* @property {number} CHDOWN - CHANNEL DOWN button.
* @property {number} CHUP - CHANNEL UP button.
* @property {number} PANEL_CH_UP - CHANNEL UP PANEL button #1.
* @property {number} PANEL_CH_DOWN - CHANNEL DOWN PANEL button #1.
* @property {number} PANEL_CHUP - CHANNEL UP PANEL button #2.
* @property {number} PANEL_CHDOWN - CHANNEL DOWN PANEL button #2.
* @property {number} PIP_CHUP - CHANNEL UP PIP (Picture In Picture) button.
* @property {number} PIP_CHDOWN - CHANNEL DOWN PIP (Picture In Picture) button.
* @property {number} PRECH - PRE-CHANNEL (PREVIOUS CHANNEL) button.
* @property {number} FAVCH - FAVOURITE CHANNEL button.
* @property {number} CHLIST - CHANNEL LIST button.
* @property {number} TTX_MIX - TELETEXT button.
* @property {number} GUIDE - GUIDE button.
* @property {number} ASPECT - ASPECT button.
* @property {number} DOLBY_SRR - DOLBY SRR (SuRroundRight) button.
* @property {number} MTS - MTS (Multichannel Television Sound) button.
* @property {number} WHEELDOWN - WHEEL DOWN #1.
* @property {number} WHEEL_DOWN - WHEEL DOWN #2.
* @property {number} WHEELUP - WHEEL UP #1.
* @property {number} WHEEL_UP - WHEEL UP #2.
* @property {number} WHEELLEFT - WHEEL LEFT #1.
* @property {number} WHEEL_LEFT - WHEEL LEFT #2.
* @property {number} WHEELRIGHT - WHEEL RIGHT #1.
* @property {number} WHEEL_RIGHT - WHEEL RIGHT #2.
* @property {number} SMART - SMART TV button.
* @property {number} EXIT - EXIT button.
* @property {number} POWER - POWER button.
* @property {number} PANEL_POWER - POWER PANEL button.
* @property {number} POWEROFF - POWER OFF button.
* @property {number} POWERON - POWER ON button.
* @property {number} CONTENT - CONTENT button.
* @property {number} WLINK - WLINK (Wiselink) button #1.
* @property {number} W_LINK - WLINK (Wiselink) button #2.
* @property {number} EMPTY - EMPTY button.
* @property {number} CC - CC (Closed Captioning) button.
* @property {number} REC - REC button.
* @property {number} VOLUP - VOLUME UP button #1.
* @property {number} VOL_UP - VOLUME UP button #2.
* @property {number} VOLDOWN - VOLUME DOWN button #1.
* @property {number} VOL_DOWN - VOLUME DOWN button #2.
* @property {number} PANEL_VOLUP - PANEL VOLUME UP button #1.
* @property {number} PANEL_VOL_UP - PANEL VOLUME UP button #2.
* @property {number} PANEL_VOLDOW - PANEL VOLUME DOWN button #1.
* @property {number} PANEL_VOLDOWN - PANEL VOLUME DOWN button #2.
* @property {number} PANEL_VOL_DOWN - PANEL VOLUME DOWN button #3.
* @property {number} MUTE - MUTE button.
* @property {number} INFO - INFORMATION button.
* @property {number} INFOLINK - INFOLINK button.
* @property {number} MENU - MENU button.
* @property {number} SUBTITLE - SUBTITLE button #1.
* @property {number} SUB_TITLE - SUBTITLE button #2.
* @property {number} PANEL_SOURCE - SOURCE PANEL button.
* @property {number} _0 - 0 (zero) button.
* @property {number} _1 - 1 button.
* @property {number} _2 - 2 button.
* @property {number} _3 - 3 button.
* @property {number} _4 - 4 button.
* @property {number} _5 - 5 button.
* @property {number} _6 - 6 button.
* @property {number} _7 - 7 button.
* @property {number} _8 - 8 button.
* @property {number} _9 - 9 button.
* @property {number} _10 - 10 button.
* @property {number} _11 - 11 button.
* @property {number} _12 - 12 button.
* @property {number} 0 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._0}.
* @property {number} 1 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._1}.
* @property {number} 2 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._2}.
* @property {number} 3 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._3}.
* @property {number} 4 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._4}.
* @property {number} 5 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._5}.
* @property {number} 6 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._6}.
* @property {number} 7 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._7}.
* @property {number} 8 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._8}.
* @property {number} 9 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._9}.
* @property {number} 10 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._10}.
* @property {number} 11 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._11}.
* @property {number} 12 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._12}.
* @property {number} RED - RED button.
* @property {number} GREEN - GREEN button.
* @property {number} YELLOW - YELLOW button.
* @property {number} BLUE - BLUE button.
* @property {number} CYAN - CYAN button.
* @property {number} RW - RW (REWIND) button #1.
* @property {number} REWIND - RW (REWIND) button #2.
* @property {number} REWIND_ - RW (REWIND) button #3.
* @property {number} FF - FF (FAST FORWARD) button #1.
* @property {number} FF_ - FF (FAST FORWARD) button #2.
* @property {number} PAUSE - PAUSE button.
* @property {number} PLAY - PLAY button.
* @property {number} STOP - STOP button.
* @property {number} SEARCH - SEARCH button.
* @property {number} UP - UP button.
* @property {number} DOWN - DOWN button.
* @property {number} LEFT - LEFT button.
* @property {number} RIGHT - RIGHT button.
* @property {number} CH_UP - CHANNEL UP button.
* @property {number} CH_DOWN - CHANNEL DOWN button.
* @property {number} DISC_MENU - DISC MENU button.
* @property {number} _3D - 3D button.
* @property {number} 3D - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._3D}.
* @property {number} PIP_ONOFF - PIP (Picture In Picture) ON/OFF button.
* @property {number} AD - AD (Audio Description) button.
* @property {number} PMODE - PICTURE MODE button.
* @property {number} SMODE - SOUND MODE button.
* @property {number} SLEEP - SLEEP button.
* @property {number} D_AUDIO - DIGITAL AUDIO button.
* @property {number} D_FRONT_PLAY - DIGITAL FRONT PLAY button.
* @property {number} D_VIEW_MODE - DIGITAL VIEW MODE button.
* @property {number} STEP - STEP button.
* @property {number} CALLER_ID - CALLED ID button.
* @property {number} ANTENNA - ANTENNA button.
* @property {number} ZOOM_MOVE - MOVE ZOOM button.
* @property {number} ZOOM1 - ZOOM 1 button.
* @property {number} ZOOM2 - ZOOM 2 button.
* @property {number} ZOOM_IN - ZOOM IN button.
* @property {number} ZOOM_OUT - ZOOM OUT button.
* @property {number} RETURN - RETURN button.
* @property {number} PANEL_RETURN - RETURN PANEL button.
* @property {number} ENTER - ENTER button.
* @property {number} PANEL_ENTER - ENTER PANEL button.
* @property {number} PANEL_MENU - MENU PANEL button.
* @property {number} ADDDEL - ADD/DEL button.
* @property {number} PIP_SWAP - PIP (Picture In Picture) SWAP button.
* @property {number} PLUS100 - SAMSUNG AUTO MOTION PLUS 100 HZ button.
* @property {number} CAPTION - CAPTION button.
* @property {number} PICTURE_SIZE - PICTURE SIZE button.
* @property {number} PIP_SIZE - PIP (Picture In Picture) SIZE button.
* @property {number} MAGIC_CHANNEL - MAGIC CHANNEL button.
* @property {number} PIP_SCAN - PIP (Picture In Picture) SCAN button.
* @property {number} DEVICE_CONNECT - DEVICE CONNECT button.
* @property {number} HELP - HELP button.
* @property {number} CONVERGENCE - CONVERGENCE button.
* @property {number} AUTO_PROGRAM - AUTO PROGRAM button.
* @property {number} FACTORY - FACTORY button.
* @property {number} _3SPEED - 3SPEED button.
* @property {number} 3SPEED - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._3SPEED}.
* @property {number} RSURF - R.SURF button.
* @property {number} TOPMENU - TOP MENU button.
* @property {number} GAME - GAME button.
* @property {number} QUICK_REPLAY - QUICK REPLAY button.
* @property {number} STILL_PICTURE - STILL PICTURE button.
* @property {number} DTV - DTV (Digital Television) button.
* @property {number} INSTANT_REPLAY - INSTANT REPLAY button.
* @property {number} LINK - LINK button.
* @property {number} ANGLE - ANGLE button.
* @property {number} RESERVED1 - RESERVED1 button.
* @property {number} RESERVED5 - RESERVED5 button.
* @property {number} PROGRAM - PROGRAM button.
* @property {number} BOOKMARK - BOOKMARK button.
* @property {number} PRINT - PRINT button.
* @property {number} CLEAR - CLEAR button.
* @property {number} VCHIP - V-CHIP button.
* @property {number} REPEAT - REPEAT button.
* @property {number} DOOR - DOOR button.
* @property {number} OPEN - OPEN button.
* @property {number} TURBO - TURBO button.
* @property {number} DVR_MENU - DVR (Digital Video Recorder) MENU button.
* @property {number} TTX_SUBFACE - Teletext Subface button.
* @property {number} CH_LIST - CHANNEL LIST button.
* @property {number} DNIe - DNIe (Digital Natural Image Engine) button.
* @property {number} DNSe - DNSe (Digital Natural Sound Engine) button.
* @property {number} SRS - SRS (Sound Retrieval System) button.
* @property {number} CONVERT_AUDIO_MAINSUB - CONVERT AUDIO MAIN/SUB button.
* @property {number} MDC - MDC button.
* @property {number} SEFFECT - SOUND EFFECT button.
* @property {number} DVR - DVR (Digital Video Recorder) button.
* @property {number} DTV_SIGNAL - DTV (Digital Television) SIGNAL button.
* @property {number} LIVE - LIVE button.
* @property {number} PERPECT_FOCUS - PERPECT FOCUS button.
* @property {number} HOME - HOME button.
* @property {number} ESAVING - ENERGY SAVING button.
* @property {number} CONTENTS - CONTENTS button.
* @property {number} SCALE - SCALE button.
* @property {number} CLOCK_DISPLAY - CLOCK DISPLAY button.
* @property {number} SETUP_CLOCK_TIMER - SETUP CLOCK TIMER button.
* @property {number} MAGIC_BRIGHT - MAGIC BRIGHT button.
* @property {number} FM_RADIO - FM RADIO button.
* @property {number} VCR_MODE - VCR MODE button.
* @property {number} CATV_MODE - CATV (Community Antenna Television) MODE button.
* @property {number} DSS_MODE - DSS MODE button.
* @property {number} DVD_MODE - DVD MODE button.
* @property {number} STB_MODE - STB (Set-Top Box) MODE button.
* @property {number} PCMODE - PC MODE button.
* @property {number} TV_MODE - TV MODE button.
* @property {number} TV - TV button.
* @property {number} AV1 - AV #1 button.
* @property {number} AV2 - AV #2 button.
* @property {number} AV3 - AV #3 button.
* @property {number} SVIDEO1 - S-VIDEO (Separated-Video) #1 button.
* @property {number} SVIDEO2 - S-VIDEO (Separated-Video) #2 button.
* @property {number} SVIDEO3 - S-VIDEO (Separated-Video) #3 button.
* @property {number} COMPONENT1 - COMPONENT #1 button.
* @property {number} COMPONENT2 - COMPONENT #2 button.
* @property {number} DVI - DVI (Digital Visual Interface) button.
* @property {number} HDMI - HDMI button.
* @property {number} HDMI1 - HDMI #1 button.
* @property {number} HDMI2 - HDMI #2 button.
* @property {number} HDMI3 - HDMI #3 button.
* @property {number} HDMI4 - HDMI #4 button.
* @property {number} DTV_LINK - DTVLINK (DIGITAL TELEVISION LINK) button.
* @property {number} APP_LIST - APP LIST button.
* @property {number} BACK_MHP - BACK MHP (Multimedia Home Platform) button.
* @property {number} ALT_MHP - ALTERNATE MHP (Multimedia Home Platform) button.
* @property {number} RSS - RSS button.
* @property {number} ENTERTAINMENT - ENTERTAINMENT button.
* @property {number} ID_INPUT - ID INPUT button.
* @property {number} ID_SETUP - ID SETUP button.
* @property {number} ANYNET - ANYNET button.
* @property {number} ANYVIEW - ANYVIEW button.
* @property {number} MS - MS button.
* @property {number} MORE - MORE button.
* @property {number} _4_3 - 4:3 button.
* @property {number} 4_3 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._4_3}.
* @property {number} _16_9 - 16:9 button.
* @property {number} 16_9 - Alias for {@link CB_Keyboard.extended.SAMSUNG_TV._16_9}.
* @property {number} PANORAMA - PICTURE MODE PANORAMA button.
* @property {number} DYNAMIC - PICTURE MODE DYNAMIC button.
* @property {number} STANDARD - PICTURE MODE STANDARD button.
* @property {number} MOVIE1 - PICTURE MODE MOVIE1 button.
* @property {number} CUSTOM - PICTURE MODE CUSTOM button.
* @property {number} AUTO_ARC_RESET - AUTO ARC (Audio Return Channel) RESET button.
* @property {number} AUTO_ARC_LNA_ON - AUTO ARC (Audio Return Channel) LNA (Low Noise Amplifier) ON button.
* @property {number} AUTO_ARC_LNA_OFF - AUTO ARC (Audio Return Channel) LNA (Low Noise Amplifier) OFF button.
* @property {number} AUTO_ARC_ANYNET_MODE_OK - AUTO ARC (Audio Return Channel) ANYNET MODE OK button.
* @property {number} AUTO_ARC_ANYNET_AUTO_START - AUTO ARC (Audio Return Channel) ANYNET AUTO START button.
* @property {number} AUTO_ARC_CAPTION_ON - AUTO ARC (Audio Return Channel) CAPTION ON button.
* @property {number} AUTO_ARC_CAPTION_OFF - AUTO ARC (Audio Return Channel) CAPTION OFF button.
* @property {number} AUTO_ARC_PIP_DOUBLE - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) DOUBLE button.
* @property {number} AUTO_ARC_PIP_LARGE - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) LARGE button.
* @property {number} AUTO_ARC_PIP_SMALL - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) SMALL button.
* @property {number} AUTO_ARC_PIP_WIDE - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) WIDE button.
* @property {number} AUTO_ARC_PIP_LEFT_TOP - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) LEFT TOP button.
* @property {number} AUTO_ARC_PIP_RIGHT_TOP - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) RIGHT TOP button.
* @property {number} AUTO_ARC_PIP_LEFT_BOTTOM - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) LEFT BOTTOM button.
* @property {number} AUTO_ARC_PIP_RIGHT_BOTTOM - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) RIGHT BOTTOM button.
* @property {number} AUTO_ARC_PIP_CH_CHANGE - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) CHANNEL CHANGE button.
* @property {number} AUTO_ARC_PIP_SOURCE_CHANGE - AUTO ARC (Audio Return Channel) PIP (Picture In Picture) SOURCE CHANGE button.
* @property {number} AUTO_ARC_AUTOCOLOR_SUCCESS - AUTO ARC (Audio Return Channel) AUTOCOLOR SUCCESS button.
* @property {number} AUTO_ARC_AUTOCOLOR_FAIL - AUTO ARC (Audio Return Channel) AUTOCOLOR FAIL button.
* @property {number} AUTO_ARC_C_FORCE_AGING - AUTO ARC (Audio Return Channel) C-FORCE AGING button.
* @property {number} AUTO_ARC_USBJACK_INSPECT - AUTO ARC (Audio Return Channel) USB JACK INSPECT button.
* @property {number} AUTO_ARC_JACK_IDENT - AUTO ARC (Audio Return Channel) JACK IDENT button.
* @property {number} AUTO_ARC_CAPTION_KOR - AUTO ARC (Audio Return Channel) CAPTION KOREAN button.
* @property {number} AUTO_ARC_CAPTION_ENG - AUTO ARC (Audio Return Channel) CAPTION ENGLISH button.
* @property {number} AUTO_ARC_ANTENNA_AIR - AUTO ARC (Audio Return Channel) ANTENNA AIR button.
* @property {number} AUTO_ARC_ANTENNA_CABLE - AUTO ARC (Audio Return Channel) ANTENNA CABLE button.
* @property {number} AUTO_ARC_ANTENNA_SATELLITE - AUTO ARC (Audio Return Channel) ANTENNA SATELLITE button.
* @property {number} AUTO_FORMAT - AUTO FORMAT button.
* @property {number} DNET - D-NET button.
* @property {number} NINE_SEPARATE - NINE SEPARATE button.
* @property {number} MIC - MIC (MICROPHONE) button.
* @property {number} EXT1 - EXT1 button.
* @property {number} EXT2 - EXT2 button.
* @property {number} EXT3 - EXT3 button.
* @property {number} EXT4 - EXT4 button.
* @property {number} EXT5 - EXT5 button.
* @property {number} EXT6 - EXT6 button.
* @property {number} EXT7 - EXT7 button.
* @property {number} EXT8 - EXT8 button.
* @property {number} EXT9 - EXT9 button.
* @property {number} EXT10 - EXT10 button.
* @property {number} EXT11 - EXT11 button.
* @property {number} EXT12 - EXT12 button.
* @property {number} EXT13 - EXT13 button.
* @property {number} EXT14 - EXT14 button.
* @property {number} EXT15 - EXT15 button.
* @property {number} EXT16 - EXT16 button.
* @property {number} EXT17 - EXT17 button.
* @property {number} EXT18 - EXT18 button.
* @property {number} EXT19 - EXT19 button.
* @property {number} EXT20 - EXT20 button.
* @property {number} EXT21 - EXT21 button.
* @property {number} EXT22 - EXT22 button.
* @property {number} EXT23 - EXT23 button.
* @property {number} EXT24 - EXT24 button.
* @property {number} EXT25 - EXT25 button.
* @property {number} EXT26 - EXT26 button.
* @property {number} EXT27 - EXT27 button.
* @property {number} EXT28 - EXT28 button.
* @property {number} EXT29 - EXT29 button.
* @property {number} EXT30 - EXT30 button.
* @property {number} EXT31 - EXT31 button.
* @property {number} EXT32 - EXT32 button.
* @property {number} EXT33 - EXT33 button.
* @property {number} EXT34 - EXT34 button.
* @property {number} EXT35 - EXT35 button.
* @property {number} EXT36 - EXT36 button.
* @property {number} EXT37 - EXT37 button.
* @property {number} EXT38 - EXT38 button.
* @property {number} EXT39 - EXT39 button.
* @property {number} EXT40 - EXT40 button.
* @property {number} EXT41 - EXT41 button.
*/
//* Source: https://forum.samygo.tv/viewtopic.php?t=1792 and http://www.openremote.org/pages/viewpage.action?pageId=19434990 and https://github.com/Ape/samsungctl/issues/87
CB_Keyboard.extended.SAMSUNG_TV =
{
TOOLS: tvKey.KEY_TOOLS || tvKey.TOOLS, //Same code as "K" key (75).
EMODE: tvKey.KEY_EMODE || tvKey.EMODE, //148
DMA: tvKey.KEY_DMA || tvKey.DMA, //260
SOURCE: tvKey.KEY_SOURCE || tvKey.SOURCE, //222
CHDOWN: tvKey.KEY_CHDOWN || tvKey.CHDOWN,
CHUP: tvKey.KEY_CHUP || tvKey.CHUP,
PANEL_CH_UP: tvKey.KEY_PANEL_CH_UP || tvKey.PANEL_CH_UP, //105 (same code as "9" in the numeric pad).
PANEL_CH_DOWN: tvKey.KEY_PANEL_CH_DOWN || tvKey.PANEL_CH_DOWN, //106 (same code as asterisk ("*") in the numeric pad).
PANEL_CHUP: tvKey.KEY_PANEL_CHUP || tvKey.KEY_PANNEL_CHUP || tvKey.PANEL_CHUP || tvKey.PANNEL_CHUP,
PANEL_CHDOWN: tvKey.KEY_PANEL_CHDOWN || tvKey.KEY_PANNEL_CHDOWN || tvKey.PANEL_CHDOWN || tvKey.PANNEL_CHDOWN,
PIP_CHUP: tvKey.KEY_PIP_CHUP || tvKey.PIP_CHUP, //1050
PIP_CHDOWN: tvKey.KEY_PIP_CHDOWN || tvKey.PIP_CHDOWN, //1051
PRECH: tvKey.KEY_PRECH || tvKey.PRECH, //259
FAVCH: tvKey.KEY_FAVCH || tvKey.FAVCH, //256
CHLIST: tvKey.KEY_CHLIST || tvKey.CHLIST, //84 (same code as "T" key).
TTX_MIX: tvKey.KEY_TTX_MIX || tvKey.TTX_MIX, //650
GUIDE: tvKey.KEY_GUIDE || tvKey.GUIDE, //651
ASPECT: tvKey.KEY_ASPECT || tvKey.ASPECT, //653
DOLBY_SRR: tvKey.KEY_DOLBY_SRR || tvKey.DOLBY_SRR, //654
MTS: tvKey.KEY_MTS || tvKey.MTS, //655
WHEELDOWN: tvKey.KEY_WHEELDOWN || tvKey.WHEELDOWN, //29469
WHEEL_DOWN: tvKey.KEY_WHEEL_DOWN || tvKey.WHEEL_DOWN,
WHEELUP: tvKey.KEY_WHEELUP || tvKey.WHEELUP, //29468
WHEEL_UP: tvKey.KEY_WHEEL_UP || tvKey.WHEEL_UP,
WHEELLEFT: tvKey.KEY_WHEELLEFT || tvKey.WHEELLEFT,
WHEEL_LEFT: tvKey.KEY_WHEEL_LEFT || tvKey.WHEEL_LEFT,
WHEELRIGHT: tvKey.KEY_WHEELRIGHT || tvKey.WHEELRIGHT,
WHEEL_RIGHT: tvKey.KEY_WHEEL_RIGHT || tvKey.WHEEL_RIGHT,
SMART: tvKey.KEY_SMART || tvKey.SMART,
EXIT: tvKey.KEY_EXIT || tvKey.EXIT, //Same code as INS key (45).
POWER: tvKey.KEY_POWER || tvKey.POWER, //76 (same code as "L" key).
PANEL_POWER: tvKey.KEY_PANEL_POWER || tvKey.KEY_PANNEL_POWER || tvKey.PANEL_POWER || tvKey.PANNEL_POWER, //614
POWEROFF: tvKey.KEY_POWEROFF || tvKey.POWEROFF,
POWERON: tvKey.KEY_POWERON || tvKey.POWERON,
CONTENT: tvKey.KEY_CONTENT || tvKey.CONTENT, //261
WLINK: tvKey.KEY_WLINK || tvKey.WLINK, //115 (same code as F4 key)
W_LINK: tvKey.KEY_W_LINK || tvKey.W_LINK,
EMPTY: tvKey.KEY_EMPTY || tvKey.EMPTY, //0
CC: tvKey.KEY_CC || tvKey.CC, //118 (same code as F7 key)
REC: tvKey.KEY_REC || tvKey.REC, //192
VOLUP: tvKey.KEY_VOLUP || tvKey.VOLUP,
VOL_UP: tvKey.KEY_VOL_UP || tvKey.VOL_UP, //7
VOLDOWN: tvKey.KEY_VOLDOWN || tvKey.VOLDOWN,
VOL_DOWN: tvKey.KEY_VOL_DOWN || tvKey.VOL_DOWN, //1
PANEL_VOLUP: tvKey.KEY_PANEL_VOLUP || tvKey.KEY_PANNEL_VOLUP || tvKey.PANEL_VOLUP || tvKey.PANNEL_VOLUP,
PANEL_VOL_UP: tvKey.KEY_PANEL_VOL_UP || tvKey.PANEL_VOL_UP, //203
PANEL_VOLDOW: tvKey.KEY_PANEL_VOLDOW || tvKey.KEY_PANNEL_VOLDOW || tvKey.PANEL_VOLDOW || tvKey.PANNEL_VOLDOW,
PANEL_VOLDOWN: tvKey.KEY_PANEL_VOLDOWN || tvKey.KEY_PANNEL_VOLDOWN || tvKey.PANEL_VOLDOWN || tvKey.PANNEL_VOLDOWN,
PANEL_VOL_DOWN: tvKey.KEY_PANEL_VOL_DOWN || tvKey.PANEL_VOL_DOWN, //204
MUTE: tvKey.KEY_MUTE || tvKey.MUTE, //Same code as ESC key (27).
INFO: tvKey.KEY_INFO || tvKey.INFO, //31
INFOLINK: tvKey.KEY_INFOLINK || tvKey.INFOLINK, //147
MENU: tvKey.KEY_MENU || tvKey.MENU, //262
SUBTITLE: tvKey.KEY_SUBTITLE || tvKey.SUBTITLE, //652
SUB_TITLE: tvKey.KEY_SUB_TITLE || tvKey.SUB_TITLE, //1089
PANEL_SOURCE: tvKey.KEY_PANEL_SOURCE || tvKey.KEY_PANNEL_SOURCE || tvKey.PANEL_SOURCE || tvKey.PANNEL_SOURCE, //612
_0: tvKey.KEY_0 || tvKey.N0 || tvKey._0 || tvKey["0"], //17 (same code as CTRL or META key, depending on the system).
_1: tvKey.KEY_1 || tvKey.N1 || tvKey._1 || tvKey["1"], //101 (same code as "5" in the numeric pad).
_2: tvKey.KEY_2 || tvKey.N2 || tvKey._2 || tvKey["2"], //98 (same code as "2" in the numeric pad).
_3: tvKey.KEY_3 || tvKey.N3 || tvKey._3 || tvKey["3"], //6
_4: tvKey.KEY_4 || tvKey.N4 || tvKey._4 || tvKey["4"], //8
_5: tvKey.KEY_5 || tvKey.N5 || tvKey._5 || tvKey["5"], //9
_6: tvKey.KEY_6 || tvKey.N6 || tvKey._6 || tvKey["6"], //10
_7: tvKey.KEY_7 || tvKey.N7 || tvKey._7 || tvKey["7"], //12
_8: tvKey.KEY_8 || tvKey.N8 || tvKey._8 || tvKey["8"], //13
_9: tvKey.KEY_9 || tvKey.N9 || tvKey._9 || tvKey["9"], //14
_10: tvKey.KEY_10 || tvKey.N10 || tvKey._10 || tvKey["10"],
_11: tvKey.KEY_11 || tvKey.N11 || tvKey._11 || tvKey["11"],
_12: tvKey.KEY_12 || tvKey.N12 || tvKey._12 || tvKey["12"], //1057
RED: tvKey.KEY_RED || tvKey.RED, //Same code as SEPARATOR key (108).
GREEN: tvKey.KEY_GREEN || tvKey.GREEN, //Same code as CAPS_LOCK key (20).
YELLOW: tvKey.KEY_YELLOW || tvKey.YELLOW, //21
BLUE: tvKey.KEY_BLUE || tvKey.BLUE, //22
CYAN: tvKey.KEY_CYAN || tvKey.CYAN,
RW: tvKey.KEY_RW || tvKey.RW, //69 (same code as "E" key).
PAUSE: tvKey.KEY_PAUSE || tvKey.PAUSE, //74 (same code as "J" key).
FF: tvKey.KEY_FF || tvKey.FF, //72 (same code as "H" key).
FF_: tvKey.KEY_FF_ || tvKey.FF_, //1078
REWIND: tvKey.KEY_REWIND || tvKey.REWIND,
REWIND_: tvKey.KEY_REWIND_ || tvKey.REWIND_, //1080
PLAY: tvKey.KEY_PLAY || tvKey.PLAY, //71 (same code as "G" key).
STOP: tvKey.KEY_STOP || tvKey.STOP, //70 (same code as "F" key).
SEARCH: tvKey.KEY_SEARCH || tvKey.SEARCH,
UP: tvKey.KEY_UP || tvKey.UP, //29460.
DOWN: tvKey.KEY_DOWN || tvKey.DOWN, //29461
LEFT: tvKey.KEY_LEFT || tvKey.LEFT, //4
RIGHT: tvKey.KEY_RIGHT || tvKey.RIGHT, //5
CH_UP: tvKey.KEY_CH_UP || tvKey.CH_UP, //68 (sam