toast2903
043675bcc5
cmake: Reposition preprocessor switch comment
...
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21 10:56:55 -04:00
lat9nq
61239d5b12
configuration: Use enum index
2023-07-21 10:56:55 -04:00
lat9nq
7168d30a6e
settings: Give indices to enums
2023-07-21 10:56:55 -04:00
lat9nq
7f3b6edfef
cmake: Use standard preprocessor on MSVC
2023-07-21 10:56:55 -04:00
lat9nq
42c6056deb
settings_common: Remove unncessary enum spec
2023-07-21 10:56:55 -04:00
lat9nq
5c08176020
shared_translation: Deobfuscate auto time zone
2023-07-21 10:56:55 -04:00
lat9nq
8c4acf2ebb
settings_enums: Remove casting
...
Not sure how I missed this earlier, but these vectors can be constructed
using the type of the enum.
2023-07-21 10:56:55 -04:00
lat9nq
6dd818a105
settings_setting: Silence shadowing warnings
2023-07-21 10:56:55 -04:00
lat9nq
245c490e02
settings,configuration: Add a default suffix
2023-07-21 10:56:55 -04:00
lat9nq
380be385d1
configuration: Use paired settings
2023-07-21 10:56:55 -04:00
lat9nq
4ffbd95fa5
settings: Define paired settings
...
settings_common: Remove unused optional
2023-07-21 10:56:55 -04:00
lat9nq
5700f46f8f
shared_widget: Internalize component restoring
2023-07-21 10:56:55 -04:00
lat9nq
da00b5ab3c
configuration: Use specialization of settings
...
Reduces some ugliness in frontend code.
2023-07-21 10:56:55 -04:00
lat9nq
eb6fe05451
settings: Define specializations for settings
...
Suggests to a frontend how to represent each setting.
2023-07-21 10:56:55 -04:00
lat9nq
e45389c266
configuration: Use a builder to create widgets
...
This gets rid of some repeated code and sets us up to send more
information to the new widget.
2023-07-21 10:56:55 -04:00
lat9nq
d9699be7c2
shared_translation: Fix context usage
...
Currently unused, but I don't want to start headaches when someone
decides to use it the first time.
2023-07-21 10:56:55 -04:00
lat9nq
27df166abd
settings,translation: Fix time zone enum
...
Renames enum values to conform to naming convention.
2023-07-21 10:56:55 -04:00
lat9nq
ed14cd8748
settings,opengl,yuzu-qt: Fix AA, Filter maximums
...
The new enum macros don't support setting values directly.
For LastAA and LastFilter, this means we need a simpler approach to loop
around the toggle in the frontend...
2023-07-21 10:56:55 -04:00
lat9nq
f42ebb3405
settings_enums: More aggressively use macros
...
This lets us define an enum and all the textual representations
of its values in one swing. All for the price of some ugly macros.
2023-07-21 10:56:55 -04:00
lat9nq
2959a3efb4
config_shared: Remove storing the group from tab
2023-07-21 10:56:55 -04:00
lat9nq
c0e9075d6b
settings,uisettings: Remove leading underscore
2023-07-21 10:56:55 -04:00
lat9nq
0a5e03b492
configuration: Move speed_limit to core
2023-07-21 10:56:55 -04:00
lat9nq
e09f6ee530
settings: Move speed_limit to core
2023-07-21 10:56:55 -04:00
lat9nq
fa626cd665
android-config: Update enum labels
2023-07-21 10:56:55 -04:00
lat9nq
a7a32ab8a0
common,yuzu-qt: Avoid explicit instantiation on old clang
...
Clang versions < 15 have compile issues with explicit instantiation.
Disable it for these versions.
2023-07-21 10:56:55 -04:00
lat9nq
c2b577b364
settings_setting: Fix MSVC error
2023-07-21 10:56:55 -04:00
lat9nq
7aa6adde59
shared_widget: Correct spelling
2023-07-21 10:56:55 -04:00
lat9nq
ce08bcb4a1
(android)config: Clang format
2023-07-21 10:56:55 -04:00
lat9nq
859dff4c27
common,yuzu-qt: GCC warning silences
...
Fixes -Wshadow, -Wdeprecated, and catch by copy rather than by ref.
2023-07-21 10:56:55 -04:00
lat9nq
92941df1f6
configure_graphics: Simplify UpdateAPILayout
...
Reduces branching/swictch cases for simplicity/code size
2023-07-21 10:56:54 -04:00
lat9nq
aebab92dac
configure_graphcs: Fix setting shader/device in custom config
2023-07-21 10:56:54 -04:00
lat9nq
d1757cc55e
configuration: Use shorter constructor as needed
...
Reduces some confusion hopefully, since some parameters specified were not
specific to the setting in question.
2023-07-21 10:56:54 -04:00
lat9nq
84fd9f4726
shared_widget: Some documentation, add shorter constructor
...
The shorter constructor enables us to specify some options without needing to
specify the default values of multiplier which wasn't always appropriate and
could be confusing.
2023-07-21 10:56:54 -04:00
lat9nq
1ced5ad6e6
config: Remove unused functions
2023-07-21 10:56:54 -04:00
lat9nq
98eb39ee74
settings: Delete cpu_accuracy_first_time
...
Almost a 2 year old migration setting now
2023-07-21 10:56:54 -04:00
lat9nq
5fe7f2a054
shared_widget: Improve logging, use Setting::Ranged
2023-07-21 10:56:54 -04:00
lat9nq
8addc74f4f
settings: Document BasicSetting, add Ranged
2023-07-21 10:56:54 -04:00
lat9nq
8d4c466cde
settings: Move IsConfiguringGlobal to settings_common
2023-07-21 10:56:54 -04:00
lat9nq
4ca87e712d
configuration/shared: Clean up includes [IWYU]
2023-07-21 10:56:54 -04:00
lat9nq
05e54c094f
configure_graphics: Fix vulkan_device bug
2023-07-21 10:56:54 -04:00
lat9nq
e0d6f3435e
settings: Move some simple data to BasicSetting
...
Reduces the need for the compiler to duplicate this code, by about
100KB executable size.
2023-07-21 10:56:54 -04:00
lat9nq
9eee631154
settings_setting: Fix errors
...
ToString didn't have a constexpr if statement where needed.
Canonicalize missed an else, causing unreachable code error on MSVC.
2023-07-21 10:56:54 -04:00
lat9nq
5a2b7f951d
(ui,)settings: Use explicit instantiation
...
Reduces compile times a tad on clang.
2023-07-21 10:56:54 -04:00
lat9nq
5574e68b57
settings: Remove redundant false literals
2023-07-21 10:56:54 -04:00
lat9nq
620f642e5b
shared_widget: Avoid calling QWidgetPrivate::setVisible
...
This particular setVisible function is unnecessary.
It also has horrible runtime performance, so much that it consumed maybe
80% of the time used to create a widget.
2023-07-21 10:56:54 -04:00
lat9nq
9be2b39509
FIXME configuration: Avoid unnecessary allocations
...
ConfigurationShared::Widget needs to be created with a builder. This
would avoid some duplicated code.
2023-07-21 10:56:54 -04:00
lat9nq
604930b7eb
shared_widget: Add SPDX header
2023-07-21 10:56:54 -04:00
lat9nq
9d6de208a1
general: Add typeinfo where needed
...
Using typeid without including typeinfo first produces an ill-formed program.
2023-07-21 10:56:54 -04:00
lat9nq
9d3715a68c
settings_enums: Add const type where needed
2023-07-21 10:56:54 -04:00
lat9nq
442f0899a8
shared_widget: Use actionTriggered for user input signals
...
Clicking the slider without directly interacting with the slider handle would
change the value, but not trigger the restore button.
2023-07-21 10:56:54 -04:00
lat9nq
38683238a8
shared_translation: Populate combobox enums with macro
2023-07-21 10:56:54 -04:00
lat9nq
9ba1120d59
settings: yuzu is not capitalized why is it capitalized stop no bad
2023-07-21 10:56:54 -04:00
lat9nq
cb4cdcbaeb
configuration: Document odd widget cases
...
Explain why we need to do things differently at times, to serve as a
reference.
2023-07-21 10:56:54 -04:00
lat9nq
c97378bbf1
settings: Reorder
...
Groups graphics audio and system settings together in a way that
reflects the frontend. This also just conceptually groups them more
nicely than they were.
2023-07-21 10:56:54 -04:00
lat9nq
435aec0f7f
shared_translation: Add translation for use video framrate
2023-07-21 10:56:54 -04:00
lat9nq
cfa06e42e6
settings: Report all contained settings values
...
Also adds a couple characters that denotes the state of the setting.
M for modified, or not default.
C for custom, in context of per-game settings.
2023-07-21 10:56:54 -04:00
lat9nq
d344ecbee1
settings_enums: Cannonicalize settings names
...
Gives every option of the enums a string literal via a macro.
2023-07-21 10:56:54 -04:00
lat9nq
78f92086ca
settings,general: Rename non-confirming enums
2023-07-21 10:56:54 -04:00
lat9nq
d35281ddf3
configuration: Use IDs to sort holds
2023-07-21 10:56:07 -04:00
lat9nq
80669058c7
settings,general: Rename/reorder setting ids
2023-07-21 10:56:07 -04:00
lat9nq
e4bde3a1f5
shared_widget: Fix includes
2023-07-21 10:56:07 -04:00
lat9nq
4e18f8dbe9
shared_widget: Complete refactoring
...
Reduces code bloat a good bit by moving code specific to each sub widget
to their own functions.
2023-07-21 10:56:07 -04:00
lat9nq
1d7fb41d59
shared_widget: Refactor again
...
Starting with combobox
Putting code specific to the sub-widget in their own function.
2023-07-21 10:56:07 -04:00
lat9nq
0f8a902d8c
android-config: Adapt settings rework
2023-07-21 10:56:07 -04:00
lat9nq
7fa19e6d0a
c_per_game: Inform when settings might not be configurable
2023-07-21 10:56:07 -04:00
lat9nq
a8d8670b73
shared_translation: Fix pragma once
2023-07-21 10:56:07 -04:00
lat9nq
302903ef12
shared_translation: Add translation for AstcRecompression
2023-07-21 10:56:07 -04:00
lat9nq
71fe7e39b6
configure_system: Hide locale warn at start
2023-07-21 10:56:07 -04:00
lat9nq
c071d4d2ac
shared_widget: Force min width of 100 for restore button
...
Dark theme mandates a 100px minimum width for QAbstractButton, even
though this is not desired here.
2023-07-21 10:56:07 -04:00
lat9nq
a41f271600
configuration: Workaround for Windows Qt bug
...
Odd issue happens that dragging the cpu or system tabs in custom configs
would cause the window to take up the entire verticle space of the
screen.
2023-07-21 10:56:07 -04:00
lat9nq
51ecf3cb5d
shared_translation: Add missing tooltips
2023-07-21 10:56:07 -04:00
lat9nq
1eb6680ca3
settings: Make volume runtime-configurable
2023-07-21 10:56:07 -04:00
lat9nq
4119adeb56
configuration: Clean up includes a bit
2023-07-21 10:56:07 -04:00
lat9nq
6034e7508e
configuration_shared: Remove old custom config setup functions
2023-07-21 10:56:07 -04:00
lat9nq
5e60826357
configure_cpu: Generate UI
2023-07-21 10:56:07 -04:00
lat9nq
b212eb4d6f
configuration: Use a mapping of setting value to name
...
Makes comboboxes always correspond to the value of the setting they're
modifying.
2023-07-21 10:56:07 -04:00
lat9nq
7a56b4a224
settings, shared_widget: typo fixes
2023-07-21 10:56:07 -04:00
lat9nq
d39bfc646f
configure_audio: Implement ui generation
...
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
configure_audio: Implement ui generation
Needs a considerable amount of management specific to some of
the comoboboxes due to the audio engine configuration.
general: Partial audio config implmentation
settings: Make audio settings as enums
2023-07-21 10:56:07 -04:00
lat9nq
a61beb7123
settings: Split enums to new file
2023-07-21 10:56:07 -04:00
lat9nq
f4c058719d
shared_widget: Use a better icon
...
This one looks more relevant on Windows.
2023-07-21 10:56:07 -04:00
lat9nq
3b0da07854
shared_widget: Refactor helpers
...
Makes checkbox creation an option as opposed to a label.
2023-07-21 10:56:07 -04:00
lat9nq
e24838dabc
settings, uisettings: Initialize linkage counter
2023-07-21 10:56:07 -04:00
lat9nq
689efc9175
configure_system: Implement with for loop
2023-07-21 10:56:07 -04:00
lat9nq
1be23237cd
per_game: Remove general tab
...
It's empty.
2023-07-21 10:56:07 -04:00
lat9nq
05f745721e
shared_widget: Internalize extra setting configuration
2023-07-21 10:56:07 -04:00
lat9nq
0dcb7fe1ce
settings: Move runtime and save to parameters
...
These don't need to be whole new types.
2023-07-21 10:56:07 -04:00
lat9nq
318918c606
graphics: Set speed limit to spinbox
2023-07-21 10:56:07 -04:00
lat9nq
de25cd8462
shared_widget: Support checkbox + spinbox
2023-07-21 10:56:07 -04:00
lat9nq
61ecba9349
configure_debug: Reorganize
2023-07-21 10:56:07 -04:00
lat9nq
8df7fbe91b
configure_graphics: Reimplement bg_color
...
To specialized a setting to be worth adding to the shared_widget imo,
so add it roughly like before.
2023-07-21 10:56:07 -04:00
lat9nq
63ea626339
shared_widget: Make button creation static
2023-07-21 10:56:07 -04:00
lat9nq
f6091f33aa
configure_general: Hide reset button in custom configs
2023-07-21 10:56:07 -04:00
lat9nq
24c16f46ef
configure_general: Sort data
2023-07-21 10:56:07 -04:00
lat9nq
77feee49ae
configure_general: Generate UI using containers
...
This leaves per-game config's General tab empty?
2023-07-21 10:56:07 -04:00
lat9nq
46114bf316
shared_translation: Add UI widget translations
2023-07-21 10:56:07 -04:00
lat9nq
a9754694b7
shared_widget: Fix header
2023-07-21 10:56:07 -04:00
lat9nq
793d6c2a85
settings: Add UiGeneral class
2023-07-21 10:56:07 -04:00
lat9nq
e26dff434f
config: Don't merge the maps
...
Me shooting myself in the foot 3 days in advance.
2023-07-21 10:56:07 -04:00
lat9nq
5d84eebd84
configure_graphics: Remove redundant log
2023-07-21 10:56:07 -04:00
lat9nq
b17ab4d1d5
configuration: Move CreateWidget to a class
...
We were passing so many objects between the function and the caller that
it needed to be redesigned.
2023-07-21 10:56:07 -04:00
lat9nq
f9310ec1e8
configuration: Implement slider
2023-07-21 10:56:07 -04:00
lat9nq
e40f887355
configuration: Use buttons instead of highlights
...
Only for updated configs at the moment
2023-07-21 10:56:07 -04:00
lat9nq
d7e389b2f0
shared_translations: Re flow strings
2023-07-21 10:56:07 -04:00
lat9nq
bb015feefd
configure_graphics: More complete reimplementation
2023-07-21 10:56:07 -04:00
lat9nq
cc4dbb8c8c
settings: Define base renderer runtime modifiable settings
2023-07-21 10:56:07 -04:00
lat9nq
2760998b49
configuration_shared: Fix blank state hiding check box
2023-07-21 10:56:07 -04:00
lat9nq
11c4168adb
settings: Add anisotropy mode enum
2023-07-21 10:56:07 -04:00
lat9nq
eae5e1f6f3
shared_translation: Finish using int ids
2023-07-21 10:56:07 -04:00
lat9nq
825e8f0611
settings,uisettings: Add IDs to settings
2023-07-21 10:56:07 -04:00
lat9nq
d7ffd33ca0
configure_graphics: Partial runtime implementation
2023-07-21 10:56:07 -04:00
lat9nq
c7e5ead869
settings: Recategorize a bit
...
Will help with generating config UI later.
2023-07-21 10:56:07 -04:00
lat9nq
1b886c42ef
shared_translation: Add the rest of the settings
2023-07-21 10:56:07 -04:00
lat9nq
3e26089711
shared_translation: Add copyright and license
2023-07-21 10:56:07 -04:00
lat9nq
4a5f3e4733
configure_graphics_advance: Generate UI at runtime
...
We can iterate through the AdvancedGraphics settings and generate the UI
during runtime. This doesn't help runtime efficiency, but it helps a ton
in reducing the amount of work a developer needs in order to add a new
setting.
2023-07-21 10:56:07 -04:00
lat9nq
f5d7aedfe9
configure_per_game: Rename group to tab_group
2023-07-21 10:56:07 -04:00
lat9nq
b527f47bd6
configuration: Add base class to tabs
...
Tabs that largely configure SwitchableSetting's are now Tabs and grouped
together.
2023-07-21 10:56:07 -04:00
lat9nq
cea811f446
configuration_shared: Create Tab base class
2023-07-21 10:56:07 -04:00
lat9nq
253d2180c5
settings: Add a registry of settings
...
LoadString: Sanitize input
settings: Handle empty string, remove redundant category
settings: Rename Input to Controls, FS to DataStorage
settings: Fix Controls groups information
settings: Move use_docked_mode to System (again)
settings: Document
settings: Add type identification function
settings: Move registry into values
settings: Move global_reset_registry into values
settings: Separate AdvGraphics from Renderer
settings: More document
squash
settings: Use linkage object
uisettings: Move registry into settings
Probably wont build without
uisettings: Use settings linkage object
config: Load settings with a map
Uses the new all_settings vector to load settings.
qt-config: Rename settings category
qt config: Rename to read category
config: Read/write contols category with for_each
This is extremely limited due to the complexity of the Controls group,
but this handles the the settings that use the interface.
qt-config: Use new settings registry
qt-config: Read/write advgrphics
qt-config: Use settings linkage object
yuzu_cmd: Load setting off of vector
cmd-config: Finish settings rename
config: Read controls settings group with for_each
cmd/config: Move registry into values
cmd: Read adv graphics
cmd-config: Use settings linkage object
2023-07-21 10:56:07 -04:00
lat9nq
74a55fd39c
uisettings: Fix typings
2023-07-21 10:56:07 -04:00
lat9nq
bd8630531e
settings,core,config_sys: Remove optional type from custom_rtc, rng_seed
...
core: Fix MSVC errors
2023-07-21 10:56:07 -04:00
lat9nq
02a4c18835
settings: Pool SetGlobal functions
2023-07-21 10:56:07 -04:00
lat9nq
fc30b04714
settings,video_core: Consolidate ASTC decoding options
...
Just puts them all neatly into one place.
2023-07-21 10:56:07 -04:00
liamwhite
1b36e48f14
Merge pull request #11096 from german77/amiibooo
...
service: nfc: Update Implementation to match with latest RE
2023-07-21 09:21:48 -04:00
liamwhite
871be3a4d2
Merge pull request #11116 from lat9nq/clang-shadowing
...
general: Silence -Wshadow{,-uncaptured-local} warnings
2023-07-19 17:14:55 -04:00
liamwhite
075740115b
Merge pull request #11114 from Kelebek1/warnings
...
Mark SetIdleTimeDetectionExtension logging as debug
2023-07-19 17:14:45 -04:00
lat9nq
aa21a2ea3c
vk_buffer_cache: Format
2023-07-18 19:56:20 -04:00
lat9nq
30e4e8c2f4
general: Silence -Wshadow{,-uncaptured-local} warnings
...
These occur in the latest commits in LLVM Clang.
2023-07-18 19:31:35 -04:00
Kelebek1
df8097de60
Debug SetIdleTimeDetectionExtension
2023-07-18 10:16:14 +01:00
Liam
0cd5b83aa3
nsd: add GetApplicationServerEnvironmentType
2023-07-17 21:34:23 -04:00
Morph
0263d2fb05
ssl: Link with crypt32 for secure channel backend
2023-07-17 15:46:24 -04:00
Morph
e5e843b73f
ssl: Reorder inclusions
2023-07-17 15:46:24 -04:00
Morph
74d0865478
network: Forward declarations
2023-07-17 15:36:03 -04:00
Narr the Reg
2aab79426a
service: nfc: Update Implementation to match with latest RE
2023-07-17 11:24:23 -06:00
liamwhite
f2b6eed2ca
Merge pull request #10934 from abouvier/cmake-vma
...
cmake: allow using system VMA library
2023-07-17 10:42:41 -04:00
liamwhite
e03e85ae31
Merge pull request #11102 from v1993/your-mom-is-encrypted
...
android: fix links to re-dumping guides
2023-07-17 10:42:31 -04:00
liamwhite
b05ad55c4c
Merge pull request #10912 from comex/ssl
...
Implement SSL service
2023-07-16 16:56:47 -04:00
Valeri Ochinski
cd7fc3a3fe
android: fix links to re-dumping guides
2023-07-16 20:22:27 +03:00
GPUCode
7e9f75453f
buffer_cache: Increase number of texture buffers
2023-07-15 23:09:58 +03:00
comex
85d77f636c
Fixes and workarounds to make UBSan happier on macOS
...
There are still some other issues not addressed here, but it's a start.
Workarounds for false-positive reports:
- `RasterizerAccelerated`: Put a gigantic array behind a `unique_ptr`,
because UBSan has a [hardcoded limit](https://stackoverflow.com/questions/64531383/c-runtime-error-using-fsanitize-undefined-object-has-a-possibly-invalid-vp )
of how big it thinks objects can be, specifically when dealing with
offset-to-top values used with multiple inheritance. Hopefully this
doesn't have a performance impact.
- `QueryCacheBase::QueryCacheBase`: Avoid an operation that UBSan thinks
is UB even though it at least arguably isn't. See the link in the
comment for more information.
Fixes for correct reports:
- `PageTable`, `Memory`: Use `uintptr_t` values instead of pointers to
avoid UB from pointer overflow (when pointer arithmetic wraps around
the address space).
- `KScheduler::Reload`: `thread->GetOwnerProcess()` can be `nullptr`;
avoid calling methods on it in this case. (The existing code returns
a garbage reference to a field, which is then passed into
`LoadWatchpointArray`, and apparently it's never used, so it's
harmless in practice but still triggers UBSan.)
- `KAutoObject::Close`: This function calls `this->Destroy()`, which
overwrites the beginning of the object with junk (specifically a free
list pointer). Then it calls `this->UnregisterWithKernel()`. UBSan
complains about a type mismatch because the vtable has been
overwritten, and I believe this is indeed UB. `UnregisterWithKernel`
also loads `m_kernel` from the 'freed' object, which seems to be
technically safe (the overwriting doesn't extend as far as that
field), but seems dubious. Switch to a `static` method and load
`m_kernel` in advance.
2023-07-15 12:00:28 -07:00
Liam
b47ce23b31
kernel: reduce page table region checking
2023-07-14 22:33:10 -04:00
Liam
6b6f0b21b9
k_process: PageTable -> GetPageTable
2023-07-14 21:43:15 -04:00
Tobias
16590ff2d0
file_sys/content_archive: Detect compressed NCAs ( #11047 )
2023-07-12 23:17:18 +02:00
lat9nq
25b800e26c
time_zone: Clean up includes
2023-07-12 03:03:03 -04:00
lat9nq
0331d580e2
time_zone: Swap subtraction order
2023-07-12 03:02:45 -04:00
lat9nq
9fde7a84ea
time_zone: Account for leap years
...
Protects against invalid hour offsets during transitions to years
following leap years.
2023-07-12 02:34:02 -04:00
Alexandre Bouvier
dad3ef76a2
cmake: allow using system VMA library
2023-07-12 04:51:45 +02:00
bunnei
9a9da4301b
Merge pull request #10985 from liamwhite/handle-translate
...
k_server_session: translate special header for non-HLE requests
2023-07-11 16:49:24 -07:00
bunnei
2a4fe26457
Merge pull request #11070 from t895/home-setting-warning
...
android: Visualize disabled home options
2023-07-11 16:48:57 -07:00
Charles Lombardo
b9b5f6a885
android: Visualize disabled home options
...
Allow for displaying options in the home options that are disabled with messages that explain why they are disabled.
This includes reasoning for the GPU driver installation button.
2023-07-10 22:17:19 -04:00
bunnei
ab18aeb500
Merge pull request #10996 from Kelebek1/readblock_optimisation
...
Use spans over guest memory where possible instead of copying data
2023-07-10 18:54:19 -07:00
bunnei
d2d88891ce
Merge pull request #11050 from SuperSamus/sdl-button-labels
...
input_common: set `SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS` to 0
2023-07-10 18:53:16 -07:00
lat9nq
53d03b9a0e
settings: Disable C++20 tzdb path on MinGW
...
This path always results in Etc/UTC on MinGW, which often is not
close to the local time zone.
2023-07-10 17:52:35 -04:00
lat9nq
efeb79f380
time_zone: Remove string ops for determing zone
...
MinGW's strftime implementation does not work and cannot be used to
determine the time zone. Besides that, the string operations are
actually unnecessary since we can get the offset from
std::localtime.
Compare localtime to gmtime to find the zone offset on all platforms.
2023-07-10 17:51:34 -04:00
bunnei
5137c8ad74
Merge pull request #11067 from t895/fragile-data
...
android: Don't prompt to save user data on uninstall
2023-07-09 17:20:14 -07:00
Morph
29855a5997
Merge pull request #11055 from lat9nq/tzdb-catch-
...
settings: Catch runtime error from STL
2023-07-09 19:27:41 -04:00
Charles Lombardo
190a9d386b
android: Don't prompt to save user data on uninstall
...
While this can be convenient in some scenarios, this will be a big problem for users trying to sideload different APK versions. If they forget the last one they had installed, they could have problems installing a new copy.
2023-07-09 19:02:42 -04:00
Morph
51c3f6567b
Merge pull request #11063 from liamwhite/oops
...
arm_interface: correct breakpoint rewind condition
2023-07-09 16:24:49 -04:00
Liam
1f791daa01
arm_interface: correct breakpoint rewind condition
2023-07-09 12:03:25 -04:00
lat9nq
9e48d8f65b
settings: Catch runtime error from STL
...
This function throws a runtime error we can catch on old Windows 10
installs, so we can catch it here rather than disable this path for
everybody.
2023-07-09 02:26:58 -04:00
Morph
411d553bdf
Merge pull request #11030 from lat9nq/tz-restrict-msvc
...
settings: Disable C++20 time zone path on MSVC
2023-07-09 01:45:00 -04:00
Liam
ac90cfb927
k_server_session: translate special header for non-HLE requests
2023-07-08 01:01:49 -04:00
Martino Fontana
ef46437605
input_common: set `SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS` to 0
...
This allows to share the mappings between Nintendo and non-Nintendo controllers.
Breaks the controller configuration for existing users who are using a Nintendo controller.
(Documentation of the hint 92b3c53c92/include/SDL_hints.h (L512-L532) )
2023-07-07 21:59:47 +02:00
liamwhite
8c93a54ef7
Merge pull request #10999 from Morph1984/fix-install-progress
...
main: Fix install progress calculation
2023-07-06 18:57:25 -04:00
liamwhite
8fabf166e6
Merge pull request #11031 from german77/zero
...
input_common: Avoid potential division by zero
2023-07-06 18:57:07 -04:00
liamwhite
e6425500d3
vfs_real: use open file size for getting size ( #11016 )
2023-07-06 23:43:53 +02:00
Morph
8fa64dd1c5
main: Use 1_MiB as a constant for copy buffer size
2023-07-06 13:04:27 -04:00
Morph
cf6afdd939
main: Fix install progress calculation
...
The increased buffer size means that that progress bar size has to be adjusted
2023-07-06 00:22:38 -04:00
Narr the Reg
0bb27e9606
input_common: Avoid potential division by zero
2023-07-05 17:42:16 -06:00
lat9nq
b648c43fe8
settings: Disable C++20 path on MSVC
...
Even though it compiles and runs fine on the latest Windows versions,
older LTSC builds will crash due to lacking support somewhere in the OS.
For now just disable it for MSVC until either Microsoft fixes this or we
no longer support 1809 LTSC.
2023-07-05 15:58:12 -04:00
liamwhite
5688b55070
Merge pull request #10994 from liamwhite/ue4-preferred
...
vulkan_common: use device local preferred for image memory
2023-07-05 09:23:56 -04:00
liamwhite
9c44ee364c
Merge pull request #11006 from german77/nfc_nfc
...
service: nfc: Ensure controller is in the correct mode
2023-07-05 09:23:47 -04:00
liamwhite
81a137aa71
Merge pull request #11012 from gidoly/metroid-fix
...
Fix regression by unreal engine fix pr #11009
2023-07-05 09:23:34 -04:00
Kelebek1
ba4569eab7
Fix ScratchBuffer moves
2023-07-04 16:02:58 +01:00
bunnei
66a20ecbc7
video_core: vulkan_device: Disable timeline semaphore on Turnip, fix qcom version check.
2023-07-03 19:25:06 -07:00
bunnei
d8cda2c0b6
Merge pull request #10964 from bunnei/gpu-remove-qcom-check
...
video_core: vulkan_device: Fix S8Gen2 dynamic state checks.
2023-07-03 16:59:29 -07:00
bunnei
a255833eea
Merge pull request #10943 from t895/stick-modifiers
...
android: Input overlay updates
2023-07-03 14:44:15 -07:00
bunnei
3bf2a14213
video_core: vulkan_device: Change to driver version check.
2023-07-03 14:25:06 -07:00
german77
91445cd2e8
android: Reintroduce launch mode as single top
2023-07-03 09:31:02 -06:00
gidoly
66cb683f1e
oops re open
2023-07-03 20:25:23 +09:00
zeltermann
1bc489d511
Use `toUtf8()` for string passed to DBus
2023-07-03 14:46:17 +07:00
german77
a4c3c3bc2e
service: nfc: Ensure controller is in the correct mode
2023-07-02 19:21:16 -06:00
Charles Lombardo
e4fc1f5d7b
android: Version the input overlay
...
Now within the Input Overlay file, there is a version that will determine when the overlay will be reset. This is intended for breaking changes like the ones we had with the additions of percentage based layouts or the addition of foldable/portrait layouts. This also includes versions for each individual layout so we don't have to reset every layout if only one is broken.
Additionally, this includes new L3/R3 buttons.
2023-07-02 20:19:01 -04:00
Kelebek1
42638691b5
Use spans over guest memory where possible instead of copying data.
2023-07-02 23:09:48 +01:00
liamwhite
378fee4c18
Merge pull request #10998 from Morph1984/qt-stop-messing-with-me
...
core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
2023-07-02 17:38:28 -04:00
liamwhite
d81539ed2d
Merge pull request #10479 from GPUCode/format-list
...
Add support for VK_KHR_image_format_list
2023-07-02 17:38:21 -04:00
liamwhite
6145c3edd0
Merge pull request #10969 from Morph1984/k-synchronize
...
kernel: Synchronize
2023-07-02 17:38:14 -04:00
Morph
81ba61a0bd
core_timing: Remove GetCurrentTimerResolution in CoreTiming loop
...
Other programs may change this value, but if thousands of syscalls in this loop is undesirable, then we can just set this once.
2023-07-02 15:08:04 -04:00
liamwhite
0a416da90b
Merge pull request #10949 from t895/memory-requirements
...
android: Rework MemoryUtil
2023-07-02 11:29:08 -04:00
liamwhite
1bd420593c
Merge pull request #10942 from FernandoS27/android-is-a-pain-in-the-a--
...
Memory Tracking: Add mechanism to register small writes when gpu page is contested by GPU
2023-07-02 11:29:01 -04:00
liamwhite
35db479149
Merge pull request #10710 from liamwhite/romfs2
...
fsmitm_romfsbuild: avoid full path lookups
2023-07-02 11:28:55 -04:00
comex
1595193fa9
Rename variables to avoid -Wshadow warnings under GCC
2023-07-01 22:03:21 -07:00
Liam
aa2743de67
vulkan_common: use device local preferred for image memory
2023-07-01 23:44:57 -04:00
Liam
c9cbfadcdc
Revert "texture_cache: Fix incorrect logic for AccelerateDMA"
...
This reverts commit e9c07146d8 .
2023-07-01 23:37:50 -04:00
liamwhite
2a11936fa3
Merge pull request #10984 from comex/cob
...
Minor cleanup in BufferCacheRuntime::ReserveNullBuffer
2023-07-01 22:38:33 -04:00
liamwhite
004b9609b0
Merge pull request #10974 from Steveice10/macos_vk
...
vulkan: Improvements to macOS surface creation
2023-07-01 22:38:26 -04:00
liamwhite
ab339d1af3
Merge pull request #10970 from Morph1984/thing
...
general: Misc changes that did not deserve their own PRs
2023-07-01 22:38:18 -04:00
liamwhite
cd0fe521d4
Merge pull request #10966 from Morph1984/heap-corruption
...
sink_stream: Resolve heap buffer corruption due to out of bounds write
2023-07-01 22:38:10 -04:00
liamwhite
8de8e16d8a
Merge pull request #10950 from german77/mouse_tune
...
input_common: Tune mouse controls
2023-07-01 22:38:01 -04:00
comex
2ddbac990a
...actually add the SecureTransport backend to Git.
2023-07-01 17:48:36 -07:00
comex
f4b39f722d
Updates:
...
- Address PR feedback.
- Add SecureTransport backend for macOS.
2023-07-01 17:27:35 -07:00
comex
3b997a6083
Merge remote-tracking branch 'origin/master' into ssl
2023-07-01 15:01:11 -07:00
Steveice10
9961fc6754
yuzu: Use test window with VulkanSurface to check for present modes.
...
It is probably not correct to create a surface on a non-VulkanSurface window.
On macOS this causes a preferences crash due to missing CAMetalLayer.
2023-07-01 14:15:26 -07:00
Morph
abe7f7c0a0
kernel: Synchronize
2023-07-01 16:21:22 -04:00
comex
1e1b0dccaf
Minor cleanup in BufferCacheRuntime::ReserveNullBuffer
...
As far as I can tell, there is no reason to OR this bit in separately.
2023-07-01 12:00:25 -07:00
GPUCode
4270b443f8
renderer_vulkan: Fix some missing view formats
...
* Many times the format itself wouldn't have been added to the list causing device losses for nvidia GPUs
* Also account for ASTC acceleration storage views
2023-07-01 16:03:35 +03:00
GPUCode
b7e726669e
renderer_vulkan: Add support for VK_KHR_image_format_list
2023-07-01 16:03:29 +03:00
Steveice10
19a0345f69
vulkan: Use newer VK_EXT_metal_surface to create surface for MoltenVK.
2023-06-30 23:46:03 -07:00
Morph
acfb053333
parcel: Optimize small_vector sizes
2023-06-30 22:05:28 -04:00
Morph
10f95299eb
maxwell_dma: Specify dst_operand.pitch instead of a temp var
2023-06-30 21:49:59 -04:00
Morph
b8004b2472
general: Use ScratchBuffer where possible
2023-06-30 21:49:59 -04:00
german77
921f9baf58
yuzu: Ensure mouse panning can't be enabled with real mouse emulation
2023-06-30 18:59:39 -06:00
Fernando S
9cb5d582d6
Merge pull request #10953 from FernandoS27/oh-oopsies-yfc
...
Texture cache: Fix YFC regression due to code testing
2023-06-30 20:25:09 +02:00
Charles Lombardo
a81e654c4d
android: Show memory warning once
2023-06-30 13:46:35 -04:00
Morph
accc43e31f
ring_buffer: Fix const usage on std::span
2023-06-30 13:33:14 -04:00
Morph
8d75397bd9
scratch_buffer: Add member types to ScratchBuffer
...
Allows for implicit conversion to std::span<T>.
2023-06-30 13:33:13 -04:00
Fernando S
068fdeb0e8
Merge pull request #10956 from FernandoS27/pikmin-another-game-ill-hate
...
AccelerateDMA: Don't accelerate 3D texture DMA operations
2023-06-30 09:37:07 +02:00
Charles Lombardo
79637a9038
android: Rework MemoryUtil
...
Uses string templates and rounds up memory amount for potentially inaccurate checks now
2023-06-30 01:00:19 -04:00
Morph
885090dc13
sink_stream: Resolve heap buffer corruption due to out of bounds write
...
Also, remove the use of ScratchBuffer when upmixing, as other channels may not be initialized with zeroed out data.
2023-06-30 00:54:23 -04:00
bunnei
bdf171633f
video_core: vulkan_device: Scope S8Gen2 checks to just Qualcomm.
2023-06-29 18:41:38 -07:00
bunnei
de534a8b82
video_core: vulkan_device: Fix S8Gen2 dynamic state checks.
2023-06-29 17:37:42 -07:00
Fernando Sahmkow
71c38a6eb3
AccelerateDMA: Don't accelerate 3D texture DMA operations
2023-06-29 17:23:29 +02:00
Charles Lombardo
5b4cceec9b
Merge pull request #10955 from 8bitDream/gradle
...
android: Suppress a known incompatibility
2023-06-29 11:07:00 -04:00
liamwhite
fe61fc5f33
Merge pull request #10935 from Morph1984/mwaitx
...
x64: Make use of monitorx instructions for power efficient sleeps (AMD)
2023-06-29 10:01:26 -04:00
liamwhite
e82922f723
Merge pull request #10937 from german77/ring
...
input_common: Remove duplicated enum and fix ring detection
2023-06-29 10:01:19 -04:00
liamwhite
15cffade78
Merge pull request #10946 from goldenx86/amdBlending
...
Blacklist EDS3 blending from new AMD drivers
2023-06-29 10:01:11 -04:00
Abandoned Cart
17d8ad19b9
android: Suppress a known incompatibility
...
Android Gradle plugin 8.0.2 is designed for API 33, but a newer plugin hasn't been released yet. The warning message is rather extravagant, but also suggests adding this property if you are aware of the risks.
2023-06-29 07:32:12 -04:00
Fernando Sahmkow
d1200cd5c6
Memory Tracker: Use 64 bit atomics instead of 128 bits
2023-06-29 12:25:12 +02:00
Fernando Sahmkow
8efc8dba3e
Texture cache: Fix YFC regression due to code testing
2023-06-29 11:58:45 +02:00
german77
c6a065cb08
input_common: Allow timeouts to happen while scanning for a ring
2023-06-29 01:07:39 -06:00
Narr the Reg
3241ff028c
input_common: Tune mouse controls
2023-06-28 21:04:33 -06:00
Charles Lombardo
03db05843a
android: Make MemoryUtil an object
2023-06-28 20:00:25 -04:00
Matías Locatti
64640b6d07
Blacklist EDS3 blending from new AMD drivers
2023-06-28 20:10:27 -03:00
Charles Lombardo
fc8362a875
android: Android 14 support
...
Specifies the permissions needed for the changes to foreground services in Android 14.
2023-06-28 16:15:18 -04:00
Fernando Sahmkow
4f68a8f45a
Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU
2023-06-28 21:32:45 +02:00
Fernando Sahmkow
7ae0cdbb09
MemoryTracking: Initial setup of atomic writes.
2023-06-28 19:34:21 +02:00
german77
38b68d1783
input_common: Remove duplicated DriverResult enum
2023-06-28 09:49:47 -06:00
Morph
037e683b94
x64: cpu_wait: Implement MWAITX for non-MSVC compilers
2023-06-28 01:39:15 -04:00
Morph
88efcaf44e
x64: cpu_wait: Remove magic values
2023-06-28 01:39:06 -04:00
Morph
cffefaf8a7
x64: cpu_wait: Make use of MWAITX in MicroSleep
...
MWAITX is equivalent to UMWAIT on Intel's Alder Lake CPUs.
We can emulate TPAUSE by using MONITORX in conjunction with MWAITX to wait for 100K cycles.
2023-06-28 01:38:55 -04:00
Morph
841a3559a5
x64: Add detection of monitorx instructions
...
monitorx introduces 2 instructions: MONITORX and MWAITX.
2023-06-28 01:36:06 -04:00
Liam
d54f9ea34f
fsmitm_romfsbuild: avoid full path lookups
2023-06-27 23:25:47 -04:00
GPUCode
9e58301aec
renderer_vulkan: Prevent crashes when blitting depth stencil
2023-06-27 18:00:09 -07:00
GPUCode
5196f05cec
video_core: Add BCn decoding support
2023-06-27 18:00:09 -07:00
GPUCode
8a829a12b6
renderer_vulkan: Add more feature checking
2023-06-27 18:00:09 -07:00
GPUCode
d8a98f124a
renderer_vulkan: Don't assume debug tool with debug renderer
...
* Causes crashes because mali drivers don't support debug utils
2023-06-27 18:00:09 -07:00
GPUCode
5011526a94
renderer_vulkan: Bump minimum SPIRV version
...
* 1.3 is guaranteed on all 1.1 drivers
2023-06-27 18:00:09 -07:00
GPUCode
035b4eaf46
renderer_vulkan: Respect viewport limit
2023-06-27 18:00:09 -07:00
GPUCode
1af4dc2ed7
renderer_vulkan: Don't add transform feedback flag if unsupported
2023-06-27 18:00:09 -07:00
GPUCode
843d93b951
renderer_vulkan: Add suport for debug report callback
2023-06-27 18:00:09 -07:00
liamwhite
c64b5c642f
Merge pull request #10933 from merryhime/dunno
...
arm_dynarmic_32: Remove disabling of block linking on arm64
2023-06-27 20:50:24 -04:00
lat9nq
dfc7afe44d
settings: Clean up includes
...
Adds <version> since we are looking at C++ implementation version
details. Also moves exception header includes into the if preprocessor
command since we only use it there.
2023-06-27 19:13:54 -04:00
Merry
09012476db
arm_dynarmic_32: Remove disabling of block linking on arm64
2023-06-27 23:51:49 +01:00
lat9nq
4bbb9fa29e
settings: Catch runtime_error, fallback time zone
...
Windows will let you select time zones that will fail in their
own C++ implementation library. Evidently from the stack trace, we get a
runtime error to work with, so catch it and use the fallback.
2023-06-27 18:12:26 -04:00
german77
7dee0cf567
yuzu: Fix clang format
2023-06-27 15:55:23 -06:00
Narr the Reg
f8e461e9f2
Merge pull request #9663 from EBADBEEF/disable-controller-applet
...
qt: add option to disable controller applet
2023-06-27 10:32:51 -06:00
liamwhite
8a679be44b
Merge pull request #10867 from Kelebek1/dma_safe
...
Use safe reads in DMA engine
2023-06-27 11:21:47 -04:00
liamwhite
4f21c05522
Merge pull request #10473 from GPUCode/vma
...
Use vulkan memory allocator
2023-06-27 11:21:36 -04:00
liamwhite
4696a032a8
Merge pull request #10495 from bm01/master
...
input_common: Redesign mouse panning
2023-06-27 11:21:28 -04:00
liamwhite
f91cc2c72f
Merge pull request #10679 from zeltermann/wakelock-reason
...
Only use SDL wakelock on Linux
2023-06-27 11:21:20 -04:00
liamwhite
c869dcd931
Merge pull request #10916 from ameerj/lolmem
...
OpenGL: Add Local Memory warmup shader for Nvidia
2023-06-27 11:21:10 -04:00
Charles Lombardo
2810786adc
android: Fix size check for content uris
...
Fix for checking file size for android content uris
2023-06-26 22:24:18 -04:00
liamwhite
8affea6a4b
Merge pull request #10908 from kiri11/clarify-ring-ui
...
Clarify Ring-Con configuration message in UI
2023-06-26 14:31:30 -04:00
liamwhite
71949a6077
Merge pull request #10903 from german77/nfc_state
...
input_common: Improve nfc state handling and 3rd party support
2023-06-26 14:31:23 -04:00
liamwhite
2793f6cf7e
Merge pull request #10901 from german77/sdl_fix
...
input_common: Make use of new SDL features
2023-06-26 14:31:14 -04:00
liamwhite
6121aed4a8
Merge pull request #10888 from 8bitDream/native
...
android: (native) Parameter types from Android Studio
2023-06-26 14:31:00 -04:00
liamwhite
30cae69b33
Merge pull request #10865 from t895/extension-meme
...
android: Clean up file extension checks
2023-06-26 14:30:49 -04:00
Charles Lombardo
f56487bf3e
android: Clean up file extension checks
2023-06-26 13:25:56 -04:00
GPUCode
7a8631cd45
externals: Use cmake subdirectory
2023-06-26 18:59:24 +03:00
Kelebek1
c80b6bfb83
Use safe reads in DMA engine
2023-06-26 11:34:02 +01:00
comex
930b7ac6ee
PR feedback + constification
2023-06-25 19:24:49 -07:00
comex
73fb0e03a4
network.cpp: include expected.h
2023-06-25 18:51:39 -07:00
comex
ae42f278cb
re-format
2023-06-25 17:09:54 -07:00
comex
742d780d77
Fix more Windows build errors
...
I did test this beforehand, but not on MinGW, and the error that showed
up on the msvc builder didn't happen for me...
2023-06-25 17:06:57 -07:00
comex
3cc874f079
ssl: fix compatibility with OpenSSL 1.1.1
...
Turns out changes were needed after all.
2023-06-25 16:09:16 -07:00
ameerj
5ae4d9983b
OpenGL: Limit lmem warmup to NVIDIA
...
🐸
2023-06-25 19:06:51 -04:00
ameerj
28cecc6cd8
shaders: Track local memory usage
2023-06-25 18:59:33 -04:00
ameerj
a2b344ab9d
emit_glasm: Fix lmem size computation
2023-06-25 18:43:52 -04:00
ameerj
b2349d75f4
OpenGL: Add Local Memory warmup shader
2023-06-25 18:43:23 -04:00
comex
6018b182fc
Fixes:
...
- Add missing virtual destructor on `SSLBackend`.
- On Windows, filter out `POLLWRBAND` (one of the new flags added) when
calling `WSAPoll`, because despite the constant being defined on
Windows, passing it calls `WSAPoll` to yield `EINVAL`.
- Reduce OpenSSL version requirement to satisfy CI; I haven't tested
whether it actually builds (or runs) against 1.1.1, but if not, I'll
figure it out.
- Change an instance of memcpy to memmove, even though the arguments
cannot overlap, to avoid a [strange GCC
error](https://github.com/yuzu-emu/yuzu/pull/10912#issuecomment-1606283351 ).
2023-06-25 15:06:52 -07:00
comex
7fc1efe740
ssl: rename argument to avoid false positive codespell warning
...
The original name `larg` was copied from the OpenSSL documentation and
is not a typo of 'large' but rather an abbreviation of '`long`
argument'. But whatever, no harm in adding an underscore.
2023-06-25 13:10:41 -07:00
comex
12321ae076
socket_types: Improve comment
2023-06-25 13:10:15 -07:00
comex
6f8d5f068f
Implement SSL service
...
This implements some missing network APIs including a large chunk of the SSL
service, enough for Mario Maker (with an appropriate mod applied) to connect to
the fan server [Open Course World](https://opencourse.world/ ).
Connecting to first-party servers is out of scope of this PR and is a
minefield I'd rather not step into.
## TLS
TLS is implemented with multiple backends depending on the system's 'native'
TLS library. Currently there are two backends: Schannel for Windows, and
OpenSSL for Linux. (In reality Linux is a bit of a free-for-all where there's
no one 'native' library, but OpenSSL is the closest it gets.) On macOS the
'native' library is SecureTransport but that isn't implemented in this PR.
(Instead, all non-Windows OSes will use OpenSSL unless disabled with
`-DENABLE_OPENSSL=OFF`.)
Why have multiple backends instead of just using a single library, especially
given that Yuzu already embeds mbedtls for cryptographic algorithms? Well, I
tried implementing this on mbedtls first, but the problem is TLS policies -
mainly trusted certificate policies, and to a lesser extent trusted algorithms,
SSL versions, etc.
...In practice, the chance that someone is going to conduct a man-in-the-middle
attack on a third-party game server is pretty low, but I'm a security nerd so I
like to do the right security things.
My base assumption is that we want to use the host system's TLS policies. An
alternative would be to more closely emulate the Switch's TLS implementation
(which is based on NSS). But for one thing, I don't feel like reverse
engineering it. And I'd argue that for third-party servers such as Open Course
World, it's theoretically preferable to use the system's policies rather than
the Switch's, for two reasons
1. Someday the Switch will stop being updated, and the trusted cert list,
algorithms, etc. will start to go stale, but users will still want to
connect to third-party servers, and there's no reason they shouldn't have
up-to-date security when doing so. At that point, homebrew users on actual
hardware may patch the TLS implementation, but for emulators it's simpler to
just use the host's stack.
2. Also, it's good to respect any custom certificate policies the user may have
added systemwide. For example, they may have added custom trusted CAs in
order to use TLS debugging tools or pass through corporate MitM middleboxes.
Or they may have removed some CAs that are normally trusted out of paranoia.
Note that this policy wouldn't work as-is for connecting to first-party
servers, because some of them serve certificates based on Nintendo's own CA
rather than a publicly trusted one. However, this could probably be solved
easily by using appropriate APIs to adding Nintendo's CA as an alternate
trusted cert for Yuzu's connections. That is not implemented in this PR
because, again, first-party servers are out of scope.
(If anything I'd rather have an option to _block_ connections to Nintendo
servers, but that's not implemented here.)
To use the host's TLS policies, there are three theoretical options:
a) Import the host's trusted certificate list into a cross-platform TLS
library (presumably mbedtls).
b) Use the native TLS library to verify certificates but use a cross-platform
TLS library for everything else.
c) Use the native TLS library for everything.
Two problems with option a). First, importing the trusted certificate list at
minimum requires a bunch of platform-specific code, which mbedtls does not have
built in. Interestingly, OpenSSL recently gained the ability to import the
Windows certificate trust store... but that leads to the second problem, which
is that a list of trusted certificates is [not expressive
enough](https://bugs.archlinux.org/task/41909 ) to express a modern certificate
trust policy. For example, Windows has the concept of [explicitly distrusted
certificates](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/dn265983(v=ws.11) ),
and macOS requires Certificate Transparency validation for some certificates
with complex rules for when it's required.
Option b) (using native library just to verify certs) is probably feasible, but
it would miss aspects of TLS policy other than trusted certs (like allowed
algorithms), and in any case it might well require writing more code, not less,
compared to using the native library for everything.
So I ended up at option c), using the native library for everything.
What I'd *really* prefer would be to use a third-party library that does option
c) for me. Rust has a good library for this,
[native-tls](https://docs.rs/native-tls/latest/native_tls/ ). I did search, but
I couldn't find a good option in the C or C++ ecosystem, at least not any that
wasn't part of some much larger framework. I was surprised - isn't this a
pretty common use case? Well, many applications only need TLS for HTTPS, and they can
use libcurl, which has a TLS abstraction layer internally but doesn't expose
it. Other applications only support a single TLS library, or use one of the
aforementioned larger frameworks, or are platform-specific to begin with, or of
course are written in a non-C/C++ language, most of which have some canonical
choice for TLS. But there are also many applications that have a set of TLS
backends just like this; it's just that nobody has gone ahead and abstracted
the pattern into a library, at least not a widespread one.
Amusingly, there is one TLS abstraction layer that Yuzu already bundles: the
one in ffmpeg. But it is missing some features that would be needed to use it
here (like reusing an existing socket rather than managing the socket itself).
Though, that does mean that the wiki's build instructions for Linux (and macOS
for some reason?) already recommend installing OpenSSL, so no need to update
those.
## Other APIs implemented
- Sockets:
- GetSockOpt(`SO_ERROR`)
- SetSockOpt(`SO_NOSIGPIPE`) (stub, I have no idea what this does on Switch)
- `DuplicateSocket` (because the SSL sysmodule calls it internally)
- More `PollEvents` values
- NSD:
- `Resolve` and `ResolveEx` (stub, good enough for Open Course World and
probably most third-party servers, but not first-party)
- SFDNSRES:
- `GetHostByNameRequest` and `GetHostByNameRequestWithOptions`
- `ResolverSetOptionRequest` (stub)
## Fixes
- Parts of the socket code were previously allocating a `sockaddr` object on
the stack when calling functions that take a `sockaddr*` (e.g. `accept`).
This might seem like the right thing to do to avoid illegal aliasing, but in
fact `sockaddr` is not guaranteed to be large enough to hold any particular
type of address, only the header. This worked in practice because in
practice `sockaddr` is the same size as `sockaddr_in`, but it's not how the
API is meant to be used. I changed this to allocate an `sockaddr_in` on the
stack and `reinterpret_cast` it. I could try to do something cleverer with
`aligned_storage`, but casting is the idiomatic way to use these particular
APIs, so it's really the system's responsibility to avoid any aliasing
issues.
- I rewrote most of the `GetAddrInfoRequest[WithOptions]` implementation. The
old implementation invoked the host's getaddrinfo directly from sfdnsres.cpp,
and directly passed through the host's socket type, protocol, etc. values
rather than looking up the corresponding constants on the Switch. To be
fair, these constants don't tend to actually vary across systems, but
still... I added a wrapper for `getaddrinfo` in
`internal_network/network.cpp` similar to the ones for other socket APIs, and
changed the `GetAddrInfoRequest` implementation to use it. While I was at
it, I rewrote the serialization to use the same approach I used to implement
`GetHostByNameRequest`, because it reduces the number of size calculations.
While doing so I removed `AF_INET6` support because the Switch doesn't
support IPv6; it might be nice to support IPv6 anyway, but that would have to
apply to all of the socket APIs.
I also corrected the IPC wrappers for `GetAddrInfoRequest` and
`GetAddrInfoRequestWithOptions` based on reverse engineering and hardware
testing. Every call to `GetAddrInfoRequestWithOptions` returns *four*
different error codes (IPC status, getaddrinfo error code, netdb error code,
and errno), and `GetAddrInfoRequest` returns three of those but in a
different order, and it doesn't really matter but the existing implementation
was a bit off, as I discovered while testing `GetHostByNameRequest`.
- The new serialization code is based on two simple helper functions:
```cpp
template <typename T> static void Append(std::vector<u8>& vec, T t);
void AppendNulTerminated(std::vector<u8>& vec, std::string_view str);
```
I was thinking there must be existing functions somewhere that assist with
serialization/deserialization of binary data, but all I could find was the
helper methods in `IOFile` and `HLERequestContext`, not anything that could
be used with a generic byte buffer. If I'm not missing something, then
maybe I should move the above functions to a new header in `common`...
right now they're just sitting in `sfdnsres.cpp` where they're used.
- Not a fix, but `SocketBase::Recv`/`Send` is changed to use `std::span<u8>`
rather than `std::vector<u8>&` to avoid needing to copy the data to/from a
vector when those methods are called from the TLS implementation.
2023-06-25 12:53:31 -07:00
Kirill Ignatev
ba51f27437
Hyphenate Joy-Con and clarify further
2023-06-25 12:51:16 -04:00
Kirill Ignatev
d113954bec
Clarify Ring-Con configuration message in UI
...
Not obvious how left controller should be set up
Mention that it should be left physical dual emulated
2023-06-25 11:52:15 -04:00
german77
9e204b0308
core: hid: Allow to read bin files while switch controller is available
2023-06-24 18:59:55 -06:00
german77
4c2f8ac0eb
input_common: Dont try to read/write data from 3rd party controllers
2023-06-24 18:59:55 -06:00
german77
b16b2a486b
input_common: Make use of new SDL features
2023-06-24 17:42:56 -06:00
zeltermann
377ffa277c
Only use SDL wakelock on Linux
...
SDL has internally fixed shenanigans related to wakelocking through DBus
from inside sandboxes from around August 2022, so we can now remove the
workaround we used since 2021.
2023-06-24 14:51:41 +07:00
Abandoned Cart
51068a23af
android: define [[maybe_unused]] (const) auto
2023-06-23 14:05:14 -04:00
Abandoned Cart
f2aeaddf52
android: Parameter types from Android Studio
...
Android Studio marked these parameters as errors because it is an instance, not a class, that is being passed from Java.
2023-06-23 10:36:30 -04:00
liamwhite
188f3d786f
Merge pull request #10811 from 8bitDream/pip_mute
...
android: Add a PiP interface to mute / unmute
2023-06-23 09:27:28 -04:00
liamwhite
fa8419f54e
Merge pull request #10859 from liamwhite/no-more-atomic-wait
...
general: remove atomic signal and wait
2023-06-23 09:27:14 -04:00
liamwhite
67778a69b0
Merge pull request #10842 from german77/native_mifare
...
input_common: Implement native mifare/skylander support for joycons/pro controller
2023-06-23 09:27:00 -04:00
Liam
217bb87494
vfs_real: lock concurrent accesses
2023-06-23 00:57:24 -04:00
bunnei
7a546be139
Merge pull request #10457 from Kelebek1/optimise
...
Remove memory allocations in some hot paths
2023-06-22 21:53:07 -07:00
bunnei
5b3787e8a3
Merge pull request #10806 from liamwhite/worst-fs-implementation-ever
...
vfs_real: misc optimizations
2023-06-22 21:46:50 -07:00
bunnei
889371ab35
Merge pull request #10794 from 8bitDream/multiples
...
android: Add support for multiple installs
2023-06-22 14:26:24 -07:00
Morph
0ad233da22
Merge pull request #10878 from GPUCode/log-droid
...
android: Log settings
2023-06-22 16:16:20 -04:00
bunnei
3963d06e86
Merge pull request #10869 from 8bitDream/memory
...
android: Add a notice when RAM inadequate
2023-06-22 10:26:32 -07:00
GPUCode
925a069402
android: Log settings
2023-06-22 20:17:52 +03:00
GPUCode
c813876c5a
vulkan_common: Remove required flags
...
* Allows VMA to fallback to system RAM instead of crashing
2023-06-22 20:03:12 +03:00
Liam
db40a2f430
general: remove atomic signal and wait
2023-06-22 09:25:23 -04:00
Kelebek1
c7430e51e3
Remove memory allocations in some hot paths
2023-06-22 08:05:10 +01:00
bunnei
72a469b967
Merge pull request #10086 from Morph1984/coretiming-ng-1
...
core_timing: Use CNTPCT as the guest CPU tick
2023-06-21 21:12:46 -07:00
bunnei
5a5080ba4e
Merge pull request #10777 from liamwhite/no-barrier
...
video_core: optionally skip barriers on feedback loops
2023-06-21 21:10:08 -07:00
bunnei
feb4104440
Merge pull request #10841 from liamwhite/math-is-hard
...
vfs_concat: fix offset calculation when not aligned to file boundary
2023-06-21 21:07:08 -07:00
bunnei
1642b5217e
Merge pull request #10863 from lat9nq/tz-end-of-string
...
time_zone_manager: Stop on comma
2023-06-21 21:05:03 -07:00
Narr the Reg
b24451c571
input_common: Implement native mifare support
2023-06-21 17:54:58 -06:00
Abandoned Cart
c955fc20b3
android: Generalize string message dialog
2023-06-21 18:25:15 -04:00
Abandoned Cart
42548ded9d
android: Add support for concurrent installs
2023-06-21 18:25:15 -04:00
Abandoned Cart
25ad652787
android: Convert memory sizes to resource
2023-06-21 18:24:49 -04:00
Abandoned Cart
0891b3e775
android: Add a notice when RAM inadequate
2023-06-21 18:24:49 -04:00
Abandoned Cart
f06174ed2b
android: Refactor native and corresponding variables
2023-06-21 18:23:13 -04:00
Abandoned Cart
777567975e
Fix JNI and expose mute settings to Android
2023-06-21 18:23:13 -04:00
Abandoned Cart
67ec04ddd5
android: Add a PiP interface to mute / unmute
2023-06-21 17:21:36 -04:00
Charles Lombardo
839e5f65e4
android: Don't show custom driver button on mali and x86
2023-06-20 20:06:36 -04:00
lat9nq
9357aaf637
time_zone_manager: Add null terminator
...
We aren't null-terminating this string after the copy, and we need to.
2023-06-20 15:54:28 -04:00
lat9nq
aedaa1aa19
time_zone_manager: Stop on comma
...
This is a deviation from the reference time zone implementation. The
actual code will set a pointer to the time zone name here, but for us we
have a limited number of characters to work with, and the name of the
time zone here could be larger than 8 characters.
We can make the assumption that time zone names greater than five
characters in length include a comma that denotes more data. Nintendo
just truncates that data for the name, so we can do the same.
time_zone_manager: Check for length of array
Just to be double sure that we never break past the array length,
directly compare against it.
2023-06-20 15:54:05 -04:00
liamwhite
10f2beb17a
Merge pull request #10818 from vonchenplus/render_target_samples
...
video_core: add samples check when find render target
2023-06-20 09:55:23 -04:00
liamwhite
5df094850f
Merge pull request #10835 from lat9nq/intel-restrict-compute-disable
...
vulkan_device: Restrict compute disable only to affected Intel drivers
2023-06-20 09:55:14 -04:00
liamwhite
50fe67c0f1
Merge pull request #10840 from Kelebek1/unbug_blinks_brain
...
Use current GPU address when unmapping GPU pages, not the base
2023-06-20 09:55:01 -04:00
toast2903
f68b01a8cf
vulkan_device: Remove brace initializer
...
Co-authored-by: Tobias <thm.frey@gmail.com>
2023-06-19 17:35:12 -04:00
lat9nq
1ad8df763f
video_core: Check broken compute earlier
...
Checks it as the system is determining what settings to enable. Reduces
the need to check settings while the system is running.
2023-06-19 17:33:30 -04:00
Liam
e1d8e0d842
vfs_concat: verify short read
2023-06-19 09:47:05 -04:00
Liam
0faeac4fcb
vfs_concat: fix offset calculation when not aligned to file boundary
2023-06-18 22:21:29 -04:00
Kelebek1
6bd6e24d6e
Use current GPU address when unmapping GPU pages, not the base
2023-06-19 00:19:50 +01:00
lat9nq
eb2c848912
vk_device_info: Check only affected Intel drivers
...
Renames is_intel_proprietary to has_broken_compute for accuracy.
vk_device_info: Use vulkan::device to check compute
2023-06-18 16:15:51 -04:00
lat9nq
a74f77bbbc
video_core: Formalize HasBrokenCompute
...
Also limits it to only affected Intel proprietrary driver versions.
vulkan_device: Move broken compute determination
vk_device: Remove errant back quote
2023-06-18 16:15:47 -04:00
liamwhite
1ddf844419
Merge pull request #10829 from lat9nq/remove-external-mem
...
vulkan_device: Remove external memory extension
2023-06-18 09:43:03 -04:00
liamwhite
843f80ae60
Merge pull request #10486 from lat9nq/vk-device-find-once
...
yuzu-qt: Load Vulkan device info at startup
2023-06-18 09:42:55 -04:00
liamwhite
2f65ed20b7
Merge pull request #10798 from vonchenplus/draw_texture_scale
...
video_core: drawtexture support upscale
2023-06-18 09:42:41 -04:00
liamwhite
e48b4b0b36
Merge pull request #10809 from Kelebek1/reduce_vertex_bindings
...
Synchronize vertex buffer even when it doesn't require binding
2023-06-18 09:42:32 -04:00
GPUCode
7b3718dc9c
renderer_vulkan: Add missing initializers
2023-06-18 14:14:03 +03:00
GPUCode
66d3a1c5c7
renderer_vulkan: Use VMA for buffers
2023-06-18 12:45:18 +03:00
GPUCode
d84d595dab
renderer_vulkan: Use VMA for images
2023-06-18 12:45:18 +03:00
GPUCode
fd9b920d2d
memory_allocator: Remove OpenGL interop
...
* Appears to be unused atm
2023-06-18 12:45:18 +03:00
lat9nq
0a4650cd2b
externals: Add vma and initialize it
...
video_core: Move vma implementation to library
2023-06-18 12:45:12 +03:00
bunnei
6d055a21e3
Merge pull request #10797 from lat9nq/tzdb-patch
...
time: Various time zone fixes
2023-06-17 23:47:16 -07:00
lat9nq
38fe34a43f
vulkan_device: Remove external memory extension
...
Unused in yuzu. Enables yuzu to boot games in Wine using Vulkan.
2023-06-18 01:20:08 -04:00
Liam
e62d452bd9
renderer_vulkan: add missing include
2023-06-17 23:57:47 -04:00
lat9nq
e260539065
time_zone_service: Always write time zone rule data
...
Switch firmware will initialize this data even if the given parameters
are invalid. We should do the same.
2023-06-17 20:53:39 -04:00
Morph
5cf658d2e6
Merge pull request #10813 from lat9nq/no-atomic-bool
...
k_thread: Use a mutex and cond_var to sync bool
2023-06-17 20:29:57 -04:00
Fernando S
06f47d34c8
Merge pull request #10744 from Wollnashorn/af-for-all
...
video_core: Improved anisotropic filtering heuristics
2023-06-18 00:02:05 +02:00
Kelebek1
547e837f78
Synchronize vertex buffer even when it doesn't require binding
2023-06-17 17:47:00 -04:00
lat9nq
59236a458c
k_thread: Use a mutex and cond_var to sync bool
...
std::atomic<bool> is broken on MinGW and causes deadlocks there.
Use a normal cond var in its stead.
2023-06-17 15:25:36 -04:00
FengChen
255ab12789
video_core: add samples check when find render target
2023-06-17 23:48:51 +08:00
Wollnashorn
e10113e853
video_core: Only apply AF to 2D (array) image types
2023-06-17 14:20:44 +02:00
Wollnashorn
62b0b6bde0
video_core: Removed AF for all mip modes option as it's default now
2023-06-17 11:19:39 +02:00
bunnei
853249121d
Merge pull request #10783 from liamwhite/memory
...
video_core: preallocate fewer IR blocks
2023-06-16 16:53:25 -07:00
bunnei
e979299431
Merge pull request #10808 from t895/settings-stuffs
...
android: Expose settings
2023-06-16 16:52:54 -07:00
bunnei
2854efee65
Merge pull request #10807 from t895/ktlint-fixes
...
android: Ktlint fixes
2023-06-16 16:47:14 -07:00
liamwhite
4c7987cded
Merge pull request #10731 from german77/misc_fixes
...
service: nfc: Accuracy fixes
2023-06-16 18:18:24 -04:00
Liam
3191a97b22
vfs_real: ensure size cache is reset on write
2023-06-16 16:43:14 -04:00
Charles Lombardo
8586ed3bfe
android: Expose audio output engine setting
2023-06-16 16:42:56 -04:00
Charles Lombardo
cb65166fac
android: Bump ktlint version to 0.47.1
2023-06-16 16:32:08 -04:00
Charles Lombardo
fa67cd8edf
android: Disable import-ordering ktlint check
2023-06-16 16:31:49 -04:00
Liam
b73cc6d51c
patch_manager: remove unnecessary GetSize calls
2023-06-16 16:29:10 -04:00
Liam
0f7b1f067f
vfs_real: misc optimizations
2023-06-16 16:29:06 -04:00
Charles Lombardo
a88166f870
android: Expose CPU debugging option
2023-06-16 16:25:06 -04:00
Charles Lombardo
6c18ceff4d
android: Expose fastmem option
2023-06-16 16:24:40 -04:00
Charles Lombardo
c050dd3122
android: Support changing multiple settings at once
2023-06-16 15:49:49 -04:00
Abandoned Cart
465927f4c5
android: Fix aspect ratio when rotating screen
2023-06-16 10:11:18 -04:00
Feng Chen
c362895572
video_core: drawtexture support upscale
2023-06-16 20:51:15 +08:00
Wollnashorn
815f54385a
video_core: Use sampler IDs instead pointers in the pipeline config
...
The previous approach of storing pointers returned by `GetGraphicsSampler`/`GetComputeSampler` caused UB, as these functions can cause reallocation of the sampler slot vector and therefore invalidate the pointers
2023-06-16 13:45:14 +02:00
liamwhite
c637971ae3
Merge pull request #10795 from german77/foomiibo
...
input_common: Add foomiibo support
2023-06-16 00:08:30 -04:00
lat9nq
5173821cfa
time_zone_manager: Compare to the correct boolean
...
Reference implementation does not compare the booleans as we had them.
Use the correct ones as in the reference.
Also adds an assert. I have been made aware of a crash here and am
not able to reproduce currently.
2023-06-15 23:05:41 -04:00
lat9nq
2ed870c2a8
nx_tzdb: Correct Antarctica spelling
2023-06-15 23:03:54 -04:00
Charles Lombardo
37cbf16322
android: Apply ktlint codestyle
2023-06-15 22:36:54 -04:00
Charles Lombardo
98f711100e
Android: Use ktlint for Kotlin code style
2023-06-15 22:22:49 -04:00
Charles Lombardo
1ad4a05d64
android: Enable android linting
2023-06-15 22:19:58 -04:00
bunnei
947e258ac2
Merge pull request #10796 from bunnei/fix-saf
...
android: fs: Fix Exists / IsFile for SAF.
2023-06-15 18:39:14 -07:00
bunnei
837d487905
Merge pull request #10790 from liamwhite/arm-driver-moment
...
vulkan_device: disable extended_dynamic_state2 on ARM drivers
2023-06-15 18:34:31 -07:00
bunnei
981332d727
Merge pull request #10775 from liamwhite/cb2
...
renderer_vulkan: propagate conditional barrier support
2023-06-15 17:37:03 -07:00
Narr the Reg
4a5f56645a
input_common: Add amiibo with originality signature support
2023-06-15 18:22:13 -06:00
bunnei
bc21da779e
android: fs: Fix Exists / IsFile for SAF.
2023-06-15 17:20:56 -07:00
bunnei
da26ff3e0f
Merge pull request #10639 from 8bitDream/pictureinpicture
...
android: Support for Picture in Picture / Portrait
2023-06-15 16:40:13 -07:00
Wollnashorn
eff77dae59
video_core: Fallback to default anisotropy instead to 1x anisotropy
2023-06-15 23:16:26 +02:00
Wollnashorn
e405fb1c72
video_core: Disable AF for non-color image formats
2023-06-15 20:59:33 +02:00
Wollnashorn
1f7c69934d
video_core: Fixed compilation errors because of name shadowing
2023-06-15 18:46:40 +02:00
Liam
0875e158fe
vulkan_device: disable extended_dynamic_state2 on ARM drivers
2023-06-15 12:29:54 -04:00
Wollnashorn
1844cad9d4
video_core: Add per-image anisotropy heuristics (format & mip count)
2023-06-15 18:19:32 +02:00
Liam
c913c891e0
video_core: preallocate fewer IR blocks
2023-06-14 21:37:57 -04:00
bunnei
c307399340
Merge pull request #10729 from liamwhite/windows-is-a-meme
...
vfs_real: add file LRU cache for open file limits
2023-06-14 18:32:25 -07:00
Narr the Reg
6ae2249f88
service: nfc: Read tag protocol only for nfc backend
2023-06-14 18:16:23 -06:00
Narr the Reg
05fcd73843
service: nfc: Accuracy fixes
2023-06-14 18:08:35 -06:00
Morph
6a4ebf7dd6
Merge pull request #10749 from Morph1984/strong-typing
...
buffer_cache_base: Specify buffer type in HostBindings
2023-06-14 18:03:11 -04:00
Abandoned Cart
dfa23c70c6
android: Move overlays to their own layout
2023-06-14 16:43:24 -04:00
Abandoned Cart
5d37de1e70
android: Initialize defaults for each orientations
2023-06-14 16:35:58 -04:00
Abandoned Cart
e438f2e053
android: Display FPS with emulation on hinge
2023-06-14 16:35:57 -04:00
Abandoned Cart
468a6c5555
android: Remove PiP reliance on fragment
2023-06-14 16:35:56 -04:00
Abandoned Cart
5417700e64
android: Set layout by fragment, not view
2023-06-14 16:35:54 -04:00
Abandoned Cart
be83a80f62
android: Add a separate foldable layout set
2023-06-14 16:34:23 -04:00
Abandoned Cart
df42e34dfb
android: Set portrait default control params
2023-06-14 16:34:22 -04:00
Abandoned Cart
f24d322941
android: Actually implement portrait controls
2023-06-14 16:34:19 -04:00
Abandoned Cart
78826a0afd
android: Enable automated portrait controls
2023-06-14 16:34:16 -04:00
Abandoned Cart
399fb74890
android: Add Picture in Picture / Orientation
2023-06-14 16:34:14 -04:00
Charles Lombardo
8e33b7993d
android: Adapt EmulationActivity to navigation component
2023-06-14 14:55:25 -04:00
Liam
d0837e10ae
video_core: optionally skip barriers on feedback loops
2023-06-14 14:11:46 -04:00
Liam
e77190ffab
renderer_vulkan: propagate conditional barrier support
2023-06-14 10:49:40 -04:00
Wollnashorn
04782a922d
video_core: Apply AF only to samplers with normal LOD range [0, 1+x]
2023-06-14 13:27:27 +02:00
Wollnashorn
9f46c7724b
video_core: Fix default anisotropic heuristic
2023-06-14 11:21:22 +02:00
Wollnashorn
614f8a0429
video_core: Never apply AF to None mipmap mode
...
Should fix some artifacts with the "apply anisotropic filtering for all mipmap modes" option
2023-06-14 03:57:39 +02:00
Liam
863d5c23d0
vfs_real: require file existence on open
2023-06-13 17:22:47 -04:00
Liam
87087b768b
vfs_real: add simplified open file cache
2023-06-13 17:16:14 -04:00
bunnei
4abd6e552c
Merge pull request #10603 from lat9nq/tz-more-complete
...
core,common: Implement missing time zone data/computations
2023-06-13 13:28:45 -07:00
Charles Lombardo
8395dcea78
Merge pull request #10760 from FearlessTobi/translations
...
android: Declare languages in locales_config.xml
2023-06-13 15:48:45 -04:00
Wollnashorn
ff4c4a45e6
video_core: Disable anisotropic filtering for samplers with depth compare
2023-06-13 21:32:32 +02:00
FearlessTobi
f437542a7f
android: Declare languages in locales_config.xml
...
This is required to make per-app language swithcing possible on Android 13.
2023-06-13 20:26:45 +02:00
Charles Lombardo
33812b0c24
Merge pull request #10751 from german77/touch
...
android: Fix touch input
2023-06-13 14:01:02 -04:00
bunnei
8f68196ecc
Merge pull request #10747 from liamwhite/arm-interface-decouple
...
core: decouple ARM interface from Dynarmic
2023-06-13 09:45:09 -07:00
Liam
729216e5d8
vfs_real: lazily open files
2023-06-13 10:37:34 -04:00
Liam
efaaa6e0bf
vfs_real: add file LRU cache for open file limits
2023-06-13 10:37:34 -04:00
german77
110f8ea167
android: Fix touch input
2023-06-13 00:17:10 -06:00
Morph
9da90de908
buffer_cache_base: Specify buffer type in HostBindings
...
Avoid reinterpret-casting from void pointer since the type is already known at compile time.
2023-06-13 00:59:42 -04:00
bunnei
0c919d1704
Merge pull request #10746 from bunnei/update-android-settings
...
android: Update settings, remove unused translations
2023-06-12 21:15:26 -07:00
Liam
5b858c8306
core: decouple ARM interface from Dynarmic
2023-06-12 22:11:51 -04:00
Wollnashorn
6f1fb4c28a
video_core: Option to apply anisotropic filtering for all mipmap modes
2023-06-13 03:21:01 +02:00
liamwhite
aab6e3098d
Merge pull request #10675 from liamwhite/scaler
...
image_info: adjust rescale thresholds and refactor constant use
2023-06-12 21:16:36 -04:00
bunnei
5f6c1b5243
android: settings: Disable force_max_clock by default.
2023-06-12 17:57:48 -07:00
bunnei
501e43a053
android: settings: Add reactive flushing as a default-disabled setting.
2023-06-12 17:56:44 -07:00
bunnei
5c6c48fe24
android: res: Remove translated strings that no longer exist.
2023-06-12 17:45:02 -07:00
bunnei
f631b3a39a
Merge pull request #10743 from FearlessTobi/translations
...
android: Add translation files manually
2023-06-12 17:20:27 -07:00
bunnei
72db3f10d0
Merge pull request #10705 from german77/updates
...
android: Add update and DLC support
2023-06-12 17:03:44 -07:00
FearlessTobi
cf118cecd0
android: Add translation files manually
2023-06-13 01:00:23 +02:00
bunnei
5f6814da47
Merge pull request #10728 from t895/game-hash
...
android: Use autogenerated hash code function for Game class
2023-06-12 14:45:18 -07:00
bunnei
a7d42ec05b
Merge pull request #10724 from t895/auto-version-property
...
android: Use autoVersion when gradle property is set
2023-06-12 13:12:32 -07:00
Matías Locatti
28e1429daf
Merge pull request #10699 from liamwhite/conditional-barrier
...
shader_recompiler: remove barriers in conditional control flow when device lacks support
2023-06-12 16:50:59 -03:00
bunnei
d40c8428a0
Merge pull request #10693 from liamwhite/f64-to-f32
...
shader_recompiler: translate f64 to f32 when unsupported on host
2023-06-12 12:46:54 -07:00
Narr the Reg
707999d4c0
android: Add update support
2023-06-11 23:33:50 -06:00
Morph
492a4c705a
Merge pull request #10718 from liamwhite/buffered-io
...
qt: use larger buffer for update install
2023-06-12 00:58:34 -04:00
Charles Lombardo
c62bbe270a
android: Use autogenerated hash code function for Game class
2023-06-11 21:15:13 -04:00
Charles Lombardo
8180d213d7
android: Use autoVersion when gradle property is set
2023-06-11 20:04:08 -04:00
Baptiste Marie
83f4158d6c
input_common: Redesign mouse panning
2023-06-12 00:47:52 +02:00
bunnei
866b7c0632
Merge pull request #10668 from Kelebek1/reduce_vertex_bindings
...
Combine vertex/transform feedback buffer binding into a single call
2023-06-11 11:33:48 -07:00
bunnei
e35f1fc123
Merge pull request #10713 from t895/gradle-updates
...
android: Gradle updates
2023-06-11 11:31:03 -07:00
Liam
26a9ebf326
qt: use larger buffer for update install
2023-06-11 11:43:04 -04:00
Charles Lombardo
81d4145aca
android: Update dependencies
2023-06-11 02:17:29 -04:00
Charles Lombardo
6d1b8d6ca4
android: Differentiate build types with new names
...
Change the applicationIdSuffix and app launcher title based on build type
2023-06-11 02:16:45 -04:00
Charles Lombardo
4ad4f6cf26
Android: Remove unused relWithVersionCode build type
2023-06-11 02:15:28 -04:00
Charles Lombardo
62a8bb65be
android: Use ContentResolver to get file extension
...
Fixes an issue where we try to resolve file extension from URIs. Sometimes the URI will not contain the file name at all and instead a string of numbers. Here we query the content resolver and guarantee that we get a file name every time.
2023-06-11 01:41:58 -04:00
bunnei
e1402935d9
android: Fix screen orientation & blurriness.
2023-06-10 15:13:06 -07:00
bunnei
2259f8a788
Merge pull request #10670 from liamwhite/fxaa2
...
vk_blit_screen: use higher bit depth for fxaa
2023-06-10 14:35:23 -07:00
Liam
947a4f6141
shader_recompiler: translate f64 to f32 when unsupported on host
2023-06-10 12:38:49 -04:00
Liam
b646ac2908
shader_recompiler: remove barriers in conditional control flow when device lacks support
2023-06-10 12:30:39 -04:00
Morph
2affb40418
Merge pull request #10685 from liamwhite/serialization-is-hard
...
qt: persist framerate sync option
2023-06-10 12:28:00 -04:00
bunnei
33fe748bd3
Merge pull request #10691 from t895/nro-check
...
android: Add proper homebrew check
2023-06-09 23:59:51 -07:00
Charles Lombardo
b1b9075f2d
android: Add proper homebrew check
2023-06-09 20:17:51 -04:00
Charles Lombardo
1595600bf2
android: Fix input overlay version check
2023-06-09 15:15:57 -04:00
liamwhite
dbe291a1b2
Merge pull request #10614 from xcfrg/shader-backend-status-bar
...
yuzu: add opengl shader backend info in status bar
2023-06-09 09:46:11 -04:00
Liam
99580c36b0
qt: persist framerate sync option
2023-06-09 09:40:34 -04:00
liamwhite
82dace133c
Merge pull request #10623 from german77/backup
...
service: nfc: Add backup support
2023-06-08 21:54:12 -04:00
liamwhite
b1fb8817dc
Merge pull request #10666 from liamwhite/my-framerate-is-fine
...
nvnflinger: allow locking framerate during video playback
2023-06-08 21:53:57 -04:00
liamwhite
4db4eeb321
Merge pull request #10676 from bunnei/fix-mi-5-android
...
android: EmulationActivity: Fix orientation on Mi Pad 5.
2023-06-08 21:53:51 -04:00
bunnei
571c5c728e
android: EmulationActivity: Fix orientation on Mi Pad 5.
2023-06-08 17:20:13 -07:00
Tokarev Artem
07000c5c4c
Fix potentially uninitialized local variable warning
2023-06-09 05:12:22 +05:00
Liam
2046bead0e
image_info: adjust rescale thresholds and refactor constant use
2023-06-08 17:46:40 -04:00
Liam
7e5be01a48
vk_blit_screen: use higher bit depth for fxaa
2023-06-08 11:27:57 -04:00
Kelebek1
ac23abacac
Combine vertex/transform feedback buffer binding into a single call
2023-06-08 12:13:27 +01:00
Liam
1b33ebdde2
nvnflinger: allow locking framerate during video playback
2023-06-08 01:15:51 -04:00
Morph
6b460f860e
nvdisp: Fix SingleCore frametime reporting
2023-06-07 22:04:02 -04:00
Morph
52a219cfe9
core_timing: Fix SingleCore cycle timer
2023-06-07 21:44:42 -04:00
Morph
1b83c7eab4
(wall, native)_clock: Add GetGPUTick
...
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
2023-06-07 21:44:42 -04:00
Morph
e25d41580b
time: Use compile time division for TimeSpanType conversion
2023-06-07 21:44:42 -04:00
Morph
2856fadaa0
core_timing: Use CNTPCT as the guest CPU tick
...
Previously, we were mixing the raw CPU frequency and CNTFRQ.
The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
2023-06-07 21:44:42 -04:00
Morph
fb3bb63880
nvnflinger: Acquire lock prior to signaling the vsync variable
2023-06-07 21:44:42 -04:00
Morph
c264630ba4
(wall, native)_clock: Rework NativeClock
2023-06-07 21:44:42 -04:00
Morph
728048edfe
x64: Deduplicate RDTSC usage
2023-06-07 21:44:42 -04:00
bunnei
400286b7a0
Merge pull request #10650 from qurious-pixel/android_tv
...
Android TV banner
2023-06-07 16:32:25 -07:00
qurious-pixel
2984cc4b30
remove version code declaration
2023-06-07 13:27:51 -07:00
liamwhite
c537713dc2
Merge pull request #10655 from Morph1984/msvc-cxx20
...
CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
2023-06-07 14:04:25 -04:00
liamwhite
06a6786a42
Merge pull request #10635 from mrcmunir/l4t-tx1-nvidia
...
Make VK_EXT_robustness2 optional
2023-06-07 14:04:14 -04:00
liamwhite
93372f503a
Merge pull request #10476 from ameerj/gl-memory-maps
...
OpenGL: Make use of persistent buffer maps in buffer cache
2023-06-07 14:03:57 -04:00
liamwhite
c2958ae5b6
Merge pull request #10583 from ameerj/ill-logic
...
AccelerateDMA: Fix incorrect check in Buffer<->Texture copies
2023-06-07 14:03:40 -04:00
liamwhite
c99586dc47
Merge pull request #10591 from keve1227/localized-game-icons
...
Localize game icons
2023-06-07 14:03:28 -04:00
Morph
4d37337551
CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
...
The latest version of MSVC STL brings C++23 standard library modules, which conflict with precompiled headers.
Disabling with /experimental:module- has no effect, so force C++20 in the meantime while we wait for module support in other compilers.
2023-06-06 20:20:09 -04:00
german77
4255ac45d1
service: nfc: Add backup support
2023-06-06 17:06:21 -06:00
Live session user
9cf85cb9e3
Android TV banner
2023-06-06 11:32:25 -07:00
Narr the Reg
fa13ede502
android: Set version code
2023-06-06 12:14:38 -06:00
Carlos Estrague / Mrc_munir
1de6e7a3e5
Updated to lexicographical order suggestions
2023-06-06 19:33:52 +02:00
Abandoned Cart
5e1a62e7af
android: Improve Gradle build configuration
2023-06-06 12:46:21 -04:00
lat9nq
7856e40be5
vk_device_info: Clean up includes [IWYU]
2023-06-06 01:54:44 -04:00
lat9nq
b381d140f9
vk_device_info: Add SPDX data
2023-06-06 01:54:44 -04:00
lat9nq
3263f49390
yuzu-qt: Load Vulkan device info at startup
...
Loading it when the configuration opens now incurs a noticeable delay.
We also don't need to rediscover the same data repeatedly each time the
configuration opens.
Moves vulkan device info discovery to yuzu's startup as opposed to the
configure_graphics constructor.
2023-06-06 01:54:44 -04:00
bunnei
5b8f185151
android: audio_core: sink_stream: Remove unnecessary check.
2023-06-05 21:47:36 -07:00
bunnei
31ad92b287
Merge pull request #10508 from yuzu-emu/lime
...
Project Lime - yuzu Android Port
2023-06-05 21:43:43 -07:00
Carlos Estrague / Mrc_munir
e450a7d28c
Make VK_EXT_robustness2 optional
...
For some reason nvidia implemented Vulkan 1.2 supported without support for VK_EXT_robustness2 in tegra X1/X2 .
Fix vulkan work in TX1/TX2 L4T drivers .
2023-06-06 06:32:47 +02:00
bunnei
f9db8b7c70
Merge pull request #10633 from t895/variable-surface-ratio
...
android: Use a custom view for changing emulation aspect ratio
2023-06-05 20:27:58 -07:00
bunnei
09ee7b07a0
Merge pull request #10578 from PabloG02/lime-firmware&logs
...
Add UI to import firmware and share logs
2023-06-05 17:41:19 -07:00
bunnei
c09c2c9292
android: HomeSettingsFragment: Use string resource for "Share log".
2023-06-05 17:40:43 -07:00
Charles Lombardo
f83acbd1ae
android: Use a custom view for changing emulation aspect ratio
...
Credit to the Skyline team for the FixedRatioSurfaceView.
2023-06-05 20:24:36 -04:00
bunnei
12f79c6844
Merge pull request #10611 from liamwhite/audio-deadlock
...
audio_renderer: resolve adsp thread deadlock shutdown
2023-06-05 17:15:19 -07:00
bunnei
eb0ebf2282
Merge pull request #10618 from t895/licenses
...
android: Add licenses page
2023-06-05 17:14:15 -07:00
PabloG02
582f6df48c
Address feedback
2023-06-06 00:07:54 +02:00
lat9nq
2556a6c78c
tz_manager: Fix comparison to wrong integer
2023-06-05 15:15:23 -04:00
lat9nq
c95977a29f
tz_manager: Implement missing transition times
...
time_zone_manager: Use s64 storage
2023-06-05 15:15:23 -04:00
lat9nq
021df7a2e1
tz_manager: Warn on unimplemented code
2023-06-05 15:15:23 -04:00
lat9nq
c82d11ff73
tz_manager: Fix character offset not advancing
2023-06-05 15:15:23 -04:00
lat9nq
95faad1413
tz_manager: Fix off-by-one error
2023-06-05 15:15:23 -04:00
lat9nq
5ab84435dc
time_zone: Handle offset time zones
...
time_zone: Remove maybe_unused
time_zone: Use s64 storages
time_zone: Catch by reference
2023-06-05 15:15:23 -04:00
lat9nq
60e705fd6d
time_zone_binary: Add zoneinfo data
...
Adds the basic time zone data for the system archive.
time_zone_binary: Implement full system archive
time_zone_binary: Remove unneeded template
tz_binary: Make GenerateFiles static
2023-06-05 15:15:23 -04:00
Narr the Reg
c934089969
time: Implement missing services
...
Implements GetTotalLocationNameCount LoadLocationNameList and
GetTimeZoneRuleVersion.
tz-manager: Fix sign issue
2023-06-05 15:15:11 -04:00
lat9nq
99d8774310
time_zone_manager: Implement go_ahead/go_back
2023-06-05 15:15:11 -04:00
lat9nq
bd9ab73ba8
tz_content_manager: Try the system time zone first
...
If we can't find the normal time zone string, try searching for the
closest one.
2023-06-05 15:15:11 -04:00
lat9nq
2c92d48491
common: Move system time zone string detection
...
Moves it from Settings to Common::TimeZone, since this algorithm doesn't
depend on the setting. It also lets us use it in other libraries.
common: Various fixes
time_zone: Don't double up the std::abs
Too many absolute values were causing mirrored time zones to resolve
as the same.
2023-06-05 15:15:11 -04:00
lat9nq
29c66764bb
configure_system: Remove external offset on custom rtc
2023-06-05 15:15:11 -04:00
lat9nq
a379c50acc
time: Remove auto timezone consideration
...
GetTimeZoneString no longer reports a setting unique to yuzu, so we
can assume a valid timezone string in core.
2023-06-05 15:15:11 -04:00
lat9nq
e2bb24f012
settings: Always report a valid time zone
...
Prevents needing to deduce the non-Switch setting in core. Instead, we
deduce the meaning of this setting where the heresy is committed, in
common.
settings: Remove strftime usage
GetTimeZoneString: Use standard features
Also forces GMT on MinGW due to broken strftime.
2023-06-05 15:15:11 -04:00
lat9nq
5ecd76f619
time_manager: Don't offset RTC by system time zone
...
This causes the emulated system's universal time to be on the user's clock, and the user time to
be off if they set a time zone.
time_manager: Remove GetExternalRtcTime
2023-06-05 15:15:11 -04:00
lat9nq
6457b99586
tz_content_manager: Detect system time zone
...
Uses C++20 tzdb to determine the system timezone. The switch uses the
597 posix time zones, so this needs tests if the system time zone isn't
posix-compliant.
2023-06-05 15:15:11 -04:00
Charles Lombardo
f51882a9ae
android: Create licenses page
2023-06-05 14:34:23 -04:00
bunnei
29d01cd2a7
Merge pull request #10613 from t895/settings-changes
...
android: String and settings organization changes
2023-06-04 19:17:42 -07:00
Charles Lombardo
079a3deced
android: Move settings to debug submenu
2023-06-04 19:53:27 -04:00
Charles Lombardo
73440cbb01
android: Load settings at the start of each activity
2023-06-04 19:37:10 -04:00
xcfrg
178b2a0b69
yuzu: add opengl shader backend info in status bar
2023-06-04 17:24:30 -04:00
bunnei
1c624b1b29
Merge pull request #10594 from liamwhite/double-patch
...
fsp-srv: avoid patching romfs multiple times
2023-06-04 13:24:47 -07:00
PabloG02
14665c97f2
Attempt to move the unzip coroutine to a ViewModel
2023-06-04 20:52:12 +02:00
PabloG02
25be1f62cd
android: update strings
2023-06-04 20:52:12 +02:00
PabloG02
1b3b1592ea
android: add option to share log
2023-06-04 20:52:12 +02:00
PabloG02
b63d3b7fce
android: add option to install firmware
2023-06-04 20:52:12 +02:00
PabloG02
3c15b89b78
android: move unzip function to FileUtil and use SecurityException
2023-06-04 20:50:00 +02:00
Charles Lombardo
546a2653b9
android: Several string changes
2023-06-04 13:30:56 -04:00
Liam
16bd50f9b4
audio_renderer: resolve adsp thread deadlock shutdown
2023-06-04 13:00:10 -04:00
bunnei
eb15ff27dd
Merge pull request #10588 from liamwhite/vfs-cached
...
vfs: add vfs_cached for romfs build
2023-06-03 23:23:45 -07:00
Abandoned Cart
d3b46a88af
android: Resolve a couple Gradle warnings
2023-06-04 02:06:38 -04:00
Abandoned Cart
fa02375617
android: Add support for split foldable view
2023-06-03 22:57:28 -04:00
Kevin Sundqvist Norlén
596dc7ebb7
Fix typo
...
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2023-06-03 21:31:44 +02:00
Abandoned Cart
b360aa794e
android: Replace deprecated and Java code
2023-06-03 15:16:25 -04:00
Liam
22d0bf11f1
fsp-srv: avoid patching romfs multiple times
2023-06-03 14:27:08 -04:00
Keve1227
0cadb7a705
Update Chinese NX language names
...
... as per the TLoZ: TotK icon files. Would this conflict with older games?
2023-06-03 17:23:14 +02:00
Keve1227
69daffcc2f
Issue a reload if the system language changed
2023-06-03 17:17:03 +02:00
Keve1227
7f4c596af2
Pick game icon based on the configured system language
2023-06-03 17:13:24 +02:00
Liam
445948d297
romfs: use vfs_cached for romfs output
2023-06-03 08:56:59 -04:00
Liam
3fd364d3bb
vfs: add vfs_cached for romfs build
2023-06-03 08:50:54 -04:00
Charles Lombardo
80069f2bc4
android: Fix crash on importing invalid save
2023-06-03 00:06:08 -07:00
bunnei
f4dd94ab58
android: vk_presentation_manager: Fix unusued needs_recreation.
2023-06-03 00:06:08 -07:00
Charles Lombardo
82cf343786
android: Rename "Input Overlay" to "Overlay Options"
2023-06-03 00:06:08 -07:00
Charles Lombardo
53547f7f37
android: Adjust import/export saves dialog
2023-06-03 00:06:08 -07:00
Charles Lombardo
30c65465d8
android: Warning dialogs for key errors
2023-06-03 00:06:08 -07:00
bunnei
8e9813a618
android: vk_turbo_mode: Remove unnecessary device recreation.
...
- Fixes a rare crash.
2023-06-03 00:06:08 -07:00
bunnei
cb077cc1b0
android: EmulationFragment: Remove unnecessary surface destroy on pause.
2023-06-03 00:06:08 -07:00
bunnei
fb362f0b6e
android: renderer_vulkan: Fix crash with surface recreation.
2023-06-03 00:06:07 -07:00
bunnei
d57495d3c0
android: Fix presentation layout on foldable and tablet devices.
2023-06-03 00:06:07 -07:00
Charles Lombardo
cbfc1d7809
android: Enable overlay scale/opacity dialog
2023-06-03 00:06:07 -07:00
PabloG02
09bbcceec6
Add image to card_game.xml to preview in the Layout Editor
2023-06-03 00:06:07 -07:00
PabloG02
aa5437bc16
Save the position of buttons as a percentage
2023-06-03 00:06:07 -07:00
Charles Lombardo
0153f39bc1
android: Don't crash the app when selecting a zip that causes a SecurityException
2023-06-03 00:06:07 -07:00
bunnei
122ff50c1a
input_common: Fix virtual amiibos
2023-06-03 00:06:06 -07:00
bunnei
bbd4f9c722
android: audio_core: Avoid shutdown hang.
2023-06-03 00:06:06 -07:00
bunnei
a7696575f1
android: ForegroundService: Handle null intent.
2023-06-03 00:06:06 -07:00
bunnei
a01f8ae529
android: ImportExportSavesFragment: Cleanup strings.
2023-06-03 00:06:06 -07:00
bunnei
29f677f10d
Update src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/ImportExportSavesFragment.kt
2023-06-03 00:06:06 -07:00
PabloG02
5091df34bf
Remove `?.`
2023-06-03 00:06:06 -07:00
PabloG02
b96e520f89
Check if folder exists before letting the user import/export saves
2023-06-03 00:06:06 -07:00
PabloG02
fdfea60242
Add save import/export in UI
2023-06-03 00:06:06 -07:00
Charles Lombardo
57afc35f1a
android: Fix FPS text getting cut off by rounded display corners
2023-06-03 00:06:05 -07:00
Charles Lombardo
074fc0bc13
android: Prevent deleting the settings file while a game is running
2023-06-03 00:06:05 -07:00
Charles Lombardo
64110e582c
android: Fix link text color for base theme dialog
2023-06-03 00:06:05 -07:00
bunnei
04eabc45e5
android: Various fixes for CI.
2023-06-03 00:06:05 -07:00
bunnei
cb9ba1b004
android: externals: Update libadrenotools, use useLegacyPackaging.
2023-06-03 00:06:05 -07:00
Charles Lombardo
70b013ab2f
android: Re-enable service notification
2023-06-03 00:06:05 -07:00
Charles Lombardo
ecdbaecea2
android: Ensure keys are loaded before populating games list
2023-06-03 00:06:05 -07:00
Charles Lombardo
aadc63e1b5
android: Use dialog fragment for the reset settings dialog
2023-06-03 00:06:05 -07:00
Charles Lombardo
1ca8ba6864
android: Upgrade AGP to 8.0.2
2023-06-03 00:06:04 -07:00
Charles Lombardo
f4077c398b
android: Show notification permission page during setup
2023-06-03 00:06:04 -07:00
Charles Lombardo
aa9911ade5
android: DIsable FPS counter by default
2023-06-03 00:06:04 -07:00
Charles Lombardo
dbe7cc58e3
android: Improve searches with one character
...
The Jaccard algorithm is great for searches with 2 or more characters but nothing is returned for searches with one character. To get around this, just search with JaroWinkler for single character searches.
2023-06-03 00:06:04 -07:00
Charles Lombardo
15e3bb4cfb
android: Stop building x86 packages in APKs
...
This was really only meant for building the app to run in an emulator. If this is necessary, just add manually.
2023-06-03 00:06:04 -07:00
Charles Lombardo
f2e0a38157
android: Add FPS toggle
2023-06-03 00:06:04 -07:00
Charles Lombardo
75ae2c948e
android: Clean up app build.gradle
...
Removes the conflicting declaration of "version" and changes to versionCode that did nothing.
2023-06-03 00:06:04 -07:00
bunnei
445a1f1b18
video_core: vk_rasterizer: Decrease draw dispatch count for Android.
2023-06-03 00:06:04 -07:00
bunnei
803c50a861
android: config: Expose VSync as a configurable setting.
2023-06-03 00:06:04 -07:00
bunnei
230dd8192d
android: GPU: Enable async presentation, increase frames in flight.
2023-06-03 00:06:03 -07:00
Charles Lombardo
bb48ac9fe3
android: Enable onBackInvokedCallback
...
For now this enables the ability to see the new Android 13 back gesture animations but later we can create custom animations that follow the back gesture.
2023-06-03 00:06:03 -07:00
Charles Lombardo
a7fa14edd3
android: Remove deprecated use of onBackPressed()
2023-06-03 00:06:03 -07:00
Charles Lombardo
83bd1cf20c
android: Add option for touch overlay haptics
...
Disabled by default
2023-06-03 00:06:03 -07:00
Charles Lombardo
5341f58f2f
android: Improve missing game handling
...
Previously the app would crash if you selected a game that no longer existed. Now we show an error message and reload the games list to remove any invalid games from the list.
2023-06-03 00:06:03 -07:00
Charles Lombardo
f0beadece2
android: Clean up dependencies
...
Additionally updates material and androidx core libraries
2023-06-03 00:06:03 -07:00
Charles Lombardo
e470a37e61
android: Delete java code style file
2023-06-03 00:06:03 -07:00
Charles Lombardo
04afc03500
android: Settings UI tweaks
...
New spacing and fonts for list items
2023-06-03 00:06:03 -07:00
Charles Lombardo
3dbe044910
android: Simplify setup in search and games fragments
2023-06-03 00:06:03 -07:00
Charles Lombardo
cb564b067b
android: Use collapsing toolbar layout in settings
2023-06-03 00:06:03 -07:00
Charles Lombardo
d0d7e555aa
android: Remove unnecessary JvmStatic/JvmField annotations
2023-06-03 00:06:02 -07:00
Charles Lombardo
00d0a93e65
android: Fix navigation rail animation in rtl layout
2023-06-03 00:06:02 -07:00
Charles Lombardo
39de6c6e54
android: Use cutout insets on setup fragment
2023-06-03 00:06:02 -07:00
Charles Lombardo
54bf98ef0b
android: Button to reset all settings
2023-06-03 00:06:02 -07:00
Charles Lombardo
3c6b472134
android: Use proguard file in relWithDebInfo
2023-06-03 00:06:02 -07:00
Charles Lombardo
537fcc8339
android: Fix background color within inset areas
2023-06-03 00:06:02 -07:00
Charles Lombardo
715f83a060
android: Shortcut to settings activity on reselection
2023-06-03 00:06:01 -07:00
Charles Lombardo
6be54d1aa8
android: Expose custom RTC setting
2023-06-03 00:06:01 -07:00
Charles Lombardo
6b1767ac32
android: Reset setting on long press
2023-06-03 00:06:01 -07:00
Charles Lombardo
5fd13f02fd
android: Fix issues with ea/main icons and version codes
...
Now all yuzu icon variants are taken care of and now we have a build variant that uses the versioning we need for the play store.
2023-06-03 00:06:01 -07:00
Charles Lombardo
5fa9b35e3f
android: Move theme options out of advanced settings
2023-06-03 00:06:01 -07:00
Charles Lombardo
a3844cc597
android: Check if cached games are valid
...
Fixes bug when you close yuzu, delete games, and reopen to an instant crash.
2023-06-03 00:06:01 -07:00
german77
3e1613dc20
android: Invert rotation to match phone orientation
2023-06-03 00:06:01 -07:00
bunnei
c55db7e03d
android: vulkan_device: Skip BGR565 emulation on S8gen2.
2023-06-03 00:06:01 -07:00
bunnei
576cfa137b
android: config: Use default anisotropic filtering.
2023-06-03 00:06:01 -07:00
Charles Lombardo
7c5e6bc895
android: Remove top padding from in game menu items
2023-06-03 00:06:00 -07:00
Charles Lombardo
c478f51b46
android: Use different icons for mainline/ea
2023-06-03 00:06:00 -07:00
Charles Lombardo
7072a9b19c
android: Add early access upgrade fragment
...
We now have a second build flavor that will determine whether the "Get Early Access" button appears.
2023-06-03 00:06:00 -07:00
bunnei
4e2cdf74a3
android: vulkan_device: Only compile OverrideBcnFormats when used.
2023-06-03 00:06:00 -07:00
Liam
5d9250daf4
android: remove spurious warnings about BCn formats when patched with adrenotools
2023-06-03 00:06:00 -07:00
bunnei
ac32fd08e9
android: video_core: Disable some problematic things on GPU Normal.
2023-06-03 00:06:00 -07:00
bunnei
0f676451b3
android: settings: Use mailbox vsync by default.
2023-06-03 00:06:00 -07:00
bunnei
baa09b9cef
android: video_core: Disable problematic compute shaders.
...
- Fixes #104 .
2023-06-03 00:06:00 -07:00
Charles Lombardo
053f0fb1fe
android: Update progard to fix settings crash
...
R8 full mode was removing important classes from Wini that would cause a crash on saving settings. This keeps the relevant classes and suppresses warnings about irrelevant ones.
2023-06-03 00:05:59 -07:00
bunnei
2650faea9d
android: vulkan: Recreate surface after suspension & adapt to async. presentation.
2023-06-03 00:05:59 -07:00
Charles Lombardo
710e19a4bb
android: Game data cache
2023-06-03 00:05:59 -07:00
Charles Lombardo
50187bc017
android: Update to Kotlin 1.8.21
2023-06-03 00:05:59 -07:00
Charles Lombardo
1601f9e435
android: Disable jetifier
...
We no longer depend on any legacy libraries that required this flag
2023-06-03 00:05:59 -07:00
Charles Lombardo
76108cee0a
android: Update dependencies
2023-06-03 00:05:59 -07:00
Charles Lombardo
1367956b05
android: Migrate to AGP 8.0.1
2023-06-03 00:05:59 -07:00
Charles Lombardo
3c3f7dcf2e
android: Enable non-transitive R classes
...
New default going forward for new android projects. Best to follow the new standard.
2023-06-03 00:05:59 -07:00
bunnei
4059d2f11d
android: config: Enable asynchronous presentation by default on Android.
2023-06-03 00:05:59 -07:00
bunnei
3571f28cde
video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise.
2023-06-03 00:05:58 -07:00
german77
91596d5fd5
android: fix deadzone calculation
2023-06-03 00:05:58 -07:00
Charles Lombardo
da26114d3f
android: Fix background color when starting emulation
2023-06-03 00:05:58 -07:00
Charles Lombardo
2071d4fdc1
android: Persistent scrollbars on home settings fragment
2023-06-03 00:05:58 -07:00
Charles Lombardo
7930f6ea5d
android: Use short build hash
2023-06-03 00:05:58 -07:00
Charles Lombardo
fcebfe8943
android: Use navigation bar shade view
2023-06-03 00:05:58 -07:00
Charles Lombardo
c1a972d2a7
android: About fragment
2023-06-03 00:05:58 -07:00
Charles Lombardo
6a38aa2a7d
android: Use x-axis animation for navigation rail
2023-06-03 00:05:58 -07:00
Charles Lombardo
dfd0055339
android: Sort games alphabetically by default
2023-06-03 00:05:58 -07:00
Charles Lombardo
3287ba7d91
android: New icons for navigation bar
2023-06-03 00:05:57 -07:00
Charles Lombardo
790445276e
android: New icons for home settings fragment
2023-06-03 00:05:57 -07:00
Charles Lombardo
0928955a44
android: Add navigation rail
2023-06-03 00:05:57 -07:00
Charles Lombardo
0c04d1be50
android: Search Fragment
2023-06-03 00:05:57 -07:00
Charles Lombardo
932a6f42a2
android: Fix potential zip traversal exploit
2023-06-03 00:05:57 -07:00
german77
c7f27b72be
android: Add dedicated show overlay checkbox
2023-06-03 00:05:57 -07:00
Charles Lombardo
e53f927cb6
android: Add user directory shortcut
2023-06-03 00:05:57 -07:00
german77
87eacd09a0
android: Fix inline keyboard input
2023-06-03 00:05:57 -07:00
Charles Lombardo
766347e44d
android: Fix grammatical mistake in video core error message
2023-06-03 00:05:56 -07:00
Charles Lombardo
4010d5e9a3
android: Adjust wording on GPU driver install button
2023-06-03 00:05:56 -07:00
Narr the Reg
9d1c4a25a0
android: Add deadzone to stick input
2023-06-03 00:05:56 -07:00
german77
de7428c61e
android: Move motion listener to emulation activity
2023-06-03 00:05:56 -07:00
Narr the Reg
c4925fc96a
core: hid: Finish linking motion from virtual controllers
2023-06-03 00:05:56 -07:00
Charles Lombardo
06104b04b6
android: Change wording for "Add Games" button ( #100 )
...
Co-authored-by: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:56 -07:00
Charles Lombardo
2e39fbd326
android: Scroll shortcut for games list
...
If you reselect the "Games" menu item in the bottom navigation menu, the list smoothly scrolls to the top.
2023-06-03 00:05:56 -07:00
Charles Lombardo
1113a08228
android: Setup screen hotfix
...
Added help button link for add games warning and a check for whether a task was completed on a given screen.
2023-06-03 00:05:56 -07:00
Charles Lombardo
92ce6a09cc
android: Swap Default and Install buttons for GPU driver installation dialog
2023-06-03 00:05:56 -07:00
Charles Lombardo
84be5142e1
android: Add warnings to setup screens
2023-06-03 00:05:56 -07:00
Charles Lombardo
1684d4905f
android: Allow search bar to scroll offscreen
2023-06-03 00:05:55 -07:00
Charles Lombardo
c191c5e33b
android: Update app icon
...
Small icon updates from Flam
2023-06-03 00:05:55 -07:00
Charles Lombardo
86c037531e
android: Change organization of the settings tab in the home screen
2023-06-03 00:05:55 -07:00
Charles Lombardo
e749fa534c
android: Properly pop setup fragment from the back stack
2023-06-03 00:05:55 -07:00
Charles Lombardo
fa3dbb7f01
android: Vertically scalable setup pages
...
Previously the setup pages would remain at a fixed height but now the icon and two text boxes will give up space as a device gets shorter. This eliminates the need for a scrolling view further problems with padding.
2023-06-03 00:05:55 -07:00
Charles Lombardo
7c08648906
android: Fix setup rotation bug
...
If you rotated the device at the "Add Games" screen the buttons would disappear until you trigged them from the beginning page swap. Now button state is saved across recreation.
2023-06-03 00:05:55 -07:00
Charles Lombardo
07d295f231
android: Temporarily switch for a fixed version code for testing
2023-06-03 00:05:55 -07:00
Charles Lombardo
f0ea804186
android: Fix alignment of SwipeRefreshLayout
2023-06-03 00:05:55 -07:00
Charles Lombardo
4677e684ec
android: Shape/spacing adjustments to game card
...
Ripple effect now reaches into rounded corners, icon size changed, company text removed, title font adjusted, and spacing around the card was adjusted as well. Text also doesn't get cut off anymore and instead scrolls indefinitely on one line.
2023-06-03 00:05:55 -07:00
Charles Lombardo
aa6a2ec832
android: Manual tweaks for dialog colors
...
Small fix for Flam
2023-06-03 00:05:54 -07:00
Charles Lombardo
4e727a4abf
android: Fix black backgrounds bug
...
Start using a specific night mode check because black backgrounds could apply incorrectly when using the light app mode, dark system mode, and black backgrounds. Launching the settings activity will show light mode colors/navigation bars but with black backgrounds.
2023-06-03 00:05:54 -07:00
Charles Lombardo
6b3335cf12
android: Use navigation bar shade view for settings activity
2023-06-03 00:05:54 -07:00
Charles Lombardo
f74a2c1bfa
android: Disable editing themes during emulation
2023-06-03 00:05:54 -07:00
Charles Lombardo
a38c9d2651
android: Prevent situation where binding is called on a null view
2023-06-03 00:05:54 -07:00
Charles Lombardo
744ec1961c
android: Add black backgrounds toggle
2023-06-03 00:05:54 -07:00
Charles Lombardo
c24322ce4c
android: Add theme mode picker
2023-06-03 00:05:54 -07:00
Charles Lombardo
ab3ff694d5
android: Add theme picker
2023-06-03 00:05:54 -07:00
Charles Lombardo
119fe3996d
android: Prevent potential abstract settings crash
2023-06-03 00:05:54 -07:00
Charles Lombardo
77131b8ab0
android: Fix cast for abstract settings
2023-06-03 00:05:54 -07:00
Charles Lombardo
7f765aa0a1
android: Create xml for Material You theme
2023-06-03 00:05:54 -07:00
Charles Lombardo
386aaea2b3
android: Remove check for API 29 in themes
2023-06-03 00:05:53 -07:00
Charles Lombardo
0f6270ca65
android: Adjustments to home option card
...
Several spacing/color adjustments provided by Flam
2023-06-03 00:05:53 -07:00
Charles Lombardo
55a2496645
android: Use different colors for logo in options menu
...
Reverting to the official logo colors
2023-06-03 00:05:53 -07:00
Charles Lombardo
80e38750aa
android: New default theme colors
2023-06-03 00:05:53 -07:00
Charles Lombardo
0d689b87e9
android: Use libnx default icon
...
Credit to jaames for the original icon
2023-06-03 00:05:53 -07:00
Liam
96e9f4d582
android: enable LTO
2023-06-03 00:05:53 -07:00
Charles Lombardo
97286fee7e
android: Show error if invalid keys file is selected
...
There aren't MIME types specific enough for filtering out files that aren't amiibo or production keys. So here we just check for the extensions "bin" or "keys" where appropriate and stop the process if incorrect. Previously you could select any document and it could cause the app to hang.
2023-06-03 00:05:53 -07:00
Charles Lombardo
159d55223b
android: Fix first time setup scrolling bug
...
If you quickly scrolled from the second page to the first and then back, the next/back buttons would disappear.
2023-06-03 00:05:53 -07:00
Charles Lombardo
61864877d7
android: Fix A button preference key
2023-06-03 00:05:53 -07:00
Charles Lombardo
bdf4119fa4
android: First time setup screen
2023-06-03 00:05:52 -07:00
Charles Lombardo
fe113db2f2
android: Prevent editing unsafe settings at runtime
...
There currently isn't a visual "disabled" cue for any of the view holders that aren't the switch setting. This will be improved in the future.
2023-06-03 00:05:52 -07:00
Charles Lombardo
e691d74a1a
android: Abstract settings
...
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support!
2023-06-03 00:05:52 -07:00
german77
f88fce2c11
android: Implement gamepad input
2023-06-03 00:05:52 -07:00
Charles Lombardo
0d2549b062
android: Bump minimum version to Android 11
2023-06-03 00:05:52 -07:00
Charles Lombardo
373eab5529
android: Decouple status bar shade from navigation bar visibility
2023-06-03 00:05:52 -07:00
Charles Lombardo
0ee7e74fb8
android: Enable code minification
2023-06-03 00:05:52 -07:00
Charles Lombardo
75d3612139
android: Switch from a colored status bar to a custom view
...
Allows for smoother transitions with the search bar
2023-06-03 00:05:52 -07:00
Charles Lombardo
ac8bcc98a4
android: Adjustments to card_game
...
Removed a currently unused text view and moved to material text views.
2023-06-03 00:05:51 -07:00
Charles Lombardo
f556705914
android: MainActivity overhaul
...
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity.
fdas
2023-06-03 00:05:51 -07:00
Charles Lombardo
6735b5dd2a
android: Enforce Vulkan 1.1 support as minimum
2023-06-03 00:05:51 -07:00
Charles Lombardo
1c23ed27dd
android: Update gradle version to 8.1
2023-06-03 00:05:51 -07:00
Charles Lombardo
929e93f0b5
android: Update app dependencies
2023-06-03 00:05:51 -07:00
Charles Lombardo
ea8a2aa8c8
android: Convert gradle scripts to Kotlin DSL
2023-06-03 00:05:51 -07:00
bunnei
2810793b17
android: vulkan: Disable vertex_input_dynamic_state on Qualcomm.
2023-06-03 00:05:51 -07:00
bunnei
9cba432a12
android: settings: Add scaling filter & anti-aliasing options. ( #66 )
2023-06-03 00:05:50 -07:00
bunnei
da0db2da17
android: video_core: Add support for disk shader cache. ( #64 )
2023-06-03 00:05:50 -07:00
bunnei
e8efc6121d
android: vulkan_debug_callback: Ignore many innocuous errors.
2023-06-03 00:05:50 -07:00
bunnei
9a9c860d55
android: config: Change docked mode and GPU accuracy to favor performance on Android.
2023-06-03 00:05:50 -07:00
german77
8da09657e6
service: account: Save user profile folder on first user creation
2023-06-03 00:05:50 -07:00
german77
a21d1dcd1e
android: Initialize account manager
2023-06-03 00:05:50 -07:00
german77
ea63f26a20
android: Remove unsafe null check
2023-06-03 00:05:50 -07:00
Charles Lombardo
5b201decb8
android: Scale input overlay independently of system display scale
2023-06-03 00:05:50 -07:00
Charles Lombardo
61346cfe43
android: Use apply instead of commit for shared preferences
...
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences.
2023-06-03 00:05:50 -07:00
Charles Lombardo
4b3b59611b
android: Add DPad slide toggle
2023-06-03 00:05:50 -07:00
Charles Lombardo
9f477c9592
android: Add relative stick center toggle
2023-06-03 00:05:49 -07:00
Charles Lombardo
5880b3d18d
android: Make hash and branch accessible from BuildConfig
2023-06-03 00:05:49 -07:00
Charles Lombardo
c04cc1b4f4
android: Backup shared preferences where applicable
2023-06-03 00:05:49 -07:00
Charles Lombardo
e9aa7de8d2
android: Enable retaining app data after uninstall
2023-06-03 00:05:49 -07:00
Charles Lombardo
aeeb148d1a
android: Remove unused doFrame function
2023-06-03 00:05:49 -07:00
Charles Lombardo
485074b57f
android: Convert NativeLibrary to Kotlin
2023-06-03 00:05:49 -07:00
Charles Lombardo
939dc1813e
android: Remove LocalBroadcastManager
...
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready.
This additionally removes the unused DoFrame callback.
2023-06-03 00:05:49 -07:00
Charles Lombardo
f41bca4873
android: Remove game database
...
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel.
2023-06-03 00:05:49 -07:00
Charles Lombardo
df2e69f896
android: Adjust game icon loading
2023-06-03 00:05:49 -07:00
Charles Lombardo
229c4f5895
android: Remove unused dimensions files
2023-06-03 00:05:48 -07:00
Charles Lombardo
7c887a4901
android: Slightly reduce game card size
2023-06-03 00:05:48 -07:00
Charles Lombardo
157c5286c1
android: Only show company text view if it has content
2023-06-03 00:05:48 -07:00
Charles Lombardo
40d7b3724b
android: Fix check for ok text in software keyboard
2023-06-03 00:05:48 -07:00
Narr the Reg
9d11e03d61
android: Implement amiibo reading from nfc tag
2023-06-03 00:05:48 -07:00
bunnei
bf598273e9
android: vulkan_device: Disable VK_EXT_custom_border_color on Adreno.
...
- Causes crashes on sampler creation with Super Mario Odyssey.
2023-06-03 00:05:48 -07:00
Charles Lombardo
702b1a30ad
android: Add toggle controls option to input overlay
2023-06-03 00:05:48 -07:00
Charles Lombardo
8c40cdbb5c
android: Do not update FPS text on null view
2023-06-03 00:05:48 -07:00
Charles Lombardo
03275e4114
android: Convert keyboard applet to kotlin and refactor
2023-06-03 00:05:48 -07:00
bunnei
3a4270dbc2
android: Implement basic software keyboard applet.
2023-06-03 00:05:47 -07:00
bunnei
f3dfb76eb6
android: config: Disable shader cache by default on Android.
2023-06-03 00:05:47 -07:00
german77
2e0e20e86b
android: Fix fps counter not showing up
2023-06-03 00:05:47 -07:00
Charles Lombardo
4a06d464ff
android: Prevent showing games on an invalid view
2023-06-03 00:05:47 -07:00
Charles Lombardo
a8834fa20c
android: Re-implement overlay editing
2023-06-03 00:05:47 -07:00
Charles Lombardo
bbee31810f
android: Fix popup menu going out of bounds
2023-06-03 00:05:47 -07:00
Charles Lombardo
5e2695275e
android: Use autofit grid for games fragment
2023-06-03 00:05:47 -07:00
Charles Lombardo
8962c3456f
android: Prevent updating empty game list text on invalid view
2023-06-03 00:05:47 -07:00
Charles Lombardo
8a76f253e4
android: Persist settings across configuration changes
...
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle.
2023-06-03 00:05:47 -07:00
Charles Lombardo
4bc0f87d96
android: Store settings object in viewmodel
2023-06-03 00:05:47 -07:00
Charles Lombardo
8fa08abdb3
android: Remove configChanges exceptions
2023-06-03 00:05:46 -07:00
Charles Lombardo
188516a016
Android: Enable resizeable activities
2023-06-03 00:05:46 -07:00
Charles Lombardo
59b20e67da
android: Fix emulation fragment comments
2023-06-03 00:05:46 -07:00
Charles Lombardo
947e46ef2e
android: Use modal navigation drawer as in game menu
2023-06-03 00:05:46 -07:00
Charles Lombardo
99d76acb77
android: Make Game class parcelable
2023-06-03 00:05:46 -07:00
Charles Lombardo
c41072feb0
android: Add kotlin parcelize plugin
2023-06-03 00:05:46 -07:00
Charles Lombardo
ef1b2561ef
android: Remove deprecated use of onActivityResult
2023-06-03 00:05:46 -07:00
Charles Lombardo
bb5faf6558
android: Fix RTL layouts
2023-06-03 00:05:46 -07:00
Charles Lombardo
f7fc5d6e07
android: Use ellipsis character
2023-06-03 00:05:46 -07:00
Charles Lombardo
6d28b14f2d
android: Move all array strings to main strings file
2023-06-03 00:05:46 -07:00
Charles Lombardo
c86d7eb8c2
android: Remove unused strings
2023-06-03 00:05:45 -07:00
Charles Lombardo
49417520ef
android: Remove unused colors
2023-06-03 00:05:45 -07:00
Charles Lombardo
5fd53f09c3
android: Remove citra date time picker
2023-06-03 00:05:45 -07:00
Charles Lombardo
f4fdf5a4ce
android: Remove unused premium header layout
2023-06-03 00:05:45 -07:00
Charles Lombardo
1c00ddcd05
android: Remove unused fragment animations
2023-06-03 00:05:45 -07:00
Charles Lombardo
4155bd2144
android: Remove unused string arrays
2023-06-03 00:05:45 -07:00
Charles Lombardo
85e9d656b9
android: Remove unused integer xmls
2023-06-03 00:05:45 -07:00
Charles Lombardo
155ce37214
android: Refactor ic_launcher.xml to drawables
2023-06-03 00:05:45 -07:00
Charles Lombardo
b17d58b523
android: Suppress lint in InsetsHelper
2023-06-03 00:05:45 -07:00
Charles Lombardo
8add51924f
android: Add data extraction rules
2023-06-03 00:05:44 -07:00
Charles Lombardo
9af7547774
android: Remove requestLegacyExternalStorage attribute
2023-06-03 00:05:44 -07:00
Charles Lombardo
cfb821e680
android: Remove unused permissions
2023-06-03 00:05:44 -07:00
Charles Lombardo
4330135912
android: Inset input overlay based on system cutouts
2023-06-03 00:05:44 -07:00
Narr the Reg
1eb2e781ff
Use yuzu as category instead of citra
2023-06-03 00:05:44 -07:00
Charles Lombardo
6cebdba191
android: Stop updating fps counter when emulation stops
2023-06-03 00:05:44 -07:00
Charles Lombardo
5ef7478141
android: Move driver installation off of main thread
...
Additionally creates an indeterminate loading dialog during installation
2023-06-03 00:05:44 -07:00
Charles Lombardo
8ee6154d6d
android: Fix crash when decodeGameIcon creates a null Bitmap
2023-06-03 00:05:44 -07:00
Charles Lombardo
3e088c768b
android: Use view binding
2023-06-03 00:05:44 -07:00