summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2022-07-15 02:41:41 +0200
committerGitHub <noreply@github.com>2022-07-15 02:41:41 +0200
commit2fed6dd7e18b638d5108eacb7ebd535707f95453 (patch)
treee830cb8e73f176e1fadc8804f43f183c343b82a8
parentMerge pull request #8510 from german77/vibration (diff)
parentqt_web_browser: Fix button inputs with QtWebEngine (diff)
downloadyuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar.gz
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar.bz2
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar.lz
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar.xz
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.tar.zst
yuzu-2fed6dd7e18b638d5108eacb7ebd535707f95453.zip
-rw-r--r--src/yuzu/applets/qt_web_browser.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/yuzu/applets/qt_web_browser.cpp b/src/yuzu/applets/qt_web_browser.cpp
index 790edbb2a..89bd482e0 100644
--- a/src/yuzu/applets/qt_web_browser.cpp
+++ b/src/yuzu/applets/qt_web_browser.cpp
@@ -2,6 +2,8 @@
// SPDX-License-Identifier: GPL-2.0-or-later
#ifdef YUZU_USE_QT_WEB_ENGINE
+#include <bit>
+
#include <QApplication>
#include <QKeyEvent>
@@ -211,8 +213,10 @@ template <Core::HID::NpadButton... T>
void QtNXWebEngineView::HandleWindowFooterButtonPressedOnce() {
const auto f = [this](Core::HID::NpadButton button) {
if (input_interpreter->IsButtonPressedOnce(button)) {
+ const auto button_index = std::countr_zero(static_cast<u64>(button));
+
page()->runJavaScript(
- QStringLiteral("yuzu_key_callbacks[%1] == null;").arg(static_cast<u8>(button)),
+ QStringLiteral("yuzu_key_callbacks[%1] == null;").arg(button_index),
[this, button](const QVariant& variant) {
if (variant.toBool()) {
switch (button) {
@@ -236,7 +240,7 @@ void QtNXWebEngineView::HandleWindowFooterButtonPressedOnce() {
page()->runJavaScript(
QStringLiteral("if (yuzu_key_callbacks[%1] != null) { yuzu_key_callbacks[%1](); }")
- .arg(static_cast<u8>(button)));
+ .arg(button_index));
}
};