Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #11465 from OatmealDome/qt6-xinput-bug
DolphinQt: Add workaround for Qt 6.3+ bug on Linux
  • Loading branch information
AdmiralCurtiss committed Jan 24, 2023
2 parents cf2f8a7 + d40dbe4 commit 7002831
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions Source/Core/DolphinQt/Main.cpp
Expand Up @@ -9,6 +9,10 @@
#include <cstdio>
#endif

#ifdef __linux__
#include <cstdlib>
#endif

#include <OptionParser.h>
#include <QAbstractEventDispatcher>
#include <QApplication>
Expand Down Expand Up @@ -133,6 +137,16 @@ int main(int argc, char* argv[])
}
#endif

#ifdef __linux__
// Qt 6.3+ has a bug which causes mouse inputs to not be registered in our XInput2 code.
// If we define QT_XCB_NO_XI2, Qt's xcb platform plugin no longer initializes its XInput
// code, which makes mouse inputs work again.
// For more information: https://bugs.dolphin-emu.org/issues/12913
#if (QT_VERSION >= QT_VERSION_CHECK(6, 3, 0))
putenv("QT_XCB_NO_XI2=1");
#endif
#endif

auto parser = CommandLineParse::CreateParser(CommandLineParse::ParserOptions::IncludeGUIOptions);
const optparse::Values& options = CommandLineParse::ParseArguments(parser.get(), argc, argv);
const std::vector<std::string> args = parser->args();
Expand Down

0 comments on commit 7002831

Please sign in to comment.