summaryrefslogtreecommitdiffstats
path: root/xbmc/input/button
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--xbmc/input/button/ButtonStat.cpp25
-rw-r--r--xbmc/input/button/ButtonStat.h30
-rw-r--r--xbmc/input/button/CMakeLists.txt5
3 files changed, 60 insertions, 0 deletions
diff --git a/xbmc/input/button/ButtonStat.cpp b/xbmc/input/button/ButtonStat.cpp
new file mode 100644
index 0000000..679947f
--- /dev/null
+++ b/xbmc/input/button/ButtonStat.cpp
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2020 Team Kodi
+ * This file is part of Kodi - https://kodi.tv
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * See LICENSES/README.md for more information.
+ */
+#include "ButtonStat.h"
+
+#include "xbmc/input/InputTypes.h"
+
+using namespace KODI;
+using namespace INPUT;
+
+CButtonStat::CButtonStat() = default;
+
+CKey CButtonStat::TranslateKey(const CKey& key) const
+{
+ uint32_t buttonCode = key.GetButtonCode();
+ if (key.GetHeld() > HOLD_TRESHOLD)
+ buttonCode |= CKey::MODIFIER_LONG;
+
+ CKey translatedKey(buttonCode, key.GetHeld());
+ return translatedKey;
+}
diff --git a/xbmc/input/button/ButtonStat.h b/xbmc/input/button/ButtonStat.h
new file mode 100644
index 0000000..04ee51a
--- /dev/null
+++ b/xbmc/input/button/ButtonStat.h
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2020 Team Kodi
+ * This file is part of Kodi - https://kodi.tv
+ *
+ * SPDX-License-Identifier: GPL-2.0-or-later
+ * See LICENSES/README.md for more information.
+ */
+
+#pragma once
+
+#include "input/Key.h"
+#include "input/XBMC_keyboard.h"
+
+#include <string>
+
+namespace KODI
+{
+namespace INPUT
+{
+
+class CButtonStat
+{
+public:
+ CButtonStat();
+ ~CButtonStat() = default;
+
+ CKey TranslateKey(const CKey& key) const;
+};
+} // namespace INPUT
+} // namespace KODI
diff --git a/xbmc/input/button/CMakeLists.txt b/xbmc/input/button/CMakeLists.txt
new file mode 100644
index 0000000..489f901
--- /dev/null
+++ b/xbmc/input/button/CMakeLists.txt
@@ -0,0 +1,5 @@
+set(SOURCES ButtonStat.cpp)
+
+set(HEADERS ButtonStat.h)
+
+core_add_library(input_button) \ No newline at end of file