I think your problem is that you call boxee.onKeyboardKeyUp... in DOM context instead of control script context. Try to read http://developer.boxee.tv/Control_Script_Context.
I map the the navigation keys to arrow keys to allow testing in a regular webbrowser
Here is a complete working example
Code:
<!DOCTYPE html>
<html>
<head>
<title>Boxee Test</title>
<meta charset="UTF-8" />
</head>
<body>
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js'></script>
<script type="text/javascript" src="boxee-api.js"></script>
<script type="text/javascript">
$(function () {
boxeeAPI.keyboardMode();
function setupPlayer() {
boxee.onKeyboardKeyLeft = function() {browser.keyPress(browser.KEY_LEFT)};
boxee.onKeyboardKeyRight = function() {browser.keyPress(browser.KEY_RIGHT)};
boxee.onKeyboardKeyUp = function() {browser.keyPress(browser.KEY_UP)};
boxee.onKeyboardKeyDown = function() {browser.keyPress(browser.KEY_DOWN)};
boxee.onKeyboardKeyEnter = function() {browser.keyPress(browser.KEY_RETURN)};
boxee.onKeyboardKeyBack = function() {browser.keyPress(browser.KEY_ESCAPE)};
}
// Register in Control Context (see http://developer.boxee.tv/Control_Script_Context)
boxee.exec(setupPlayer);
// Execute in Control Context (see http://developer.boxee.tv/Control_Script_Context)
boxee.exec("setupPlayer()");
// Browser control
$(document).keydown(function(e) {
var code = (e.keyCode ? e.keyCode : e.which);
switch(code) {
case 13:
boxeeAPI.notify("Enter",1);
break;
case 27:
boxeeAPI.notify("Back",1);
break;
case 37:
boxeeAPI.notify("Left",1);
break;
case 38:
boxeeAPI.notify("Up",1);
break;
case 39:
boxeeAPI.notify("Right",1);
break;
case 40:
boxeeAPI.notify("Down",1);
break;
}
});
});
</script>
</body></html>
Bookmarks