Commit graph

665 commits

Author SHA1 Message Date
lat9nq
568a0ac397 yuzu: Rename check_vulkan to startup_checks 2022-07-10 12:34:34 -04:00
Morph
0eeee431dc main: Eliminate variable shadowing 2022-06-14 14:09:51 -04:00
Morph
b3d6f7bdd8 yuzu: Eliminate variable shadowing 2022-06-13 18:19:22 -04:00
Morph
a0407a8e64
Merge pull request #8446 from liamwhite/cmd-gdb
core/debugger: support operation in yuzu-cmd
2022-06-13 14:38:37 -04:00
Mai M
b94739cfa7
Merge pull request #8353 from Docteh/msvc_report_runtime
log the MSVC runtime version when running on MSVC build
2022-06-11 13:21:23 -04:00
Mai M
89e00c442d
Merge pull request #8427 from Docteh/deprecate_qdesktop
deprecate usage of QDesktopWidget for going fullscreen
2022-06-11 13:20:36 -04:00
bunnei
ae83d5c6d3
Merge pull request #8393 from lat9nq/default-vulkan
general: Set renderer_backend's default to Vulkan
2022-06-11 00:06:59 -07:00
Kyle Kienapfel
3370546a7a log the MSVC runtime version when running on MSVC build
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-10 20:37:47 -07:00
Mai M
20576ebb43
Merge pull request #8405 from Docteh/dock_undock
ui: Status bars dock button becomes DOCKED/HANDHELD button
2022-06-10 23:11:29 -04:00
Mai M
266e086706
Merge pull request #8318 from Docteh/cmake-qt56-entry
Update some files with Qt 5.15.2 best practices in mind
2022-06-10 23:09:49 -04:00
Liam
1f0fee33ed core/debugger: fix a number of shutdown deadlocks 2022-06-10 09:17:12 -04:00
Kyle Kienapfel
941b663352 deprecate usage of QDesktopWidget for going fullscreen
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-05 20:18:27 -07:00
bunnei
708e5b027f
Merge pull request #8367 from Docteh/say_win11
Logging: Report Post Windows 10 2004 versions, like Windows 11
2022-06-05 18:44:48 -07:00
Kyle Kienapfel
054732210e ui: Status bars dock button becomes dock/undock button
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-01 17:22:53 -07:00
bunnei
af418eb666
Merge pull request #8400 from Docteh/fullscreen_glitch
fix UI opening fullscreen after certain crashes
2022-06-01 10:26:24 -07:00
Kyle Kienapfel
36df3ce97e fix UI opening fullscreen after certain crashes
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-05-31 21:24:31 -07:00
Liam
fb4b3c127f core/debugger: Implement new GDB stub debugger 2022-06-01 00:01:25 -04:00
lat9nq
422525e3fb main: Insert warning text on broken Vulkan
Co-authored-by: Schplee <24275329+Schplee@users.noreply.github.com>
2022-05-30 10:58:19 -04:00
lat9nq
2dafb27055 main: Save config on broken Vulkan detect
Prevents possible issues if someone were to open yuzu repeatedly over
and over again.
2022-05-30 10:58:19 -04:00
lat9nq
500b01076e yuzu-qt: Make has_broken_vulkan only for crashes
Being able to catch and handle a Vulkan exception is not what this is
for.
2022-05-30 10:58:18 -04:00
lat9nq
f22867efc5 yuzu-qt: Attempt to workaround broken Vulkan installations
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-30 10:57:59 -04:00
Kyle K
75bf2c20eb Update some files with Qt 5.15.2 best practices in mind
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-29 09:21:52 -07:00
Kyle K
017a18f42e Logging: Report Post Windows 10 2004 versions, like Windows 11
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
2022-05-28 20:48:19 -07:00
lat9nq
3ca3254b9f main: Use Common::U16StringFromBuffer
See ffd3afcf2
2022-05-15 18:09:19 -04:00
Narr the Reg
4de43e4d4a hotkeys: Trigger actions on a separate thread 2022-04-23 14:24:28 -05:00
Purple
9dfadc8b30
Prevent the mouse cursor from leaving the window when mouse panning is enabled 2022-04-19 16:22:51 -04:00
Kyle K
f6695814be ui: Touching QPalette::Text broke dark -> light UI. don't do 2022-04-12 12:50:56 -07:00
Kyle K
38dd6dc190 ui: Set Link Color when setting theme
Long story short, QT doesn't allow the link colors to be set via their stylesheets.

There are two ways to work with this, specify the color manually for every link (See the About dialog) The other way is to change the default palette.

IsDarkTheme is copy/pasted from src/yuzu/debugger/wait_tree.cpp
2022-04-11 00:00:29 -07:00
german77
90c846d1ad yuzu: Only override fullscreen setting if gamepath or argument is provided 2022-03-28 18:52:27 -06:00
bunnei
c50f2bd4f6
Merge pull request #8035 from lat9nq/disable-web-applet
yuzu qt: Disable the web applet by default
2022-03-23 21:08:20 -07:00
Morph
e05e6853fa applets: Rename Mii to MiiEdit 2022-03-21 23:57:31 -04:00
ameerj
936829e873 yuzu: Reduce unused includes 2022-03-20 02:25:09 -04:00
lat9nq
db637b5a4c yuzu qt: Save disable_web_applet setting
The web applet causes multiple issues with the rest of the application.
Disable it by default and add a debug option to re-enable it until a
proper solution can be found.
2022-03-17 19:20:15 -04:00
lat9nq
7760777c06 main: Update Disable Web Applet warning 2022-03-17 18:14:27 -04:00
lat9nq
1cbe23ed7b yuzu: Move disable_web_applet to UISettings 2022-03-17 16:55:30 -04:00
bunnei
f55af65e82
Merge pull request #7964 from german77/miiii
applet: mii: Simple implementation of mii applet
2022-03-16 21:37:53 -07:00
Wunkolo
d248c1203e cpu_detect: Add additional x86 flags and telemetry
Adds detection of additional CPU flags to cpu_detect and additions to telemetry output.

This is not exhaustive but guided by features that [dynarmic utilizes](bcfe377aaa/src/dynarmic/backend/x64/host_feature.h (L12-L33)) as well as features that are currently utilized but not reported to telemetry(invariant_tsc). This is intended to guide future optimizations.

AVX512 in particular is broken up into its individual subsets and some other processor features such as [sha](https://en.wikipedia.org/wiki/Intel_SHA_extensions) and [gfni](https://en.wikipedia.org/wiki/AVX-512#GFNI) are added to have some forward-facing data-points.

What used to be a single `CPU_Extension_x64_AVX512` telemetry field
is also broken up into individual `CPU_Extension_x64_AVX512{F,VL,CD,...}` fields.
2022-03-11 10:27:00 -08:00
german77
03d671fabc applet: mii: Simple implementation of mii applet 2022-02-28 18:53:41 -06:00
german77
b504df9d02 yuzu: Remove amiibos on drag and drop 2022-02-20 14:28:21 -06:00
bunnei
2984695265
Merge pull request #7867 from german77/amiibo
nfp: Improve amiibo support
2022-02-19 00:57:47 -07:00
bunnei
ca9da569ce
Merge pull request #7852 from Morph1984/new-uuid
common: Revise and fix the UUID implementation
2022-02-10 21:52:13 -07:00
german77
e35c2fd5d0 nfp: Address compiler issues 2022-02-08 18:52:44 -06:00
german77
41b65d38fa yuzu: Allow to open and remove the amiibo 2022-02-08 10:08:04 -06:00
german77
ab93b4c66d yuzu: Mute audio when in background 2022-02-06 20:46:58 -06:00
german77
49eb78497b yuzu: Add docked, GPU accuracy and adapting filter hotkeys 2022-02-06 20:46:58 -06:00
Morph
dfe11d72e3 profile: Migrate to the new UUID implementation 2022-02-05 13:56:21 -05:00
Morph
edbfbf2f2f main: Always remove the frameless window flag when restoring UI state
For unknown reasons, this flag may persist after the application has been closed.
Removing this flag when restoring the UI state ensures that a frameless window will not be shown on startup.
2022-02-03 23:12:49 -05:00
Narr the Reg
330b31ae2e yuzu: Disable auto repeat on hotkeys again 2022-02-01 21:00:37 -06:00
german77
c8b3a12856 yuzu: Add volume up/down hotkeys 2022-01-15 20:28:37 -06:00
german77
419f427a01 yuzu: Remove speed limit hotkeys 2022-01-15 13:44:45 -06:00
bunnei
f1aa7ff893
Merge pull request #7690 from Morph1984/increase-file-limit-win
yuzu: main: Increase the open file limit on Windows to 8192
2022-01-13 21:25:06 -08:00
Morph
36da4d1121 yuzu: main: Increase the open file limit on Windows to 8192
This is a temporary solution for now to accommodate for mods containing more than 4096 files.
2022-01-09 21:33:58 -05:00
german77
72c8a94a6c yuzu: Add controller hotkeys 2022-01-06 21:26:05 -06:00
german77
a9ad983c13 yuzu: Fix UI elements not updating correctly 2022-01-01 17:57:43 -06:00
liushuyu
14fc1bec17
main: reword inhibit reason 2021-12-22 02:33:01 -07:00
liushuyu
fa7abafa5f main: fix wake lock in Flatpak ...
... by using the XDP system
2021-12-22 02:27:09 -07:00
ameerj
3074b2eb93 main: Refactor to reduce code duplication in ShowFullscreen() 2021-12-19 02:09:37 -05:00
ameerj
39bb6851e4 main: Make render window borderless fullscreen toggle on the monitor it resides in
Toggling borderless fullscreen on the separate render window made it fullscreen on the monitor which the main yuzu window resided in.

This change allows the render window to go fullscreen on the monitor it resides in, independent of the main window location.
2021-12-19 02:08:48 -05:00
bunnei
e242f16986
Merge pull request #7532 from goldenx86/patch-3
Update video core popup
2021-12-15 22:32:27 -08:00
Matías Locatti
333ccf23f8
Suggestions from CrusadingNinja 2021-12-16 02:57:45 -03:00
Matías Locatti
1cdddd17d2
Changed link 2021-12-16 02:40:30 -03:00
Wunkolo
44b3abdfc0 yuzu/main: Fix host memory byte units. GB to GiB
I have `134850146304` bytes of ram and Yuzu was saying that I had `125.59 GB`
of ram. But `125.59` is actually the amount of gi**bi**bytes I have. In
gi**ga**bytes I would have `134.9`.

Additionally, I changed the `1024 / 1024 / 1024` here into the `_GiB`
user-literals that I added a while ago(#6519).

https://www.wolframalpha.com/input/?i=134850146304+bytes
2021-12-14 23:57:33 -08:00
Mai M
5b2cb22a04
Merge pull request #7506 from heinermann/focus_crash
Fixed #7502
2021-12-07 18:28:16 -05:00
Matías Locatti
60bdedc7dd main: Update video core popup
Old version had formatting issues, and I want to provide an answer to the most common reason this pops up in the first place, outdated drivers.
2021-12-06 20:35:07 -05:00
Adam Heinermann
7220056974 Fixed #7502 2021-12-04 23:22:39 -08:00
german77
7fe455e42e core/hid: Ensure only valid npad are connected 2021-12-04 23:20:18 -06:00
german77
5ba7b11ba4 yuzu: Implement basic controller navigation 2021-12-02 15:17:44 -06:00
Fernando S
564f105277
Merge pull request #7255 from german77/kraken
Project Kraken: Input rewrite
2021-11-27 11:52:08 +01:00
german77
182cd9004f config: Remove vibration configuration 2021-11-26 19:31:04 -06:00
bunnei
06ad463ec8
Merge pull request #7330 from MightyCreak/simplify-theme-selection
Replace "Light" theme by "Default"
2021-11-25 01:52:48 -08:00
german77
e64ee99f00 yuzu: Fix TAS from rebase 2021-11-24 20:30:29 -06:00
german77
e7eee36d52 service/hid: Remove includes of core.h and settings.h 2021-11-24 20:30:27 -06:00
german77
d14e74132c settings: Fix controller preview not displaying the correct controller 2021-11-24 20:30:27 -06:00
german77
5d0f3540c4 core/hid: Rename NpadType to NpadStyleIndex 2021-11-24 20:30:27 -06:00
german77
77fa4d4bf6 second commit lion review 2021-11-24 20:30:26 -06:00
german77
61d9eb9f69 input_common: Revert deleted TAS functions 2021-11-24 20:30:26 -06:00
german77
85052b8662 service/hid: Fix gesture input 2021-11-24 20:30:25 -06:00
german77
af55dd1935 configuration: Migrate controller settings to emulated controller 2021-11-24 20:30:25 -06:00
german77
e0da5c1bbc kraken: Fix errors from rebase and format files 2021-11-24 20:30:24 -06:00
german77
967cca10ff core: Register HID 2021-11-24 20:30:23 -06:00
german77
737d305f63 yuzu: Use new input on main and bootmanager 2021-11-24 20:30:23 -06:00
german77
5a785ed794 input_common: Rewrite keyboard 2021-11-24 20:30:22 -06:00
Adam Heinermann
f078d3d212
Refactor menu states and shortcuts in GMainWindow. (#7419)
Refactor menu states and shortcuts in GMainWindow.

- Removed "Start", since it was always disabled unless it was "Continue"
which has now been moved to "Pause".
- Allow hotkeys to be used while in fullscreen.
- Removed the load amiibo hotkey.
2021-11-24 21:27:25 -05:00
Adam Heinermann
097de2febc const fixes 2021-11-21 18:07:37 -08:00
Adam Heinermann
b7a938e817 Apply clang format 2021-11-21 18:02:08 -08:00
Adam Heinermann
f90d980837 Added TAS controls to the menu under Tools 2021-11-21 17:28:47 -08:00
bunnei
b44fbf6cdd
Merge pull request #7369 from Morph1984/amd-fsr-statusbar
main: Shorten AMD FSR status bar text
2021-11-19 01:20:27 -08:00
bunnei
a69813948f
Merge pull request #7342 from goldenx86/patch-3
Replace keys error pop up
2021-11-19 01:17:18 -08:00
Morph
bc5ed1aa1b main: Fix default AA name
By default, no AA is applied, not FXAA
2021-11-18 23:22:32 -05:00
Morph
c76163b611 main: Shorten AMD FSR status bar text
AMD'S FIDELITYFX SR -> FSR
2021-11-18 23:17:16 -05:00
bunnei
a100f5d5d4
Merge pull request #7353 from v1993/no-more-epilepsy
Prevent window flickering when holding Esc
2021-11-18 11:26:28 -08:00
Valeri
f7e0a37753
Prevent window flickering when holding Esc
Reported on discord by Levlight. Don't try to exit fullscreen if it's already off.
2021-11-17 18:07:47 +03:00
Fernando Sahmkow
a96c9c803b Yuzu UI: Add button for Anti Alias 2021-11-16 22:11:32 +01:00
FernandoS27
2eff80b47f QtGUI: Add buttton to toggle the filter. 2021-11-16 22:11:32 +01:00
ameerj
80f8d4989e bootmanager: Fix screenshot resolution factor usage
Fixes screenshots at non integer scaling
2021-11-16 22:11:30 +01:00
Morph
138d9d7eff main: Add resolution scale label in the status bar
Shows the resolution scale as "Scale: {}x" in the status bar, where {} is a floating point value representing the current resolution scaling factor.
2021-11-16 22:11:28 +01:00
Matías Locatti
ffb79afd29
Replace keys error pop up
Fight me.
2021-11-16 03:53:28 -03:00
Romain Failliot
2e5866147e Replace "Light" theme by "Default"
This reflects the current behavior: Light = System default. If your
system is set to dark theme, then Light = Dark, which is a bit confusing
for the end user.

In this PR, I propose to change "Light" with "Default". This way, the
user has "Default" and "Default Colorful", which will apply the system
theme. Now that the Flatpak respects the system theme, I think this
makes much more sense.

I also simplified the theme update. Before the code was branching
between the default theme and the others, but I think we can have
something simpler by forcing the default theme if no theme is defined in
the settings, or if the selected theme doesn't exist. And if there's an
error, tell the theme name in the error message.
2021-11-14 08:52:55 -05:00
bunnei
0eacc362dd
Merge pull request #7272 from behunin/the-courteous-logger
Logging: Impl refactor
2021-11-13 00:03:54 -08:00
Morph
1af499c15b applets/swkbd: Skip text checking if the text has been confirmed
Confirm means that the text has already been checked by the application to be correct, but is asking the user for confirmation.
The confirmation text itself seems to be corrupted though, this needs to be investigated.

Fixes the software keyboard in Famicom Detective Club: The Missing Heir
2021-11-08 13:05:50 -05:00