Compare commits

...

96 commits

Author SHA1 Message Date
29f7c7d1b9
Merge branch 'Exverge-use-system-moltenvk' into dev 2024-03-22 09:43:40 +08:00
8bd3720d36
macos: Disable use of system MoltenVK
Co-authored-by: Nick Majkic <8842171-majkic65@users.noreply.gitlab.com>
2024-03-21 21:15:48 -04:00
Crimson-Hawk
b6ad090424
try to fix clang again 2024-03-21 19:53:25 +08:00
Crimson-Hawk
ab3e51e50d
fixes clang format error in !193 2024-03-21 19:36:05 +08:00
Maran Br
3dd0802be6 Fixes second controller not detected in DKTF and possibly other games 2024-03-21 11:20:49 +00:00
Miguel Rodriguez
d12b127c45 chore: fix CI to use string "true" for FASTZIP 2024-03-21 07:09:11 +00:00
995
383a243aa7 Update README.md 2024-03-20 21:53:10 +00:00
ddutchie
fec573fd6a Add Android Tag 2024-03-19 16:25:13 -04:00
JuanCStar
d0afa9b1ad fix: update web service urls 2024-03-19 20:21:09 +01:00
drHyperion451
3e7c0343bd Error handling for the icns generator script 2024-03-19 15:58:16 +00:00
Alessio
460b6be75f Radeon gpu profiler detection support 2024-03-18 23:23:57 +00:00
93dc7fb6b2 fix: Fixes compiling to non-Apple OSes on arm64 2024-03-18 23:11:32 +00:00
Levi Akatsuki
e0ff7d0a6e Fixed broken code in dev branch 2024-03-18 22:13:59 +00:00
Paulo Alfaiate
fb326514bf Update 2024-03-18 20:43:04 +00:00
Paulo Alfaiate
e9eb3f3799 Removing Warning 2024-03-18 18:29:11 +00:00
JuanCStar
5e9a855f1e Merge branch 'niansa-qlauncher' of https://gitlab.com/suyu-emu/suyu into niansa-qlauncher 2024-03-18 10:27:18 +01:00
JuanCStar
5eaab8d69b fix: typo error 2024-03-18 10:21:50 +01:00
niansa
b416389533 Run clang-format 2024-03-18 10:21:50 +01:00
niansa
2682e7739a Apply GetGroupInfo fix to ISfServiceMonitor too 2024-03-18 10:21:50 +01:00
niansa
2ba2db7795 Implemented some stubs for Health & Safety and corrected GetGroupInfo behavior 2024-03-18 10:21:50 +01:00
niansa
796ca02437 Stub out StartSleepSequence 2024-03-18 10:21:50 +01:00
niansa
2a148c7699 Implemented some basic sleep functions 2024-03-18 10:21:50 +01:00
Crimson Hawk
a24ee4b6c1 Update format tag in format stage 2024-03-18 09:16:46 +00:00
JuanCStar
f127dd881d Merge branch 'niansa-qlauncher' of https://gitlab.com/suyu-emu/suyu into niansa-qlauncher 2024-03-18 09:30:29 +01:00
JuanCStar
ee4fd3b2ce fix: typo error 2024-03-18 08:30:11 +00:00
niansa
c433758ed0 Run clang-format 2024-03-18 08:30:11 +00:00
niansa
7295a6c1ad Apply GetGroupInfo fix to ISfServiceMonitor too 2024-03-18 08:30:11 +00:00
niansa
94251409c1 Implemented some stubs for Health & Safety and corrected GetGroupInfo behavior 2024-03-18 08:30:11 +00:00
niansa
aaff9411ec Stub out StartSleepSequence 2024-03-18 08:30:11 +00:00
niansa
3075d74067 Implemented some basic sleep functions 2024-03-18 08:30:11 +00:00
JuanCStar
f085f7e917 fix: typo error 2024-03-18 09:28:27 +01:00
Nick Majkic
2ceae9a0c1 Nmajkic/clang fix 2024-03-18 03:47:40 +00:00
Nick Majkic
19c2b08ab4 Macos moltenvk headers 2024-03-18 02:45:38 +00:00
Nick Majkic
2a28c85ff9 Clean up CMAKE files for mac and xcode building 2024-03-18 00:47:18 +00:00
15b752d63e Corrected a Grammatical Error 2024-03-17 23:13:30 +00:00
3f178ae15e Android: Add ability to run Qlaunch 2024-03-17 05:55:39 +00:00
5aa53d12df feature: Store CCACHE cache in CI cache 2024-03-17 00:15:34 +00:00
Levi Akatsuki
8755d2bad4 Require both keys to use the emulator 2024-03-16 15:57:32 +00:00
Alessio
44ffa0092e Better surface logging 2024-03-16 13:08:01 +00:00
skyloft7
c74679edf3 Removed "we maintain builds" text 2024-03-16 03:07:53 +00:00
012bc479da Use SUYU_USE_FASTER_LD 2024-03-16 02:26:22 +00:00
niansa
8cd1409673 Use mold in CI script 2024-03-16 02:26:22 +00:00
Akatsuki Levi
714a68d594
fix: I hate lambdas 2024-03-15 21:47:58 -03:00
Akatsuki Levi
70d0df5e55
fix: Clang fix part 2: Electric bogaloo 2024-03-15 21:05:43 -03:00
Akatsuki Levi
94a84f5943
fix: CLang fix 2024-03-15 21:03:47 -03:00
Akatsuki Levi
c33ccfaa71
misc: Commented out build id 2024-03-15 20:36:57 -03:00
Akatsuki Levi
d34ec92720
fix: Fixed some favorite entries disappearing when show folders is off 2024-03-15 20:36:51 -03:00
Akatsuki Levi
b98bd24d6a
feat: Changed folders in list to be a toggleable option 2024-03-15 20:36:46 -03:00
Akatsuki Levi
bd9f1695cf
feat: Reduced clutter on game list 2024-03-15 20:36:41 -03:00
Akatsuki Levi
22f8b858a2
feat: Removed telemetry 2024-03-15 20:36:36 -03:00
Akatsuki Levi
269d113c29
fix: Increased max sensitivity for mouse panning 2024-03-15 20:36:32 -03:00
Akatsuki Levi
c4bb998c68
feat: Added Build ID on game properties panel 2024-03-15 20:36:23 -03:00
Levi Akatsuki
1157a4c1f9 Merge branch suyu:dev into features/qol-changes 2024-03-15 23:34:23 +00:00
ddutchie
5d8f3f7cb1 Revert "Quality-of-Life Improvements" 2024-03-15 22:26:16 +00:00
Levi Akatsuki
7fbffdaa11 Merge branch suyu:dev into features/qol-changes 2024-03-15 21:58:39 +00:00
Levi Akatsuki
e1538413e9 Quality-of-Life Improvements 2024-03-15 21:48:09 +00:00
Levi Akatsuki
6cb26ce7bc Merge branch suyu:dev into features/qol-changes 2024-03-15 21:45:23 +00:00
Akatsuki Levi
777587ef0e
fix: Clang fix 2024-03-15 18:23:54 -03:00
ddutchie
f1ef23cc6a Allow CLANG on both windows and linux as long as Parallelized tag is set 2024-03-15 21:11:45 +00:00
Akatsuki Levi
09c26cac1c misc: Commented out build id 2024-03-15 21:01:59 +00:00
Akatsuki Levi
748bda79aa fix: Fixed some favorite entries disappearing when show folders is off 2024-03-15 21:01:59 +00:00
Akatsuki Levi
8b6a4c21f3 feat: Changed folders in list to be a toggleable option 2024-03-15 21:01:59 +00:00
Akatsuki Levi
60d62a9277 feat: Reduced clutter on game list 2024-03-15 21:01:59 +00:00
Akatsuki Levi
45eac175db feat: Removed telemetry 2024-03-15 21:01:59 +00:00
Akatsuki Levi
578642944a fix: Increased max sensitivity for mouse panning 2024-03-15 21:01:59 +00:00
Akatsuki Levi
c3a09c8d23 feat: Added Build ID on game properties panel 2024-03-15 21:01:59 +00:00
Tx Mat
2dadadfd2e Added tags to ci 2024-03-15 19:55:53 +00:00
ddutchie
3a5d86fdfc Set allow_failure: false 2024-03-15 14:48:12 +00:00
ddutchie
ad12c0cb94 Fix Clang Formatting on Vulkan Device 2024-03-15 14:07:05 +00:00
niansa
45dd4afa1f Android CI: Fix wrong cwd if unshallow fails 2024-03-15 14:06:15 +00:00
ddutchie
aab8b02793 Use registry.gitlab.com/suyuemu/cibuild URLS 2024-03-15 13:41:16 +00:00
Alessio
cc7a70cb6d AMD still has broken extendedDynamicState3ColorBlendEquation on RDNA3. 2024-03-15 13:28:41 +00:00
niansa
bc4f5c38fe Removed sue-you wink wink 2024-03-15 11:48:13 +00:00
Alessio1989
47ab25dbf7 distinguish between moltenVK and other drivers. 2024-03-15 11:10:02 +00:00
niansa
8b395f188c Unshallow vcpkg in Android CI 2024-03-15 09:13:02 +00:00
ddutchie
e29c55dd98 CI Changes to Alow Building Linux and Android [From FORK] 2024-03-14 21:35:22 +00:00
niansa
3037f0b869 Fix clang-format error 2024-03-14 11:14:50 +01:00
Alessio
8b8aa84e70 fix for amd video playback (green videos) 2024-03-13 23:50:47 +00:00
Alessio
95bd1120a7 Vulkan dynamic state 3 blending should work correctly in AMD proprietary drivers now 2024-03-13 23:46:14 +00:00
Amir Abravesh
9895cc94d0 Updating moltenVK and macOS icon 2024-03-13 13:00:31 +00:00
84aa715eb1 feature: Use CCACHE if possible 2024-03-13 08:16:00 +00:00
b09f9ee1f4 Fix: add missing log.h header file 2024-03-13 05:45:06 +00:00
nullptr
8c64f9a34d chore: update web_api_url 2024-03-12 14:03:32 +00:00
JuanCStar
113b014b08 chore: re-enabled web service 2024-03-12 10:51:26 +01:00
JuanCStar
18baf880c4 fix: clang format 2024-03-12 09:13:35 +01:00
Levi Akatsuki
e5a954617b Improved Addons Manager 2024-03-12 04:30:44 +00:00
blitzingeagle
feb3b6ece3 Fix Android crash: search fragment navigation 2024-03-12 03:24:17 +00:00
Leon Denis
c41d9d62a3 Android Rebrand with working build 2024-03-12 02:30:43 +00:00
Nick Majkic
b2b769e45b Clyde/molten vk 64bit fix 2024-03-12 01:25:24 +00:00
JuanCStar
de83c5e6a6 fix: clang format 2024-03-11 11:00:10 +01:00
9afd74abde Added requirement for firmware upon game boot 2024-03-11 09:47:52 +00:00
niansa
9858de7fce Run clang-format 2024-03-10 02:29:40 +01:00
niansa
ad32b5371d Apply GetGroupInfo fix to ISfServiceMonitor too 2024-03-10 02:28:59 +01:00
niansa
8dae7d29d6 Implemented some stubs for Health & Safety and corrected GetGroupInfo behavior 2024-03-10 02:26:03 +01:00
niansa
72d4d7b1b8 Stub out StartSleepSequence 2024-03-09 19:19:35 +00:00
niansa
a1db3cb668 Implemented some basic sleep functions 2024-03-09 19:19:35 +00:00
353 changed files with 3441 additions and 3440 deletions

View file

@ -1,6 +1,6 @@
#!/bin/bash -ex
# SPDX-FileCopyrightText: 2019 yuzu Emulator Project & 2024 suyu Emulator Project
# SPDX-FileCopyrightText: 2019 yuzu Emulator Project
# SPDX-FileCopyrightText: 2024 suyu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later
# Exit on error, rather than continuing with the rest of the script.
@ -12,6 +12,8 @@ mkdir build || true && cd build
cmake .. \
-DBoost_USE_STATIC_LIBS=ON \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DSUYU_USE_PRECOMPILED_HEADERS=OFF \
-DDYNARMIC_USE_PRECOMPILED_HEADERS=OFF \
-DCMAKE_CXX_FLAGS="-march=x86-64-v2" \
-DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ \
-DCMAKE_C_COMPILER=/usr/lib/ccache/gcc \
@ -24,6 +26,7 @@ cmake .. \
-DSUYU_USE_BUNDLED_FFMPEG=ON \
-DSUYU_ENABLE_LTO=ON \
-DSUYU_CRASH_DUMPS=ON \
-DSUYU_USE_FASTER_LD=ON \
-GNinja
ninja

4
.gitignore vendored
View file

@ -4,6 +4,7 @@
# Build directory
[Bb]uild*/
doc-build/
cmake-build*/
# Generated source files
src/common/scm_rev.cpp
@ -14,6 +15,7 @@ dist/english_plurals/generated_en.ts
.idea/
.vs/
.vscode/
.cache/
CMakeLists.txt.user*
# *nix related
@ -36,3 +38,5 @@ CMakeSettings.json
# Windows global filetypes
Thumbs.db
# Local Gitlab CI Runner
.gitlab-ci-local/

65
.gitlab-ci.yml Normal file → Executable file
View file

@ -2,25 +2,82 @@ stages:
- format
- build
variables:
# https://docs.gitlab.com/ee/ci/runners/configure_runners.html
TRANSFER_METER_FREQUENCY: "2s"
ARTIFACT_COMPRESSION_LEVEL: "fast"
CACHE_COMPRESSION_LEVEL: "fastest"
CACHE_REQUEST_TIMEOUT: 5
# Use FASTZIP for faster compression in cache and artifacts (boolean)
# https://docs.gitlab.com/runner/configuration/feature-flags.html#available-feature-flags
FF_USE_FASTZIP: 1
# Our Variables
CACHE_DIR: "$CI_PROJECT_DIR/ccache"
CCACHE_DIR: $CACHE_DIR
#CLANG FORMAT - CHECKS CODE FOR FORMATTING ISSUES
clang-format:
stage: format
image: suyuemu/cibuild:linux-x64
variables:
RELEASE_NAME: mainline
image: suyuemu/cibuild:clangformat
#THIS HAS TO BE FALSE. IT KEEPS RESOURCES AVAILABLE - EG RUNNERS WONT TRY BUILDING IF CODEBASE IS WRONG
#MR's NEED TO BE CORRECTLY CLANG FORMATTED
allow_failure: false
script:
- git submodule update --init --depth 1 --recursive
- bash .ci/scripts/format/script.sh
tags:
# - Linux
# - Windows
- Parallelized
- Format
#LINUX BUILD - BUILDS LINUX APPIMAGE
build-linux:
stage: build
image: suyuemu/cibuild:linux-x64
resource_group: linux-ci
cache:
key: "$CI_COMMIT_REF_NAME-ccache"
paths:
- $CACHE_DIR
before_script:
- mkdir -p $CACHE_DIR
- chmod -R 777 $CACHE_DIR
- ls -la $CACHE_DIR
variables:
GIT_SUBMODULE_STRATEGY: recursive
GIT_SUBMODULE_DEPTH: 1
RELEASE_NAME: mainline
script:
- git submodule update --init --depth 1 --recursive
- bash .ci/scripts/linux/docker.sh
- bash .ci/scripts/linux/upload.sh
artifacts:
paths:
- artifacts/*
tags:
- Linux
- Parallelized
#ANDROID BUILD - BUILDS APK
android:
stage: build
image: suyuemu/cibuild:android-x64
script:
- apt-get update -y
- git submodule update --init --recursive
- cd externals/vcpkg
- git fetch --unshallow || true
- cd ../..
- export ANDROID_HOME="/usr/lib/android-sdk/"
- echo y | sdkmanager --sdk_root=/usr/lib/android-sdk --licenses
- bash ./.ci/scripts/android/build.sh
- bash ./.ci/scripts/android/upload.sh
artifacts:
paths:
- artifacts/*
tags:
- Android
- Parallelized

View file

@ -3,6 +3,9 @@
cmake_minimum_required(VERSION 3.22)
set(CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT OFF)
set(CMAKE_XCODE_EMIT_RELATIVE_PATH YES)
project(suyu)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
@ -30,7 +33,7 @@ set(QT6_LOCATION "" CACHE PATH "Additional Location to search for Qt6 libraries
option(ENABLE_QT_TRANSLATION "Enable translations for the Qt frontend" OFF)
CMAKE_DEPENDENT_OPTION(SUYU_USE_BUNDLED_QT "Download bundled Qt binaries" "${MSVC}" "ENABLE_QT" OFF)
option(ENABLE_WEB_SERVICE "Enable web services (telemetry, etc.)" OFF)
option(ENABLE_WEB_SERVICE "Enable web services (telemetry, etc.)" ON)
option(SUYU_USE_BUNDLED_FFMPEG "Download/Build bundled FFmpeg" "${WIN32}")
@ -70,6 +73,8 @@ CMAKE_DEPENDENT_OPTION(SUYU_USE_FASTER_LD "Check if a faster linker is available
CMAKE_DEPENDENT_OPTION(USE_SYSTEM_MOLTENVK "Use the system MoltenVK lib (instead of the bundled one)" OFF "APPLE" OFF)
option(USE_CCACHE "Use CCache for faster building" ON)
set(DEFAULT_ENABLE_OPENSSL ON)
if (ANDROID OR WIN32 OR APPLE)
# - Windows defaults to the Schannel backend.
@ -733,3 +738,17 @@ if(ENABLE_QT AND UNIX AND NOT APPLE)
install(FILES "dist/org.suyu_emu.suyu.metainfo.xml"
DESTINATION "share/metainfo")
endif()
# Enable CCACHE. Linux only for now.
if (USE_CCACHE)
find_program(CCACHE_PROGRAM ccache)
if(CCACHE_PROGRAM)
set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
if (SUYU_USE_PRECOMPILED_HEADERS)
message(NOTICE "To make use of CCache, set SUYU_USE_PRECOMPILED_HEADERS to OFF or else, it will barely be functional")
endif()
message(STATUS "CCache found.")
else()
message(STATUS "CCache has not been found and it will not be used. Install CCache or set USE_CCACHE to OFF")
endif()
endif()

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2017 yuzu Emulator Project
# SPDX-FileCopyrightText: 2017 yuzu Emulator Project & 2024 suyu Emulator Project
# SPDX-License-Identifier: GPL-2.0-or-later
# This function downloads a binary library package from our external repo.
@ -17,6 +17,9 @@ if (WIN32)
elseif (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
set(package_repo "ext-linux-bin/-/raw/main/")
set(package_extension ".tar.xz")
# elseif (APPLE)
# set(package_repo "ext-osx-bin/-/raw/main/")
# set(package_extension ".dmg")
elseif (ANDROID)
set(package_repo "ext-android-bin/-/raw/main/")
set(package_extension ".tar.xz")

View file

@ -5,5 +5,5 @@ SPDX-License-Identifier: GPL-2.0-or-later
Please check out the
* [Conributors's guide](https://gitlab.com/suyu-emu/suyu/-/wikis/Contributing).
* [Contributors's guide](https://gitlab.com/suyu-emu/suyu/-/wikis/Contributing).
* [Merge request guidelines](https://gitlab.com/suyu-emu/suyu/-/wikis/Merge-requests)

View file

@ -18,9 +18,9 @@ This repo is based on Yuzu EA 4176.
<br>
</h1>
<h4 align="center"><b>suyu</b>, pronounced "sue-you" (wink wink) is the continuation of the world's most popular, open-source, Nintendo Switch emulator, yuzu.
<h4 align="center"><b>suyu</b> is the continuation of the world's most popular, open-source, Nintendo Switch emulator, yuzu.
<br>
It is written in C++ with portability in mind, and we actively maintain builds for Windows, Linux and Android.
It is written in C++ with portability in mind, and we're actively working on builds for Windows, Linux and Android.
</h4>
<p align="center">
@ -51,10 +51,12 @@ You can also contact any of the developers on Discord to learn more about the cu
## Downloads
* __Windows__: WIP
* __Linux__: WIP
* __Windows__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases)
* __Linux__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases)
* __macOS__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases)
* __Android__: [Releases](https://gitlab.com/suyu-emu/suyu/-/releases)
We don't have any official builds yet! If any website or person is claiming to have a build for suyu, take that with a grain of salt, because it might contain malware. Until we do have an official build, it might be a better idea to keep using the last version of yuzu.
We have official builds [here.](https://gitlab.com/suyu-emu/suyu/-/releases) If any website or person is claiming to have a build for suyu, take that with a grain of salt.
## Building

View file

@ -1,14 +1,72 @@
mkdir suyu.iconset
convert -background none -resize 16x16 suyu.svg suyu.iconset/icon_16x16.png;
convert -background none -resize 32x32 suyu.svg suyu.iconset/icon_16x16@2x.png;
convert -background none -resize 32x32 suyu.svg suyu.iconset/icon_32x32.png;
convert -background none -resize 64x64 suyu.svg suyu.iconset/icon_32x32@2x.png;
convert -background none -resize 128x128 suyu.svg suyu.iconset/icon_128x128.png;
convert -background none -resize 256x256 suyu.svg suyu.iconset/icon_256x256.png;
convert -background none -resize 256x256 suyu.svg suyu.iconset/icon_128x128@2x.png;
convert -background none -resize 512x512 suyu.svg suyu.iconset/icon_256x256@2x.png;
convert -background none -resize 512x512 suyu.svg suyu.iconset/icon_512x512.png;
convert -background none -resize 1024x1024 suyu.svg suyu.iconset/icon_512x512@2x.png;
#!/bin/bash
# icns_generator.sh GNU GPLv3 License
# Run this script when a new logo is made and the svg file inside.
# You should install Imagemagick to make the conversions: $brew install imagemagick
iconutil -c icns suyu.iconset
rm -rf suyu.iconset
# Change working dir to where this script is located.
cd "${0%/*}"
if [ -z $1 ]; then
echo "icns_generator.sh GNU GPLv3 License"
echo "Run this script when a new logo is made and the svg file inside."
echo ""
echo "Syntax: ./icns_generator <input.svg>"
echo ""
echo "Don't forget to install imagemagick: "
echo "$ brew install imagemagick"
exit 0
fi
# Error Handling Stuff:
## Check command availability
check_command() {
if ! command -v "$1" &> /dev/null; then
read -s -n 1 -p "Error: '$1' command not found. Please install $2."
exit 1
fi
}
## Convert image with error handling
convert_image() {
convert -background none -resize "$2" "$1" "$3" || {
read -s -n 1 -p "Error: Conversion failed for $1"
exit 1
}
}
# Check required commands
check_command "convert" "ImageMagick"
check_command "iconutil" "macOS"
# Create the iconset directory
mkdir suyu.iconset || {
read -s -n 1 -p "Error: Unable to create suyu.iconset directory."
exit 1
}
# Convert images
convert_image "$1" 16x16 suyu.iconset/icon_16x16.png
convert_image "$1" 32x32 suyu.iconset/icon_16x16@2x.png
convert_image "$1" 32x32 suyu.iconset/icon_32x32.png
convert_image "$1" 64x64 suyu.iconset/icon_32x32@2x.png
convert_image "$1" 128x128 suyu.iconset/icon_128x128.png
convert_image "$1" 256x256 suyu.iconset/icon_256x256.png
convert_image "$1" 256x256 suyu.iconset/icon_128x128@2x.png
convert_image "$1" 512x512 suyu.iconset/icon_256x256@2x.png
convert_image "$1" 512x512 suyu.iconset/icon_512x512.png
convert_image "$1" 1024x1024 suyu.iconset/icon_512x512@2x.png
# Create the ICNS file
iconutil -c icns suyu.iconset || {
read -s -n 1 -p "Error: Failed to create ICNS file."
exit 1
}
# Remove the temporary iconset directory
rm -rf suyu.iconset || {
read -s -n 1 -p "Error: Unable to remove suyu.iconset directory."
exit 1
}
echo -s -n 1 -p "Icon generation completed successfully."
echo ""

10
dist/languages/ar.ts vendored
View file

@ -6256,6 +6256,16 @@ Would you like to bypass this and exit anyway?</source>
هل ترغب في تجاوز هذا والخروج على أية حال؟</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/ca.ts vendored
View file

@ -6293,6 +6293,16 @@ Would you like to bypass this and exit anyway?</source>
Desitja tancar-lo de totes maneres?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/cs.ts vendored
View file

@ -6277,6 +6277,16 @@ Would you like to bypass this and exit anyway?</source>
Opravdu si přejete ukončit tuto aplikaci?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/da.ts vendored
View file

@ -6281,6 +6281,16 @@ Please, only use this feature to install updates and DLC.</source>
Would you like to bypass this and exit anyway?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/de.ts vendored
View file

@ -6303,6 +6303,16 @@ Would you like to bypass this and exit anyway?</source>
Möchtest du dies umgehen und sie trotzdem beenden?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/el.ts vendored
View file

@ -6277,6 +6277,16 @@ Please, only use this feature to install updates and DLC.</source>
Would you like to bypass this and exit anyway?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/es.ts vendored
View file

@ -6349,6 +6349,16 @@ Would you like to bypass this and exit anyway?</source>
¿Quieres salir de todas formas?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/fi.ts vendored
View file

@ -4778,6 +4778,16 @@ Would you like to bypass this and exit anyway?</source>
Haluatko silti ohittaa tämän ja sulkea?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
</context>
<context>
<name>GRenderWindow</name>

10
dist/languages/fr.ts vendored
View file

@ -6342,6 +6342,16 @@ Would you like to bypass this and exit anyway?</source>
Voulez-vous ignorer ceci and quitter quand même ?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/hu.ts vendored
View file

@ -6315,6 +6315,16 @@ Would you like to bypass this and exit anyway?</source>
<translation>Az éppen futó alkalmazás azt kérte a suyu-tól, hogy ne lépjen ki.
Mégis ki szeretnél lépni?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>

10
dist/languages/id.ts vendored
View file

@ -6334,6 +6334,16 @@ Please, only use this feature to install updates and DLC.</source>
Would you like to bypass this and exit anyway?</source>
<translation type="unfinished"/>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/it.ts vendored
View file

@ -6312,6 +6312,16 @@ Would you like to bypass this and exit anyway?</source>
Vuoi forzare l&apos;arresto?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6298,6 +6298,16 @@ Would you like to bypass this and exit anyway?</source>
?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6297,6 +6297,16 @@ Would you like to bypass this and exit anyway?</source>
?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/nb.ts vendored
View file

@ -6302,6 +6302,16 @@ Would you like to bypass this and exit anyway?</source>
Vil du overstyre dette og lukke likevel?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/nl.ts vendored
View file

@ -6290,6 +6290,16 @@ Would you like to bypass this and exit anyway?</source>
Wil je toch afsluiten?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/pl.ts vendored
View file

@ -6293,6 +6293,16 @@ Would you like to bypass this and exit anyway?</source>
Czy chcesz to ominąć i mimo to wyjść?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6351,6 +6351,16 @@ Would you like to bypass this and exit anyway?</source>
Deseja ignorar isso e sair mesmo assim?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6334,6 +6334,16 @@ Would you like to bypass this and exit anyway?</source>
Deseja ignorar isso e sair mesmo assim?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6347,6 +6347,16 @@ Would you like to bypass this and exit anyway?</source>
Хотите ли вы обойти это и выйти в любом случае?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/sv.ts vendored
View file

@ -6272,6 +6272,16 @@ Would you like to bypass this and exit anyway?</source>
Vill du strunta i detta och avsluta ändå?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6294,6 +6294,16 @@ Would you like to bypass this and exit anyway?</source>
Görmezden gelip kapatmak ister misiniz?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/uk.ts vendored
View file

@ -6306,6 +6306,16 @@ Would you like to bypass this and exit anyway?</source>
Чи хочете ви обійти це і вийти в будь-якому випадку?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

10
dist/languages/vi.ts vendored
View file

@ -6299,6 +6299,16 @@ Would you like to bypass this and exit anyway?</source>
Bạn muốn bỏ qua yêu cầu đó thoát luôn không?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6299,6 +6299,16 @@ Would you like to bypass this and exit anyway?</source>
Bạn muốn bỏ qua yêu cầu đó thoát luôn không?</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6347,6 +6347,16 @@ Would you like to bypass this and exit anyway?</source>
退</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

View file

@ -6343,6 +6343,16 @@ Would you like to bypass this and exit anyway?</source>
退</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1763"/>
<source>Component Missing</source>
<translation>Component Missing</translation>
</message>
<message>
<location filename="../../src/suyu/main.cpp" line="1764"/>
<source>Missing Firmware.</source>
<translation>Missing Firmware.</translation>
</message>
<message>
<location filename="../../src/suyu/configuration/shared_translation.h" line="27"/>
<source>None</source>

BIN
dist/suyu.icns vendored

Binary file not shown.

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
# SPDX-FileCopyrightText: 2023 suyu Emulator Project
# SPDX-License-Identifier: GPL-3.0-or-later
# Built application files

View file

@ -1,4 +1,4 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-3.0-or-later
import android.annotation.SuppressLint
@ -25,7 +25,7 @@ val autoVersion = (((System.currentTimeMillis() / 1000) - 1451606400) / 10).toIn
@Suppress("UnstableApiUsage")
android {
namespace = "org.yuzu.yuzu_emu"
namespace = "org.suyu.suyu_emu"
compileSdkVersion = "android-34"
ndkVersion = "26.1.10909125"
@ -54,7 +54,7 @@ android {
defaultConfig {
// TODO If this is ever modified, change application_id in strings.xml
applicationId = "org.yuzu.yuzu_emu"
applicationId = "org.suyu.suyu_emu"
minSdk = 30
targetSdk = 34
versionName = getGitVersion()
@ -103,7 +103,7 @@ android {
signingConfigs.getByName("default")
}
resValue("string", "app_name_suffixed", "yuzu")
resValue("string", "app_name_suffixed", "suyu")
isMinifyEnabled = true
isDebuggable = false
proguardFiles(
@ -116,7 +116,7 @@ android {
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
register("relWithDebInfo") {
isDefault = true
resValue("string", "app_name_suffixed", "yuzu Debug Release")
resValue("string", "app_name_suffixed", "suyu Debug Release")
signingConfig = signingConfigs.getByName("default")
isMinifyEnabled = true
isDebuggable = true
@ -133,7 +133,7 @@ android {
// Attaches 'debug' suffix to version and package name, allowing installation alongside the release build.
debug {
signingConfig = signingConfigs.getByName("default")
resValue("string", "app_name_suffixed", "yuzu Debug")
resValue("string", "app_name_suffixed", "suyu Debug")
isDebuggable = true
isJniDebuggable = true
versionNameSuffix = "-debug"

View file

@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
# SPDX-FileCopyrightText: 2023 suyu Emulator Project
# SPDX-License-Identifier: GPL-3.0-or-later
# To get usable stack traces

View file

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
SPDX-FileCopyrightText: 2023 yuzu Emulator Project
SPDX-FileCopyrightText: 2023 suyu Emulator Project
SPDX-License-Identifier: GPL-3.0-or-later
-->
@ -17,7 +17,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
<uses-permission android:name="android.permission.VIBRATE" />
<application
android:name="org.yuzu.yuzu_emu.YuzuApplication"
android:name="org.suyu.suyu_emu.SuyuApplication"
android:label="@string/app_name_suffixed"
android:icon="@drawable/ic_launcher"
android:allowBackup="true"
@ -34,9 +34,9 @@ SPDX-License-Identifier: GPL-3.0-or-later
android:resource="@xml/game_mode_config" />
<activity
android:name="org.yuzu.yuzu_emu.ui.main.MainActivity"
android:name="org.suyu.suyu_emu.ui.main.MainActivity"
android:exported="true"
android:theme="@style/Theme.Yuzu.Splash.Main">
android:theme="@style/Theme.Suyu.Splash.Main">
<!-- This intentfilter marks this Activity as the one that gets launched from Home screen. -->
<intent-filter>
@ -48,13 +48,13 @@ SPDX-License-Identifier: GPL-3.0-or-later
</activity>
<activity
android:name="org.yuzu.yuzu_emu.features.settings.ui.SettingsActivity"
android:theme="@style/Theme.Yuzu.Main"
android:name="org.suyu.suyu_emu.features.settings.ui.SettingsActivity"
android:theme="@style/Theme.Suyu.Main"
android:label="@string/preferences_settings"/>
<activity
android:name="org.yuzu.yuzu_emu.activities.EmulationActivity"
android:theme="@style/Theme.Yuzu.Main"
android:name="org.suyu.suyu_emu.activities.EmulationActivity"
android:theme="@style/Theme.Suyu.Main"
android:launchMode="singleTop"
android:supportsPictureInPicture="true"
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|uiMode"

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu
package org.suyu.suyu_emu
import android.content.DialogInterface
import android.net.Uri
@ -13,18 +13,18 @@ import android.widget.TextView
import androidx.annotation.Keep
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import java.lang.ref.WeakReference
import org.yuzu.yuzu_emu.activities.EmulationActivity
import org.yuzu.yuzu_emu.fragments.CoreErrorDialogFragment
import org.yuzu.yuzu_emu.utils.DocumentsTree
import org.yuzu.yuzu_emu.utils.FileUtil
import org.yuzu.yuzu_emu.utils.Log
import org.yuzu.yuzu_emu.model.InstallResult
import org.yuzu.yuzu_emu.model.Patch
import org.yuzu.yuzu_emu.model.GameVerificationResult
import org.suyu.suyu_emu.activities.EmulationActivity
import org.suyu.suyu_emu.fragments.CoreErrorDialogFragment
import org.suyu.suyu_emu.utils.DocumentsTree
import org.suyu.suyu_emu.utils.FileUtil
import org.suyu.suyu_emu.utils.Log
import org.suyu.suyu_emu.model.InstallResult
import org.suyu.suyu_emu.model.Patch
import org.suyu.suyu_emu.model.GameVerificationResult
/**
* Class which contains methods that interact
* with the native side of the Yuzu code.
* with the native side of the Suyu code.
*/
object NativeLibrary {
@JvmField
@ -32,7 +32,7 @@ object NativeLibrary {
init {
try {
System.loadLibrary("yuzu-android")
System.loadLibrary("suyu-android")
} catch (ex: UnsatisfiedLinkError) {
error("[NativeLibrary] $ex")
}
@ -42,7 +42,7 @@ object NativeLibrary {
@JvmStatic
fun openContentUri(path: String?, openmode: String?): Int {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.openContentUri(path, openmode)
SuyuApplication.documentsTree!!.openContentUri(path, openmode)
} else {
FileUtil.openContentUri(path, openmode)
}
@ -52,7 +52,7 @@ object NativeLibrary {
@JvmStatic
fun getSize(path: String?): Long {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.getFileSize(path)
SuyuApplication.documentsTree!!.getFileSize(path)
} else {
FileUtil.getFileSize(path)
}
@ -62,7 +62,7 @@ object NativeLibrary {
@JvmStatic
fun exists(path: String?): Boolean {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.exists(path)
SuyuApplication.documentsTree!!.exists(path)
} else {
FileUtil.exists(path, suppressLog = true)
}
@ -72,7 +72,7 @@ object NativeLibrary {
@JvmStatic
fun isDirectory(path: String?): Boolean {
return if (DocumentsTree.isNativePath(path!!)) {
YuzuApplication.documentsTree!!.isDirectory(path)
SuyuApplication.documentsTree!!.isDirectory(path)
} else {
FileUtil.isDirectory(path)
}
@ -82,7 +82,7 @@ object NativeLibrary {
@JvmStatic
fun getParentDirectory(path: String): String =
if (DocumentsTree.isNativePath(path)) {
YuzuApplication.documentsTree!!.getParentDirectory(path)
SuyuApplication.documentsTree!!.getParentDirectory(path)
} else {
path
}
@ -91,7 +91,7 @@ object NativeLibrary {
@JvmStatic
fun getFilename(path: String): String =
if (DocumentsTree.isNativePath(path)) {
YuzuApplication.documentsTree!!.getFilename(path)
SuyuApplication.documentsTree!!.getFilename(path)
} else {
FileUtil.getFilename(Uri.parse(path))
}
@ -326,7 +326,7 @@ object NativeLibrary {
}
/**
* Logs the Yuzu version, Android version and, CPU.
* Logs the Suyu version, Android version and, CPU.
*/
external fun logDeviceInfo()

View file

@ -1,22 +1,22 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu
package org.suyu.suyu_emu
import android.app.Application
import android.app.NotificationChannel
import android.app.NotificationManager
import android.content.Context
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.input.NativeInput
import java.io.File
import org.yuzu.yuzu_emu.utils.DirectoryInitialization
import org.yuzu.yuzu_emu.utils.DocumentsTree
import org.yuzu.yuzu_emu.utils.GpuDriverHelper
import org.yuzu.yuzu_emu.utils.Log
import org.suyu.suyu_emu.utils.DirectoryInitialization
import org.suyu.suyu_emu.utils.DocumentsTree
import org.suyu.suyu_emu.utils.GpuDriverHelper
import org.suyu.suyu_emu.utils.Log
fun Context.getPublicFilesDir(): File = getExternalFilesDir(null) ?: filesDir
class YuzuApplication : Application() {
class SuyuApplication : Application() {
private fun createNotificationChannels() {
val noticeChannel = NotificationChannel(
getString(R.string.notice_notification_channel_id),
@ -47,7 +47,7 @@ class YuzuApplication : Application() {
companion object {
var documentsTree: DocumentsTree? = null
lateinit var application: YuzuApplication
lateinit var application: SuyuApplication
val appContext: Context
get() = application.applicationContext

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.activities
package org.suyu.suyu_emu.activities
import android.annotation.SuppressLint
import android.app.PendingIntent
@ -35,23 +35,23 @@ import androidx.core.view.WindowInsetsCompat
import androidx.core.view.WindowInsetsControllerCompat
import androidx.navigation.fragment.NavHostFragment
import androidx.preference.PreferenceManager
import org.yuzu.yuzu_emu.NativeLibrary
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.databinding.ActivityEmulationBinding
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.features.settings.model.BooleanSetting
import org.yuzu.yuzu_emu.features.settings.model.IntSetting
import org.yuzu.yuzu_emu.features.settings.model.Settings
import org.yuzu.yuzu_emu.model.EmulationViewModel
import org.yuzu.yuzu_emu.model.Game
import org.yuzu.yuzu_emu.utils.InputHandler
import org.yuzu.yuzu_emu.utils.Log
import org.yuzu.yuzu_emu.utils.MemoryUtil
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.yuzu.yuzu_emu.utils.NfcReader
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.yuzu.yuzu_emu.utils.ThemeHelper
import org.suyu.suyu_emu.NativeLibrary
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.databinding.ActivityEmulationBinding
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.settings.model.BooleanSetting
import org.suyu.suyu_emu.features.settings.model.IntSetting
import org.suyu.suyu_emu.features.settings.model.Settings
import org.suyu.suyu_emu.model.EmulationViewModel
import org.suyu.suyu_emu.model.Game
import org.suyu.suyu_emu.utils.InputHandler
import org.suyu.suyu_emu.utils.Log
import org.suyu.suyu_emu.utils.MemoryUtil
import org.suyu.suyu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NfcReader
import org.suyu.suyu_emu.utils.ParamPackage
import org.suyu.suyu_emu.utils.ThemeHelper
import java.text.NumberFormat
import kotlin.math.roundToInt
@ -123,7 +123,7 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
nfcReader = NfcReader(this)
nfcReader.initialize()
val preferences = PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
val preferences = PreferenceManager.getDefaultSharedPreferences(SuyuApplication.appContext)
if (!preferences.getBoolean(Settings.PREF_MEMORY_WARNING_SHOWN, false)) {
if (MemoryUtil.isLessThan(MemoryUtil.REQUIRED_MEMORY, MemoryUtil.totalMemory)) {
Toast.makeText(

View file

@ -1,13 +1,13 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.annotation.SuppressLint
import androidx.recyclerview.widget.AsyncDifferConfig
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.ListAdapter
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
import androidx.recyclerview.widget.RecyclerView
/**

View file

@ -1,11 +1,11 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.annotation.SuppressLint
import androidx.recyclerview.widget.RecyclerView
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
/**
* Generic list class meant to take care of basic lists

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import org.yuzu.yuzu_emu.model.SelectableItem
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.model.SelectableItem
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
/**
* Generic list class meant to take care of single selection UI updates

View file

@ -1,14 +1,14 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import org.yuzu.yuzu_emu.databinding.ListItemAddonBinding
import org.yuzu.yuzu_emu.model.Patch
import org.yuzu.yuzu_emu.model.AddonViewModel
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.ListItemAddonBinding
import org.suyu.suyu_emu.model.Patch
import org.suyu.suyu_emu.model.AddonViewModel
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class AddonAdapter(val addonViewModel: AddonViewModel) :
AbstractDiffAdapter<Patch, AddonAdapter.AddonViewHolder>() {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
@ -9,15 +9,15 @@ import android.widget.Toast
import androidx.core.content.res.ResourcesCompat
import androidx.fragment.app.FragmentActivity
import androidx.navigation.findNavController
import org.yuzu.yuzu_emu.HomeNavigationDirections
import org.yuzu.yuzu_emu.NativeLibrary
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.databinding.CardSimpleOutlinedBinding
import org.yuzu.yuzu_emu.model.Applet
import org.yuzu.yuzu_emu.model.AppletInfo
import org.yuzu.yuzu_emu.model.Game
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.HomeNavigationDirections
import org.suyu.suyu_emu.NativeLibrary
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.databinding.CardSimpleOutlinedBinding
import org.suyu.suyu_emu.model.Applet
import org.suyu.suyu_emu.model.AppletInfo
import org.suyu.suyu_emu.model.Game
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class AppletAdapter(val activity: FragmentActivity, applets: List<Applet>) :
AbstractListAdapter<Applet, AppletAdapter.AppletViewHolder>(applets) {
@ -64,7 +64,7 @@ class AppletAdapter(val activity: FragmentActivity, applets: List<Applet>) :
NativeLibrary.setCurrentAppletId(applet.appletInfo.appletId)
val appletGame = Game(
title = YuzuApplication.appContext.getString(applet.titleId),
title = SuyuApplication.appContext.getString(applet.titleId),
path = appletPath
)
val action = HomeNavigationDirections.actionGlobalEmulationActivity(appletGame)

View file

@ -1,23 +1,23 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.core.content.res.ResourcesCompat
import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
import org.yuzu.yuzu_emu.HomeNavigationDirections
import org.yuzu.yuzu_emu.NativeLibrary
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.databinding.DialogListItemBinding
import org.yuzu.yuzu_emu.model.CabinetMode
import org.yuzu.yuzu_emu.adapters.CabinetLauncherDialogAdapter.CabinetModeViewHolder
import org.yuzu.yuzu_emu.model.AppletInfo
import org.yuzu.yuzu_emu.model.Game
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.HomeNavigationDirections
import org.suyu.suyu_emu.NativeLibrary
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.databinding.DialogListItemBinding
import org.suyu.suyu_emu.model.CabinetMode
import org.suyu.suyu_emu.adapters.CabinetLauncherDialogAdapter.CabinetModeViewHolder
import org.suyu.suyu_emu.model.AppletInfo
import org.suyu.suyu_emu.model.Game
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class CabinetLauncherDialogAdapter(val fragment: Fragment) :
AbstractListAdapter<CabinetMode, CabinetModeViewHolder>(
@ -49,7 +49,7 @@ class CabinetLauncherDialogAdapter(val fragment: Fragment) :
NativeLibrary.setCurrentAppletId(AppletInfo.Cabinet.appletId)
NativeLibrary.setCabinetMode(mode.id)
val appletGame = Game(
title = YuzuApplication.appContext.getString(R.string.cabinet_applet),
title = SuyuApplication.appContext.getString(R.string.cabinet_applet),
path = appletPath
)
val action = HomeNavigationDirections.actionGlobalEmulationActivity(appletGame)

View file

@ -1,18 +1,18 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.databinding.CardDriverOptionBinding
import org.yuzu.yuzu_emu.features.settings.model.StringSetting
import org.yuzu.yuzu_emu.model.Driver
import org.yuzu.yuzu_emu.model.DriverViewModel
import org.yuzu.yuzu_emu.utils.ViewUtils.marquee
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.databinding.CardDriverOptionBinding
import org.suyu.suyu_emu.features.settings.model.StringSetting
import org.suyu.suyu_emu.model.Driver
import org.suyu.suyu_emu.model.DriverViewModel
import org.suyu.suyu_emu.utils.ViewUtils.marquee
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class DriverAdapter(private val driverViewModel: DriverViewModel) :
AbstractSingleSelectionList<Driver, DriverAdapter.DriverViewHolder>(

View file

@ -1,18 +1,18 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.net.Uri
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.fragment.app.FragmentActivity
import org.yuzu.yuzu_emu.databinding.CardFolderBinding
import org.yuzu.yuzu_emu.fragments.GameFolderPropertiesDialogFragment
import org.yuzu.yuzu_emu.model.GameDir
import org.yuzu.yuzu_emu.model.GamesViewModel
import org.yuzu.yuzu_emu.utils.ViewUtils.marquee
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.CardFolderBinding
import org.suyu.suyu_emu.fragments.GameFolderPropertiesDialogFragment
import org.suyu.suyu_emu.model.GameDir
import org.suyu.suyu_emu.model.GamesViewModel
import org.suyu.suyu_emu.utils.ViewUtils.marquee
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class FolderAdapter(val activity: FragmentActivity, val gamesViewModel: GamesViewModel) :
AbstractDiffAdapter<GameDir, FolderAdapter.FolderViewHolder>() {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.net.Uri
import android.view.LayoutInflater
@ -19,15 +19,15 @@ import androidx.preference.PreferenceManager
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import org.yuzu.yuzu_emu.HomeNavigationDirections
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.databinding.CardGameBinding
import org.yuzu.yuzu_emu.model.Game
import org.yuzu.yuzu_emu.model.GamesViewModel
import org.yuzu.yuzu_emu.utils.GameIconUtils
import org.yuzu.yuzu_emu.utils.ViewUtils.marquee
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.HomeNavigationDirections
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.databinding.CardGameBinding
import org.suyu.suyu_emu.model.Game
import org.suyu.suyu_emu.model.GamesViewModel
import org.suyu.suyu_emu.utils.GameIconUtils
import org.suyu.suyu_emu.utils.ViewUtils.marquee
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class GameAdapter(private val activity: AppCompatActivity) :
AbstractDiffAdapter<Game, GameAdapter.GameViewHolder>(exact = false) {
@ -51,12 +51,12 @@ class GameAdapter(private val activity: AppCompatActivity) :
fun onClick(game: Game) {
val gameExists = DocumentFile.fromSingleUri(
YuzuApplication.appContext,
SuyuApplication.appContext,
Uri.parse(game.path)
)?.exists() == true
if (!gameExists) {
Toast.makeText(
YuzuApplication.appContext,
SuyuApplication.appContext,
R.string.loader_error_file_not_found,
Toast.LENGTH_LONG
).show()
@ -66,7 +66,7 @@ class GameAdapter(private val activity: AppCompatActivity) :
}
val preferences =
PreferenceManager.getDefaultSharedPreferences(YuzuApplication.appContext)
PreferenceManager.getDefaultSharedPreferences(SuyuApplication.appContext)
preferences.edit()
.putLong(
game.keyLastPlayedTime,
@ -77,12 +77,12 @@ class GameAdapter(private val activity: AppCompatActivity) :
activity.lifecycleScope.launch {
withContext(Dispatchers.IO) {
val shortcut =
ShortcutInfoCompat.Builder(YuzuApplication.appContext, game.path)
ShortcutInfoCompat.Builder(SuyuApplication.appContext, game.path)
.setShortLabel(game.title)
.setIcon(GameIconUtils.getShortcutIcon(activity, game))
.setIntent(game.launchIntent)
.build()
ShortcutManagerCompat.pushDynamicShortcut(YuzuApplication.appContext, shortcut)
ShortcutManagerCompat.pushDynamicShortcut(SuyuApplication.appContext, shortcut)
}
}

View file

@ -1,21 +1,21 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.LifecycleOwner
import org.yuzu.yuzu_emu.databinding.CardInstallableIconBinding
import org.yuzu.yuzu_emu.databinding.CardSimpleOutlinedBinding
import org.yuzu.yuzu_emu.model.GameProperty
import org.yuzu.yuzu_emu.model.InstallableProperty
import org.yuzu.yuzu_emu.model.SubmenuProperty
import org.yuzu.yuzu_emu.utils.ViewUtils.marquee
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.utils.collect
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.CardInstallableIconBinding
import org.suyu.suyu_emu.databinding.CardSimpleOutlinedBinding
import org.suyu.suyu_emu.model.GameProperty
import org.suyu.suyu_emu.model.InstallableProperty
import org.suyu.suyu_emu.model.SubmenuProperty
import org.suyu.suyu_emu.utils.ViewUtils.marquee
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.utils.collect
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class GamePropertiesAdapter(
private val viewLifecycle: LifecycleOwner,

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
@ -9,14 +9,14 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat
import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.LifecycleOwner
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.databinding.CardHomeOptionBinding
import org.yuzu.yuzu_emu.fragments.MessageDialogFragment
import org.yuzu.yuzu_emu.model.HomeSetting
import org.yuzu.yuzu_emu.utils.ViewUtils.marquee
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.utils.collect
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.databinding.CardHomeOptionBinding
import org.suyu.suyu_emu.fragments.MessageDialogFragment
import org.suyu.suyu_emu.model.HomeSetting
import org.suyu.suyu_emu.utils.ViewUtils.marquee
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.utils.collect
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class HomeSettingAdapter(
private val activity: AppCompatActivity,

View file

@ -1,14 +1,14 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import org.yuzu.yuzu_emu.databinding.CardInstallableBinding
import org.yuzu.yuzu_emu.model.Installable
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.CardInstallableBinding
import org.suyu.suyu_emu.model.Installable
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class InstallableAdapter(installables: List<Installable>) :
AbstractListAdapter<Installable, InstallableAdapter.InstallableViewHolder>(installables) {

View file

@ -1,16 +1,16 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.appcompat.app.AppCompatActivity
import org.yuzu.yuzu_emu.databinding.ListItemSettingBinding
import org.yuzu.yuzu_emu.fragments.LicenseBottomSheetDialogFragment
import org.yuzu.yuzu_emu.model.License
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.ListItemSettingBinding
import org.suyu.suyu_emu.fragments.LicenseBottomSheetDialogFragment
import org.suyu.suyu_emu.model.License
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class LicenseAdapter(private val activity: AppCompatActivity, licenses: List<License>) :
AbstractListAdapter<License, LicenseAdapter.LicenseViewHolder>(licenses) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.adapters
package org.suyu.suyu_emu.adapters
import android.text.Html
import android.view.LayoutInflater
@ -10,14 +10,14 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.res.ResourcesCompat
import androidx.lifecycle.ViewModelProvider
import com.google.android.material.button.MaterialButton
import org.yuzu.yuzu_emu.databinding.PageSetupBinding
import org.yuzu.yuzu_emu.model.HomeViewModel
import org.yuzu.yuzu_emu.model.SetupCallback
import org.yuzu.yuzu_emu.model.SetupPage
import org.yuzu.yuzu_emu.model.StepState
import org.yuzu.yuzu_emu.utils.ViewUtils
import org.yuzu.yuzu_emu.utils.ViewUtils.setVisible
import org.yuzu.yuzu_emu.viewholder.AbstractViewHolder
import org.suyu.suyu_emu.databinding.PageSetupBinding
import org.suyu.suyu_emu.model.HomeViewModel
import org.suyu.suyu_emu.model.SetupCallback
import org.suyu.suyu_emu.model.SetupPage
import org.suyu.suyu_emu.model.StepState
import org.suyu.suyu_emu.utils.ViewUtils
import org.suyu.suyu_emu.utils.ViewUtils.setVisible
import org.suyu.suyu_emu.viewholder.AbstractViewHolder
class SetupAdapter(val activity: AppCompatActivity, pages: List<SetupPage>) :
AbstractListAdapter<SetupPage, SetupAdapter.SetupPageViewHolder>(pages) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: Copyright 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.applets.keyboard
package org.suyu.suyu_emu.applets.keyboard
import android.content.Context
import android.os.Handler
@ -13,9 +13,9 @@ import android.view.inputmethod.InputMethodManager
import androidx.annotation.Keep
import androidx.core.view.ViewCompat
import java.io.Serializable
import org.yuzu.yuzu_emu.NativeLibrary
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.applets.keyboard.ui.KeyboardDialogFragment
import org.suyu.suyu_emu.NativeLibrary
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.applets.keyboard.ui.KeyboardDialogFragment
@Keep
object SoftwareKeyboard {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: Copyright 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.applets.keyboard.ui
package org.suyu.suyu_emu.applets.keyboard.ui
import android.app.Dialog
import android.content.DialogInterface
@ -10,11 +10,11 @@ import android.text.InputFilter
import android.text.InputType
import androidx.fragment.app.DialogFragment
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.applets.keyboard.SoftwareKeyboard
import org.yuzu.yuzu_emu.applets.keyboard.SoftwareKeyboard.KeyboardConfig
import org.yuzu.yuzu_emu.databinding.DialogEditTextBinding
import org.yuzu.yuzu_emu.utils.SerializableHelper.serializable
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.applets.keyboard.SoftwareKeyboard
import org.suyu.suyu_emu.applets.keyboard.SoftwareKeyboard.KeyboardConfig
import org.suyu.suyu_emu.databinding.DialogEditTextBinding
import org.suyu.suyu_emu.utils.SerializableHelper.serializable
class KeyboardDialogFragment : DialogFragment() {
private lateinit var binding: DialogEditTextBinding

View file

@ -1,15 +1,15 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.disk_shader_cache
package org.suyu.suyu_emu.disk_shader_cache
import androidx.annotation.Keep
import androidx.lifecycle.ViewModelProvider
import org.yuzu.yuzu_emu.NativeLibrary
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.activities.EmulationActivity
import org.yuzu.yuzu_emu.model.EmulationViewModel
import org.yuzu.yuzu_emu.utils.Log
import org.suyu.suyu_emu.NativeLibrary
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.activities.EmulationActivity
import org.suyu.suyu_emu.model.EmulationViewModel
import org.suyu.suyu_emu.utils.Log
@Keep
object DiskShaderCacheProgress {

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
// SPDX-License-Identifier: MPL-2.0
// Copyright © 2023 Skyline Team and Contributors (https://github.com/skyline-emu/)
package org.yuzu.yuzu_emu.features
package org.suyu.suyu_emu.features
import android.database.Cursor
import android.database.MatrixCursor
@ -14,14 +14,14 @@ import android.provider.DocumentsContract
import android.provider.DocumentsProvider
import android.webkit.MimeTypeMap
import java.io.*
import org.yuzu.yuzu_emu.BuildConfig
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.getPublicFilesDir
import org.suyu.suyu_emu.BuildConfig
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.getPublicFilesDir
class DocumentProvider : DocumentsProvider() {
private val baseDirectory: File
get() = File(YuzuApplication.application.getPublicFilesDir().canonicalPath)
get() = File(SuyuApplication.application.getPublicFilesDir().canonicalPath)
companion object {
private val DEFAULT_ROOT_PROJECTION: Array<String> = arrayOf(
@ -91,7 +91,7 @@ class DocumentProvider : DocumentsProvider() {
add(DocumentsContract.Root.COLUMN_DOCUMENT_ID, getDocumentId(baseDirectory))
add(DocumentsContract.Root.COLUMN_MIME_TYPES, "*/*")
add(DocumentsContract.Root.COLUMN_AVAILABLE_BYTES, baseDirectory.freeSpace)
add(DocumentsContract.Root.COLUMN_ICON, R.drawable.ic_yuzu)
add(DocumentsContract.Root.COLUMN_ICON, R.drawable.ic_suyu)
}
return cursor
@ -288,7 +288,7 @@ class DocumentProvider : DocumentsProvider() {
add(DocumentsContract.Document.COLUMN_LAST_MODIFIED, localFile.lastModified())
add(DocumentsContract.Document.COLUMN_FLAGS, flags)
if (localFile == baseDirectory) {
add(DocumentsContract.Root.COLUMN_ICON, R.drawable.ic_yuzu)
add(DocumentsContract.Root.COLUMN_ICON, R.drawable.ic_suyu)
}
}

View file

@ -1,15 +1,15 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input
package org.suyu.suyu_emu.features.input
import org.yuzu.yuzu_emu.features.input.model.NativeButton
import org.yuzu.yuzu_emu.features.input.model.NativeAnalog
import org.yuzu.yuzu_emu.features.input.model.InputType
import org.yuzu.yuzu_emu.features.input.model.ButtonName
import org.yuzu.yuzu_emu.features.input.model.NpadStyleIndex
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.suyu.suyu_emu.features.input.model.NativeButton
import org.suyu.suyu_emu.features.input.model.NativeAnalog
import org.suyu.suyu_emu.features.input.model.InputType
import org.suyu.suyu_emu.features.input.model.ButtonName
import org.suyu.suyu_emu.features.input.model.NpadStyleIndex
import org.suyu.suyu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.ParamPackage
import android.view.InputDevice
object NativeInput {
@ -177,9 +177,9 @@ object NativeInput {
/**
* Registers a controller to be used with mapping
* @param device An [InputDevice] or the input overlay wrapped with [YuzuInputDevice]
* @param device An [InputDevice] or the input overlay wrapped with [SuyuInputDevice]
*/
external fun registerController(device: YuzuInputDevice)
external fun registerController(device: SuyuInputDevice)
/**
* Gets the names of input devices that have been registered with the input subsystem via [registerController]

View file

@ -1,16 +1,16 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input
package org.suyu.suyu_emu.features.input
import android.view.InputDevice
import androidx.annotation.Keep
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.utils.InputHandler.getGUID
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.utils.InputHandler.getGUID
@Keep
interface YuzuInputDevice {
interface SuyuInputDevice {
fun getName(): String
fun getGUID(): String
@ -25,15 +25,15 @@ interface YuzuInputDevice {
fun hasKeys(keys: IntArray): BooleanArray = BooleanArray(0)
}
class YuzuPhysicalDevice(
class SuyuPhysicalDevice(
private val device: InputDevice,
private val port: Int,
useSystemVibrator: Boolean
) : YuzuInputDevice {
) : SuyuInputDevice {
private val vibrator = if (useSystemVibrator) {
YuzuVibrator.getSystemVibrator()
SuyuVibrator.getSystemVibrator()
} else {
YuzuVibrator.getControllerVibrator(device)
SuyuVibrator.getControllerVibrator(device)
}
override fun getName(): String {
@ -60,14 +60,14 @@ class YuzuPhysicalDevice(
override fun hasKeys(keys: IntArray): BooleanArray = device.hasKeys(*keys)
}
class YuzuInputOverlayDevice(
class SuyuInputOverlayDevice(
private val vibration: Boolean,
private val port: Int
) : YuzuInputDevice {
private val vibrator = YuzuVibrator.getSystemVibrator()
) : SuyuInputDevice {
private val vibrator = SuyuVibrator.getSystemVibrator()
override fun getName(): String {
return YuzuApplication.appContext.getString(R.string.input_overlay)
return SuyuApplication.appContext.getString(R.string.input_overlay)
}
override fun getGUID(): String {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input
package org.suyu.suyu_emu.features.input
import android.content.Context
import android.os.Build
@ -12,32 +12,32 @@ import android.os.VibratorManager
import android.view.InputDevice
import androidx.annotation.Keep
import androidx.annotation.RequiresApi
import org.yuzu.yuzu_emu.YuzuApplication
import org.suyu.suyu_emu.SuyuApplication
@Keep
@Suppress("DEPRECATION")
interface YuzuVibrator {
interface SuyuVibrator {
fun supportsVibration(): Boolean
fun vibrate(intensity: Float)
companion object {
fun getControllerVibrator(device: InputDevice): YuzuVibrator =
fun getControllerVibrator(device: InputDevice): SuyuVibrator =
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
YuzuVibratorManager(device.vibratorManager)
SuyuVibratorManager(device.vibratorManager)
} else {
YuzuVibratorManagerCompat(device.vibrator)
SuyuVibratorManagerCompat(device.vibrator)
}
fun getSystemVibrator(): YuzuVibrator =
fun getSystemVibrator(): SuyuVibrator =
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
val vibratorManager = YuzuApplication.appContext
val vibratorManager = SuyuApplication.appContext
.getSystemService(Context.VIBRATOR_MANAGER_SERVICE) as VibratorManager
YuzuVibratorManager(vibratorManager)
SuyuVibratorManager(vibratorManager)
} else {
val vibrator = YuzuApplication.appContext
val vibrator = SuyuApplication.appContext
.getSystemService(Context.VIBRATOR_SERVICE) as Vibrator
YuzuVibratorManagerCompat(vibrator)
SuyuVibratorManagerCompat(vibrator)
}
fun getVibrationEffect(intensity: Float): VibrationEffect? {
@ -53,24 +53,24 @@ interface YuzuVibrator {
}
@RequiresApi(Build.VERSION_CODES.S)
class YuzuVibratorManager(private val vibratorManager: VibratorManager) : YuzuVibrator {
class SuyuVibratorManager(private val vibratorManager: VibratorManager) : SuyuVibrator {
override fun supportsVibration(): Boolean {
return vibratorManager.vibratorIds.isNotEmpty()
}
override fun vibrate(intensity: Float) {
val vibration = YuzuVibrator.getVibrationEffect(intensity) ?: return
val vibration = SuyuVibrator.getVibrationEffect(intensity) ?: return
vibratorManager.vibrate(CombinedVibration.createParallel(vibration))
}
}
class YuzuVibratorManagerCompat(private val vibrator: Vibrator) : YuzuVibrator {
class SuyuVibratorManagerCompat(private val vibrator: Vibrator) : SuyuVibrator {
override fun supportsVibration(): Boolean {
return vibrator.hasVibrator()
}
override fun vibrate(intensity: Float) {
val vibration = YuzuVibrator.getVibrationEffect(intensity) ?: return
val vibration = SuyuVibrator.getVibrationEffect(intensity) ?: return
vibrator.vibrate(vibration)
}
}

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
enum class AnalogDirection(val int: Int, val param: String) {
Up(0, "up"),

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
// Loosely matches the enum in common/input.h
enum class ButtonName(val int: Int) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
// Must match the corresponding enum in input_common/main.h
enum class InputType(val int: Int) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
// Must match enum in src/common/settings_input.h
enum class NativeAnalog(val int: Int) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
// Must match enum in src/common/settings_input.h
enum class NativeButton(val int: Int) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
// Must match enum in src/common/settings_input.h
enum class NativeTrigger(val int: Int) {

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.R
import org.suyu.suyu_emu.R
// Must match enum in src/core/hid/hid_types.h
enum class NpadStyleIndex(val int: Int, @StringRes val nameId: Int = 0) {

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.input.model
package org.suyu.suyu_emu.features.input.model
import androidx.annotation.Keep

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractBooleanSetting : AbstractSetting {
fun getBoolean(needsGlobal: Boolean = false): Boolean

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractByteSetting : AbstractSetting {
fun getByte(needsGlobal: Boolean = false): Byte

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractFloatSetting : AbstractSetting {
fun getFloat(needsGlobal: Boolean = false): Float

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractIntSetting : AbstractSetting {
fun getInt(needsGlobal: Boolean = false): Int

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractLongSetting : AbstractSetting {
fun getLong(needsGlobal: Boolean = false): Long

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
interface AbstractSetting {
val key: String

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractShortSetting : AbstractSetting {
fun getShort(needsGlobal: Boolean = false): Short

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
interface AbstractStringSetting : AbstractSetting {
fun getString(needsGlobal: Boolean = false): String

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class BooleanSetting(override val key: String) : AbstractBooleanSetting {
AUDIO_MUTED("audio_muted"),

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class ByteSetting(override val key: String) : AbstractByteSetting {
AUDIO_VOLUME("volume");

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class FloatSetting(override val key: String) : AbstractFloatSetting {
// No float settings currently exist

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class IntSetting(override val key: String) : AbstractIntSetting {
CPU_BACKEND("cpu_backend"),

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class LongSetting(override val key: String) : AbstractLongSetting {
CUSTOM_RTC("custom_rtc");

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
object Settings {
enum class MenuTag(val titleId: Int = 0) {
@ -26,7 +26,7 @@ object Settings {
}
fun getPlayerString(player: Int): String =
YuzuApplication.appContext.getString(R.string.preferences_player, player)
SuyuApplication.appContext.getString(R.string.preferences_player, player)
const val PREF_FIRST_APP_LAUNCH = "FirstApplicationLaunch"
const val PREF_MEMORY_WARNING_SHOWN = "MemoryWarningShown"

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class ShortSetting(override val key: String) : AbstractShortSetting {
RENDERER_SPEED_LIMIT("speed_limit");

View file

@ -1,9 +1,9 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model
package org.suyu.suyu_emu.features.settings.model
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.utils.NativeConfig
enum class StringSetting(override val key: String) : AbstractStringSetting {
DRIVER_PATH("driver_path"),

View file

@ -1,14 +1,14 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.features.input.model.AnalogDirection
import org.yuzu.yuzu_emu.features.input.model.InputType
import org.yuzu.yuzu_emu.features.input.model.NativeAnalog
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.input.model.AnalogDirection
import org.suyu.suyu_emu.features.input.model.InputType
import org.suyu.suyu_emu.features.input.model.NativeAnalog
import org.suyu.suyu_emu.utils.ParamPackage
class AnalogInputSetting(
override val playerIndex: Int,

View file

@ -1,13 +1,13 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.features.input.model.InputType
import org.yuzu.yuzu_emu.features.input.model.NativeButton
import org.suyu.suyu_emu.utils.ParamPackage
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.input.model.InputType
import org.suyu.suyu_emu.features.input.model.NativeButton
class ButtonInputSetting(
override val playerIndex: Int,

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.features.settings.model.AbstractLongSetting
import org.suyu.suyu_emu.features.settings.model.AbstractLongSetting
class DateTimeSetting(
private val longSetting: AbstractLongSetting,

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes

View file

@ -1,11 +1,11 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.utils.NativeConfig
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.utils.NativeConfig
class InputProfileSetting(private val playerIndex: Int) :
SettingsItem(emptySetting, R.string.profile, "", 0, "") {

View file

@ -1,15 +1,15 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.R
import org.yuzu.yuzu_emu.YuzuApplication
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.features.input.model.ButtonName
import org.yuzu.yuzu_emu.features.input.model.InputType
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.suyu.suyu_emu.R
import org.suyu.suyu_emu.SuyuApplication
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.input.model.ButtonName
import org.suyu.suyu_emu.features.input.model.InputType
import org.suyu.suyu_emu.utils.ParamPackage
sealed class InputSetting(
@StringRes titleId: Int,
@ -19,7 +19,7 @@ sealed class InputSetting(
abstract val inputType: InputType
abstract val playerIndex: Int
protected val context get() = YuzuApplication.appContext
protected val context get() = SuyuApplication.appContext
abstract fun getSelectedValue(): String

View file

@ -1,10 +1,10 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.features.settings.model.AbstractIntSetting
import org.suyu.suyu_emu.features.settings.model.AbstractIntSetting
class IntSingleChoiceSetting(
private val intSetting: AbstractIntSetting,

View file

@ -1,13 +1,13 @@
// SPDX-FileCopyrightText: 2024 yuzu Emulator Project
// SPDX-FileCopyrightText: 2024 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.StringRes
import org.yuzu.yuzu_emu.features.input.NativeInput
import org.yuzu.yuzu_emu.features.input.model.InputType
import org.yuzu.yuzu_emu.features.input.model.NativeAnalog
import org.yuzu.yuzu_emu.utils.ParamPackage
import org.suyu.suyu_emu.features.input.NativeInput
import org.suyu.suyu_emu.features.input.model.InputType
import org.suyu.suyu_emu.features.input.model.NativeAnalog
import org.suyu.suyu_emu.utils.ParamPackage
class ModifierInputSetting(
override val playerIndex: Int,

View file

@ -1,7 +1,7 @@
// SPDX-FileCopyrightText: 2023 yuzu Emulator Project
// SPDX-FileCopyrightText: 2023 suyu Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later
package org.yuzu.yuzu_emu.features.settings.model.view
package org.suyu.suyu_emu.features.settings.model.view
import androidx.annotation.DrawableRes
import androidx.annotation.StringRes

Some files were not shown because too many files have changed in this diff Show more