aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Op den Kamp <lars@opdenkamp.eu>2012-05-11 15:59:34 +0200
committerLars Op den Kamp <lars@opdenkamp.eu>2012-07-02 10:49:49 +0200
commit26597a7a1edec2f1c4602116fe193a4a9ef4cc26 (patch)
treeb05b153339eea03806c196eb5009e8f9bcdbc934
parentbc059e775e02e362d6f842732972fb9bb3a95786 (diff)
nyxboard: map the 'power' button on the nyxboard
-rw-r--r--system/peripherals.xml1
-rw-r--r--xbmc/peripherals/devices/PeripheralNyxboard.cpp8
2 files changed, 9 insertions, 0 deletions
diff --git a/system/peripherals.xml b/system/peripherals.xml
index 488dd02ddc..9589295c87 100644
--- a/system/peripherals.xml
+++ b/system/peripherals.xml
@@ -6,6 +6,7 @@
<setting key="flip_keyboard" value="XBMC.VideoLibrary.Search" label="36002" order="3" />
<setting key="flip_remote" value="Dialog.Close(virtualkeyboard)" label="36003" order="4" />
<setting key="key_user" value="" label="36004" order="5" />
+ <setting key="key_power" value="XBMC.ShutDown()" label="13015" order="6" />
</peripheral>
<peripheral vendor_product="2548:1001" bus="usb" name="Pulse-Eight CEC Adapter" mapTo="cec">
diff --git a/xbmc/peripherals/devices/PeripheralNyxboard.cpp b/xbmc/peripherals/devices/PeripheralNyxboard.cpp
index 71fcfa6367..53acd2d534 100644
--- a/xbmc/peripherals/devices/PeripheralNyxboard.cpp
+++ b/xbmc/peripherals/devices/PeripheralNyxboard.cpp
@@ -28,6 +28,8 @@
using namespace PERIPHERALS;
using namespace std;
+#define NYBOARD_POWER_BUTTON_KEYSYM 0x9f
+
CPeripheralNyxboard::CPeripheralNyxboard(const PeripheralType type, const PeripheralBusType busType, const CStdString &strLocation, const CStdString &strDeviceName, int iVendorId, int iProductId) :
CPeripheralHID(type, busType, strLocation, strDeviceName, iVendorId, iProductId)
{
@@ -55,6 +57,12 @@ bool CPeripheralNyxboard::LookupSymAndUnicode(XBMC_keysym &keysym, uint8_t *key,
CLog::Log(LOGDEBUG, "%s - 'user' key pressed", __FUNCTION__);
strCommand = GetSettingString("key_user");
}
+ else if (keysym.sym == NYBOARD_POWER_BUTTON_KEYSYM && keysym.mod == XBMCKMOD_NONE)
+ {
+ /* 'power' key pressed */
+ CLog::Log(LOGDEBUG, "%s - 'power' key pressed", __FUNCTION__);
+ strCommand = GetSettingString("key_power");
+ }
if (!strCommand.IsEmpty())
{