summaryrefslogtreecommitdiff
path: root/src/yuzu
AgeCommit message (Collapse)Author
2022-07-10yuzu: Simplify broken Vulkan handlinglat9nq
2022-07-10yuzu: Check Vulkan on startup with a childlat9nq
2022-07-10yuzu: Rename check_vulkan to startup_checkslat9nq
2022-07-07Merge pull request #8522 from lat9nq/consolidate-settingsMorph
settings: Consolidate RangedSetting's with regular ones
2022-07-05qt_web_browser: Fix button inputs with QtWebEngineMorph
Button inputs were broken as button was assumed to be the bit position of NpadButton prior to the input rewrite. Since this was changed to use NpadButton directly, we should count the number of trailing zeros to determine the bit position.
2022-07-05Merge pull request #8477 from Docteh/less_globalMorph
tweak API usage in qt_web_browser.cpp
2022-06-30settings: Consolidate RangedSetting's with regular oneslat9nq
The latest git version of GCC has issues with my diamond inheritance shenanigans. Since that's now two compilers that don't like it I thought it'd be best to just axe all of it and just have the two templates like before. This rolls the features of BasicRangedSetting into BasicSetting, and likewise RangedSetting into Setting. It also renames them from BasicSetting and Setting to Setting and SwitchableSetting respectively. Now longer name corresponds to more complex thing.
2022-06-26core: Replace all instances of ResultCode with Resultgerman77
2022-06-21tweak API usage in qt_web_browser.cppKyle Kienapfel
In testing future versions of Qt I forgot to compile with `YUZU_USE_QT_WEB_ENGINE`, so with that flag enabled there are two issues that cropped up. 1. yuzu currently uses setRequestInterceptor, added in Qt 5.6, deprecated in 5.13 with this explaination at https://doc.qt.io/qt-5/qwebengineprofile-obsolete.html Interceptors installed with this method will call QWebEngineUrlRequestInterceptor::interceptRequest on the I/O thread. Therefore the user has to provide thread-safe interaction with the other user classes. For a duration of this call ui thread is blocked. Use setUrlRequestInterceptor instead. 2. QWebEngineSettings::globalSettings() pointer no longer exists in later versions of Qt From what I can tell, QtNXWebEngineView doesn't need to set these globally, when we make changes to settings(), QtWebEngineView::page() creates the page object if it doesn't exist yet. I don't see the page object being destroyed or otherwise replaced, except via destroying the QtNXWebEngineView object. The globalSettings() make sense if Pages or Views objects are being created outside of yuzu's control. To test this I've compared what BrowseNX and Odyssey's Action guide do in mainline 1049 and this PR. For now we're going to go up the chain to QWebEngineProfile::defaultProfile()->settings()
2022-06-16core: fix initialization in single core, sync GPU modeLiam
2022-06-14Merge pull request #8383 from Morph1984/shadow-of-the-pastMai
yuzu: Make variable shadowing a compile-time error
2022-06-14main: Eliminate variable shadowingMorph
2022-06-14wait_tree: Eliminate variable shadowingMorph
2022-06-14configure_ringcon: Eliminate variable shadowingMorph
2022-06-14configure_touch_from_button: Eliminate variable shadowingMorph
2022-06-14configure_per_game: Eliminate variable shadowingMorph
2022-06-14configure_input_player: Eliminate variable shadowingMorph
2022-06-14configure_dialog: Eliminate variable shadowingMorph
2022-06-14bootmanager: Eliminate variable shadowingMorph
2022-06-14game_list: Eliminate variable shadowingMorph
2022-06-13common: Change semantics of UNREACHABLE to unconditionally crashLiam
2022-06-13yuzu: Eliminate variable shadowingMorph
2022-06-13Merge pull request #8446 from liamwhite/cmd-gdbMorph
core/debugger: support operation in yuzu-cmd
2022-06-11Merge pull request #8353 from Docteh/msvc_report_runtimeMai M
log the MSVC runtime version when running on MSVC build
2022-06-11Merge pull request #8427 from Docteh/deprecate_qdesktopMai M
deprecate usage of QDesktopWidget for going fullscreen
2022-06-11Merge pull request #8449 from Docteh/translate_placeholderMai M
retranslate the game list placeholder
2022-06-11Merge pull request #8393 from lat9nq/default-vulkanbunnei
general: Set renderer_backend's default to Vulkan
2022-06-10log the MSVC runtime version when running on MSVC buildKyle Kienapfel
This might be useful information, not 100% sure. [ 0.958068] Frontend <Info> yuzu\main.cpp:GMainWindow:275: yuzu Version: yuzu Development Build | master-0b9ef3c0b-dirty [ 0.958095] Frontend <Info> yuzu\main.cpp:LogRuntimes:220: MSVC Compiler: 1931 Runtime: 14.32.31326.0
2022-06-10UI: retranslate the game list placeholderKyle Kienapfel
This is the "Double-click to add a new folder to the game list" message that shows up when users first launch yuzu and is most likely never seen again. Previously this message was not re-translated.
2022-06-10Merge pull request #8405 from Docteh/dock_undockMai M
ui: Status bars dock button becomes DOCKED/HANDHELD button
2022-06-10Merge pull request #8333 from Docteh/translate_hotkeysMai M
UI: Translate hotkey labels in configuration
2022-06-10Merge pull request #8318 from Docteh/cmake-qt56-entryMai M
Update some files with Qt 5.15.2 best practices in mind
2022-06-10core/debugger: fix a number of shutdown deadlocksLiam
2022-06-05deprecate usage of QDesktopWidget for going fullscreenKyle Kienapfel
Idea works as follows, while going fullscreen we compare the current window geometry with available screens and ask for an intersection rectangle, we go fullscreen where most of the window is located GuessCurrentScreen could also potentially be used to see which screen the window is on for dynamic DPI handling
2022-06-05Merge pull request #8367 from Docteh/say_win11bunnei
Logging: Report Post Windows 10 2004 versions, like Windows 11
2022-06-04configure_graphics: Remove unused includelat9nq
2022-06-01Merge pull request #8402 from liamwhite/better-stepMorph
core/debugger: Improved stepping mechanism and misc fixes
2022-06-01ui: Status bars dock button becomes dock/undock buttonKyle Kienapfel
For people not used to the Yuzu UI it's not always clear if the emulated console is docked or not. The other items update their text when clicked, this PR brings the DOCK button in line with this. DOCK -> DOCKED or HANDHELD
2022-06-01Merge pull request #8400 from Docteh/fullscreen_glitchbunnei
fix UI opening fullscreen after certain crashes
2022-06-01core/debugger: Improved stepping mechanism and misc fixesLiam
2022-05-31fix UI opening fullscreen after certain crashesKyle Kienapfel
Sometimes when yuzu crashes, it restarts with the games list in fullscreen, which would be fine, except there isn't an easy way to exit this. It also doesn't occur often enough for qt-config.ini files to be in good supply. UILayout\geometry value in qt-config.ini is the culprit, at least for the one provided. Proposed fix is to simply check isFullScreen when yuzu is starting up, and take it out of full screen immediately
2022-06-01core/debugger: Implement new GDB stub debuggerLiam
2022-05-30main: Insert warning text on broken Vulkanlat9nq
Co-authored-by: Schplee <24275329+Schplee@users.noreply.github.com>
2022-05-30main: Save config on broken Vulkan detectlat9nq
Prevents possible issues if someone were to open yuzu repeatedly over and over again.
2022-05-30yuzu-qt: Make has_broken_vulkan only for crasheslat9nq
Being able to catch and handle a Vulkan exception is not what this is for.
2022-05-30yuzu-qt: Attempt to workaround broken Vulkan installationslat9nq
This does a few things in order to make the default setting Vulkan workable. - When yuzu boots, it just opens the Vulkan library. - If it works, all good and we continue with Vulkan as the default. - If something breaks, a new file in the config directory will be left behind (this is deleted normally). - If Vulkan is not working, has_broken_vulkan is set to true. - The first time this happens, a warning is displayed to notify the user. - This forces use of OpenGL, and Vulkan cannot be selected. - The Shader Backend selector is made accessible for use in custom configurations. - To disable has_broken_vulkan, the user needs to press a button in Graphics Configuration to manually run the Vulkan device enumeration.
2022-05-29motion touch ui: move remaining connection out of .ui fileKyle K
Two reasons for this: 1. Out of 7 connections, 6 are in ConfigureMotionTouch::ConnectEvents, this is the outlier. 2. Qt6 doesn't moc the connection properly
2022-05-29Update some files with Qt 5.15.2 best practices in mindKyle K
There was some discussion about updating to Qt6 and I figured I would work on some smaller parts. For Windows platform the WinMain function has moved from the Qt5::WinMain to a new one called Qt6::EntryPointPrivate Also Qt5 supports versionless CMake targets https://www.qt.io/blog/versionless-cmake-targets-qt-5.15 These other changes in this commit are to support Qt6, but in ways that don't mess with Qt5. src/yuzu/bootmanager.cpp: Qt6 complains about not being able to know to use QPoint or QPointF, picking QPoint src/yuzu/bootmanager.h: Qt6 prefers that QStringList.h be included rather than an empty class definition src/yuzu/configuration/configure_system.cpp: toULongLong intends to return unsigned 64 bit integer, but Settings::values.rng_seed is only 32 bits wide src/yuzu/game_list.cpp: Qt6 returns a different datatype for QStringList.length than Qt5, it used to be int, but in Qt6 its now qsizetype src/yuzu/loading_screen.cpp: Qt5's for QStyleOption.init say to switch to initFrom. The QStyleOption.init doesn't exist in Qt6 src/yuzu/main.cpp: Another QPointer and QStringList.size, lets standardize on size()
2022-05-29Merge pull request #8339 from Docteh/about_iconbunnei
about dialog: Fix yuzu icon
2022-05-28Logging: Report Post Windows 10 2004 versions, like Windows 11Kyle K
Qt5 and Qt6 don't really do a good job of reporting Windows versions past the 2004 version. Current: Windows 10 Version 2009 This Patch: Windows 10 Version 21H1 (Build 19043.1706) Also: Windows 11 Version 21H2 (Build 22000.675) Fixes: #8362