Commit graph

886 commits

Author SHA1 Message Date
Kelebek1
c92bcde27e Allow audio volume up to 200% 2022-08-12 16:57:29 +01:00
liamwhite
e0dbc34706 Merge pull request #8735 from djrobx/add_vsync
Make vsync setting work for Vulkan
2022-08-09 20:43:55 -04:00
DJRobX
705c6c16b9 Make vsync setting work for Vulkan 2022-08-07 20:57:47 -07:00
Kyle Kienapfel
d3b46910c1 Translate english plurals
Turns out that for Qt to properly handle plurals in English a
translation needs to be provided, otherwise the user is left with
messages such as "Building: 2 shader(s)"

Plurals for other all other languages are handled on transifex.
I wrote the README.md to just refer to it as a translation
collaboration site just in case we ever switch.

These translations being out of date won't pose any technical problems
so I believe it is fine to handle them manually on a "best effort"
basis.

The files are generated into the source directory so that the
relative filenames are correct. The generated file is added to
.gitignore
2022-07-30 01:40:33 -07:00
Andrea Pappacoda
6a2efdda2f chore: make yuzu REUSE compliant
[REUSE] is a specification that aims at making file copyright
information consistent, so that it can be both human and machine
readable. It basically requires that all files have a header containing
copyright and licensing information. When this isn't possible, like
when dealing with binary assets, generated files or embedded third-party
dependencies, it is permitted to insert copyright information in the
`.reuse/dep5` file.

Oh, and it also requires that all the licenses used in the project are
present in the `LICENSES` folder, that's why the diff is so huge.
This can be done automatically with `reuse download --all`.

The `reuse` tool also contains a handy subcommand that analyzes the
project and tells whether or not the project is (still) compliant,
`reuse lint`.

Following REUSE has a few advantages over the current approach:

- Copyright information is easy to access for users / downstream
- Files like `dist/license.md` do not need to exist anymore, as
  `.reuse/dep5` is used instead
- `reuse lint` makes it easy to ensure that copyright information of
  files like binary assets / images is always accurate and up to date

To add copyright information of files that didn't have it I looked up
who committed what and when, for each file. As yuzu contributors do not
have to sign a CLA or similar I couldn't assume that copyright ownership
was of the "yuzu Emulator Project", so I used the name and/or email of
the commit author instead.

[REUSE]: https://reuse.software

Follow-up to b2eb103829
2022-07-27 12:53:49 +02:00
FearlessTobi
846c50dd42 Address first part of review comments 2022-07-25 21:59:30 +02:00
FearlessTobi
60008b680e yuzu: Add ui files for multiplayer rooms 2022-07-25 21:59:28 +02:00
bunnei
e2647971f8 Merge pull request #8564 from lat9nq/dinner-fork
yuzu: Streamline broken Vulkan handling
2022-07-25 12:12:41 -07:00
Narr the Reg
a08b8f224b yuzu: Add webcam support and rebase to latest master 2022-07-23 19:40:25 -05:00
german77
1d0b3ee30b yuzu: Hook qt camera to camera driver 2022-07-23 19:40:21 -05:00
Kelebek1
be1f5f1d9f Project Andio 2022-07-22 01:11:32 +01:00
Matías Locatti
2dce3ca91b Update configure_input.ui 2022-07-19 16:20:16 -03:00
bunnei
e42a6ad7d9 yuzu: settings: Remove framerate cap and merge unlocked framerate setting.
- These were all somewhat redundant.
2022-07-16 23:11:39 -07:00
merry
4091cca405 common/setting: Make ranged a property of the type
- Avoids new GCC 12 warnings when Type is of form std::optional<T>
- Makes more sense this way, because ranged is not a property which would change over time
2022-07-15 18:45:55 +01:00
lat9nq
27848d6052 yuzu: Simplify broken Vulkan handling 2022-07-10 16:52:00 -04:00
lat9nq
6e65bb6f83 settings: Consolidate RangedSetting's with regular ones
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-30 12:39:48 -04:00
Morph
050426b55a configure_ringcon: Eliminate variable shadowing 2022-06-14 08:30:09 -04:00
Morph
a884ca9b8d configure_touch_from_button: Eliminate variable shadowing 2022-06-14 08:30:09 -04:00
Morph
9eadb6286d configure_per_game: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph
e1e6c62dd9 configure_input_player: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph
30dc4a1d78 configure_dialog: Eliminate variable shadowing 2022-06-14 08:30:08 -04:00
Morph
911eae6283 yuzu: Eliminate variable shadowing 2022-06-13 18:19:22 -04:00
bunnei
d52485dd46 Merge pull request #8393 from lat9nq/default-vulkan
general: Set renderer_backend's default to Vulkan
2022-06-11 00:06:59 -07:00
Mai M
56a0a3082d Merge pull request #8333 from Docteh/translate_hotkeys
UI: Translate hotkey labels in configuration
2022-06-10 23:10:28 -04:00
Mai M
05ff801f8c 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
lat9nq
d801be7c1a configure_graphics: Remove unused include 2022-06-04 04:18:21 -04:00
Liam
2ee161a0bf core/debugger: Implement new GDB stub debugger 2022-06-01 00:01:25 -04:00
lat9nq
b527556c38 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
7506b68555 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
0c16589562 motion touch ui: move remaining connection out of .ui file
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-29 18:37:38 -07:00
Kyle K
50ea1827aa 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
cf791911df UI: Translate hotkey labels in configuration
Another request from GillianMC.

The translated strings have been placed in a separate "Hotkeys" context as an alternative
 to having to add the tr function to the Config class, or adding them to ConfigureHotkeys
context which is quite long. The English strings get attached to the items in the Action
column as "data", and are used for RetranslateUI and saving the hotkey configuration.
2022-05-18 22:05:19 -07:00
Fernando Sahmkow
df5dd2fd82 VideoCore: Add option to dump the macros.
Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2022-05-08 21:37:34 -04:00
bunnei
08fc849458 Merge pull request #8272 from german77/stick_range
yuzu: config: Improve analog stick mapping
2022-05-03 14:36:39 -07:00
Kyle K
8b270cfd42 ui: retranslate the network tab
Looks like it was just missed when it was added, as currently the Network Tab only has one item
RetranslateUI is used more commonly throughout the project
2022-05-01 21:39:39 -07:00
Kyle K
5f157b76c7 ui: let system locale control format of Custom RTC
The Custom RTC widget is under the influence of the computers System Locale.
The format strings are not necessarily related. As a small example, setting the Windows Language to Dansk, and then trying to use yuzu in English the requested AM/PM indicator is simply not shown

The display format for the Custom RTC field needs to be removed from src/yuzu/configuration/configure_system.ui

modifying the display format needs to be moved to src/yuzu/configuration/configure_system.cpp
2022-04-30 17:29:49 -07:00
Kyle K
0a30e78bbb Changes to language order in General -> UI -> Interface Language
Language List is from Dolphin, specifically https://github.com/dolphin-emu/dolphin/blob/master/Source/Core/DolphinQt/Settings/InterfacePane.cpp#L30

Any languages that are compiled in, but not in the list will be at the end.
2022-04-27 02:33:16 -07:00
Narr the Reg
ec8fa22768 yuzu: Config allow to delete single axis directions when buttons are mapped to a stick 2022-04-26 19:03:54 -05:00
Narr the Reg
d0bdbb9afb yuzu: config: Set default range to 95% 2022-04-26 19:03:54 -05:00
Morph
2b87305d31 general: Convert source file copyright comments over to SPDX
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
bunnei
e72179e9fd Merge pull request #7978 from german77/sideway
input_common: Map sticks correctly when mapped sideways
2022-04-21 22:21:59 -07:00
Kyle K
4d92678a6a ui: translate hat directions
QObject ends up being its own translation context. But this works in our
favor. GetButtonName and GetDirectionName will share one translation the
directions such as "Left" "Right" and the ConfigureInputPlayer context
will contain translations that show up in the form, in places that aren't
those buttons.
2022-04-19 04:24:39 -07:00
Mai M
094cc7486b Merge pull request #8204 from Docteh/translate_gameslist
ui: Fix Game Compatibility list translations
2022-04-17 05:45:30 -04:00
Kyle K
2920554c20 ui: Fix Game Compatibility list translations
Reported by GillianMC on Discord. Looks to be a small quirk in the QT API.

setText(QObject::tr(status.text));
bringing up QObject breaks the link with the GameListItemCompat
2022-04-16 16:30:45 -07:00
Narr the Reg
d70524b074 yuzu: Call ignore event after ensuring it's initialized 2022-04-16 00:49:26 -05:00
german77
25c46f82c5 yuzu: Add custom ringcon configuration 2022-04-16 00:49:26 -05:00
bunnei
18017f7adf Merge pull request #8089 from merryhime/paranoia
configuration: Add Paranoid CPU accuracy level
2022-04-04 11:07:38 -07:00
Morph
e6ccc57b62 Merge pull request #8141 from merryhime/configure-hotkeys-columns
configure_hotkeys: Make first column stretch and not last column
2022-04-02 15:35:31 -04:00
merry
9b28edea4f configure_per_game_addons: Set tree view minimum section size to 150px 2022-04-02 17:19:25 +01:00
merry
d20d8b9214 configure_hotkeys: Make first column stretch and not last column
Also configure minimum width of columns to be 150px.
2022-04-02 17:17:13 +01:00