mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-04-25 14:54:56 +00:00
Merge pull request #13286 from JoshuaVandaele/xcb
Enforce XCB within code
This commit is contained in:
commit
3f73a39dbd
3 changed files with 9 additions and 5 deletions
|
@ -1,7 +1,7 @@
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Version=1.0
|
Version=1.0
|
||||||
Icon=dolphin-emu
|
Icon=dolphin-emu
|
||||||
Exec=env QT_QPA_PLATFORM=xcb dolphin-emu
|
Exec=dolphin-emu
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Type=Application
|
Type=Application
|
||||||
Categories=Game;Emulator;
|
Categories=Game;Emulator;
|
||||||
|
|
|
@ -8,10 +8,6 @@ rename-icon: dolphin-emu
|
||||||
finish-args:
|
finish-args:
|
||||||
- --device=all
|
- --device=all
|
||||||
- --socket=pulseaudio
|
- --socket=pulseaudio
|
||||||
# dolphin doesn't work on wayland (only the ui does), if a user were to set
|
|
||||||
# this env variable globally to wayland then games wouldn't work.
|
|
||||||
# we overwrite the setting and force xcb to prevent this from happening.
|
|
||||||
- --env=QT_QPA_PLATFORM=xcb
|
|
||||||
- --socket=x11
|
- --socket=x11
|
||||||
- --share=network
|
- --share=network
|
||||||
- --share=ipc
|
- --share=ipc
|
||||||
|
|
|
@ -148,6 +148,14 @@ int main(int argc, char* argv[])
|
||||||
#if (QT_VERSION >= QT_VERSION_CHECK(6, 3, 0))
|
#if (QT_VERSION >= QT_VERSION_CHECK(6, 3, 0))
|
||||||
setenv("QT_XCB_NO_XI2", "1", true);
|
setenv("QT_XCB_NO_XI2", "1", true);
|
||||||
#endif
|
#endif
|
||||||
|
// Dolphin currently doesn't work on Wayland (Only the UI does, games do not launch.) This makes
|
||||||
|
// XCB the default and forces it on if the platform is specified to be wayland, to prevent this
|
||||||
|
// from happening.
|
||||||
|
// For more information: https://bugs.dolphin-emu.org/issues/11807
|
||||||
|
const char* current_qt_platform = getenv("QT_QPA_PLATFORM");
|
||||||
|
const bool replace_qt_platform =
|
||||||
|
(current_qt_platform && strcasecmp(current_qt_platform, "wayland") == 0);
|
||||||
|
setenv("QT_QPA_PLATFORM", "xcb", replace_qt_platform);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QCoreApplication::setOrganizationName(QStringLiteral("Dolphin Emulator"));
|
QCoreApplication::setOrganizationName(QStringLiteral("Dolphin Emulator"));
|
||||||
|
|
Loading…
Add table
Reference in a new issue