Compare commits

...

88 Commits

Author SHA1 Message Date
Ani 23b339d410 rpcs3_version: Bump to 0.0.38 2025-09-30 22:49:18 +01:00
Ani cc01b0f0dc yorha: Style QScrollbar 2025-09-30 21:58:45 +01:00
Ani 4d28a14c33 yorha: Tag r4 theme update 2025-09-30 21:58:45 +01:00
Ani 15178da4e3 yorha: Fix excessive QSpinBox height 2025-09-30 21:58:45 +01:00
Ani edda8bc490 yorha: Fix background on savestate manager 2025-09-30 21:58:45 +01:00
Ani 41cf61dcf7 yorha: Unify QCheckBox and QList/QTree indicator styling
Fixes styling of checkboxes inside LLE/HLE and Game Patches selector
2025-09-30 21:58:45 +01:00
Ani 4f8184a6a6 yorha: Fix left padding on QDockWidget titles 2025-09-30 21:58:45 +01:00
Ani 3017085a44 yorha: Only modify QMenuBar height on the main menu bar 2025-09-30 21:58:45 +01:00
Gustavo Graziano 506e927df5 Windows 11 Themes
I added 2 new Windows 11 themes Dark and Light
2025-09-30 20:52:32 +01:00
Ani 8f776e14a2 cubeb: Update to 2025-09-17 2025-09-30 20:20:35 +01:00
Megamouse 5b3c70fb18 Update Qt to 6.9.3 2025-09-30 20:10:11 +02:00
Swordmaster3214 6fe6c4e0f6 Enhance Infinity Manager Figure Creator Dialog (#17529)
## Summary
This will enhance and add filters for the Figure Creator dialog of
Infinity manager, adding selectable filters for the character dropdown
and displays the series number after the figure/power disc.

## Changes
- Added filter buttons for Disney Infinity 1.0, 2.0, 3.0, and "All"
- Character names now display series information (e.g., "Buzz Lightyear
(1.0)")
- Dynamic dropdown population based on selected filter
- Maintains all existing functionality and slot validation

## Benefits
- Easier character discovery in large character lists
- Better organization by game series
2025-09-28 22:29:54 +02:00
schm1dtmac 359163c442 Second set of Intel build optimisations (massive speedups, cold builds around 22mins now) & other cleanups 2025-09-25 18:22:02 +01:00
schm1dtmac 0b89b1b912 Cleanup & optimise the macOS CI scripts 2025-09-25 18:22:02 +01:00
isJuhn 6451c4d49f Fix calloc patches in the middle of blocks 2025-09-25 15:17:21 +03:00
Megamouse 8163c6c041 cellPad: simplify output button logic 2025-09-24 08:33:07 +02:00
Elad 29108e1cb4 PPU LLVM: Filter out functions with patches 2025-09-22 17:03:31 +03:00
fentbuscoding 6bc690491f Audio Processing Improvements (#17525)
This pull request introduces several improvements to the audio backend,
focusing on more accurate and higher-quality audio processing, smoother
transitions, and better volume control. The main changes include
enhancements to volume application and normalization, improved resampler
settings for higher audio fidelity, and more user-friendly volume
adjustment behavior.

**Audio Processing Improvements:**

* Added fast paths for unity gain and mute in `apply_volume_static`,
improving performance and precision when volume is unchanged or set to
zero. Also, improved floating-point comparison in `apply_volume` to
avoid infinite loops and ensure accurate volume ramping.
[[1]](diffhunk://#diff-a81b131fe4d35d635646418ea2196cd28208dc3e1b2ff72c29f606bf963e1a92R62-R78)
[[2]](diffhunk://#diff-a81b131fe4d35d635646418ea2196cd28208dc3e1b2ff72c29f606bf963e1a92R111-R129)
* Enhanced normalization in `normalize` by introducing soft clipping for
smoother distortion and better dynamic range handling, reducing harsh
audio artifacts.

**Audio Quality Enhancements:**

* Updated resampler settings in `audio_resampler` to prioritize audio
quality over latency by increasing sequence length, improving overlap
and seeking window, disabling quick seek, and enabling anti-aliasing
filtering.

**Volume Control Improvements:**

* Implemented non-linear volume scaling in `audio_utils.cpp` for more
precise control at low volumes and faster adjustment at high volumes,
resulting in a more natural user experience.

**Code Quality and Consistency:**

* Refactored several methods in `AudioBackend` to use consistent
formatting and clearer logic, and increased `VOLUME_CHANGE_DURATION` for
smoother volume transitions.
[[1]](diffhunk://#diff-f0ca92a07863205fb9a1c687e4eaf14c932446e72b095f5265a8e7dbef2b7236L96-R98)
[[2]](diffhunk://#diff-f0ca92a07863205fb9a1c687e4eaf14c932446e72b095f5265a8e7dbef2b7236L108-R129)
[[3]](diffhunk://#diff-f0ca92a07863205fb9a1c687e4eaf14c932446e72b095f5265a8e7dbef2b7236L388-R400)
* Added missing includes and improved formatting for better
maintainability.
[[1]](diffhunk://#diff-a81b131fe4d35d635646418ea2196cd28208dc3e1b2ff72c29f606bf963e1a92R5-R6)
[[2]](diffhunk://#diff-49dc42f5cf17be84cfe84c0911320ab86307bef6095a09ccf743d4af5e32d3a5R7)
[[3]](diffhunk://#diff-f0ca92a07863205fb9a1c687e4eaf14c932446e72b095f5265a8e7dbef2b7236L187-R199)
2025-09-22 09:06:18 +03:00
Elad 9524211b9a sys_spu: Untangle IDM mutex from sys_spu's 2025-09-21 18:22:38 +03:00
Elad 9d020a3e59 SPU: Fix Max SPURS Threads Limit 2025-09-21 17:11:40 +03:00
Elad d92ebf7b31 SPU: Fix group wakeup 2025-09-21 17:11:40 +03:00
Megamouse 1667998b4e SDL: call SDL_PumpEvents from main thread 2025-09-21 10:07:02 +02:00
isJuhn 6b87423293 Fix rc variants of ADDE and SUBFE in interpreter 2025-09-20 20:22:48 +03:00
Elad 3e701a743b Win32/SPU: Respect home space / shadow space on the stack frame 2025-09-19 12:28:51 +03:00
Elad ffeb16fe1e Win32: Respect home space / shadow space on the stack frame (#17514)
Previous code did not respect the 32-byte long area on the stack frame
called the home space - area on the stack frame area that is specific to
Microsoft's x64 calling convention, leading to corrupted values after a
callback.
Bug noticed by @capriots

Co-Authored-By: capriots <29807355+capriots@users.noreply.github.com>
2025-09-19 11:46:39 +03:00
Megamouse e995511c57 Revert "Update wolfssl to 5.8.2"
This reverts commit 99b3c45f05.
2025-09-19 02:24:11 +01:00
Megamouse cc3b1163f1 Qt: Fix savestate table selection style 2025-09-18 23:33:46 +02:00
kd-11 335ed8d91b vk: Fix invalidated surface_cache resource deletion bug 2025-09-16 16:33:52 +03:00
Megamouse 1a7d702e4e Qt: Check if movie item changed and is valid before calling the callbacks 2025-09-16 11:05:21 +02:00
Megamouse 25925f2680 qt: use the same date format in all managers 2025-09-15 00:06:30 +02:00
Megamouse 0daa6d6fb0 rsx: allow to toggle 3D modes dynamically
A new checkbox for 3D support needs to be enabled at boot though.
2025-09-14 14:08:22 +02:00
Megamouse 6106e8f79f rsx: fix 3D aspect ratio 2025-09-12 21:18:13 +02:00
Megamouse a2a3ce1d7a cellMouse: Add debug overlay 2025-09-12 04:10:19 +02:00
Megamouse c36d01b46b Update curl to 8.16.0 2025-09-11 22:14:28 +02:00
Megamouse b3d5493a6b input: restore original defaults when changing pad handlers
This fixes the vibration threshold being 0 when going to DS3 and back.
Probably also fixes a lot of other tiny bugs.
2025-09-11 10:24:08 +02:00
Megamouse 735588aa1a qt/input: add vibration threshold to pad settings dialog 2025-09-11 10:24:08 +02:00
Megamouse 0876a7d37e input: Memorize original small motor value for display purposes 2025-09-11 10:24:08 +02:00
Megamouse aca9d28a7a input: simplify VibrateMotor constructor 2025-09-11 10:24:08 +02:00
Megamouse 6911d0b5e1 cellPad: Add DS3 motor speed threshold
Also add motor speeds to pad debug overlay
2025-09-11 10:24:08 +02:00
Megamouse eb6d13a8c0 System: expose date format and time format as settings 2025-09-10 19:51:43 +02:00
Antonino Di Guardo 09f8c6ddcd Add selection on firmware libraries panel by double-clicking (#17481)
I minor, and last, follow up of #17459 and #17442 allowing to
check/uncheck an entry in the firmware libraries panel by
double-clicking.
For that panel, a solution based on single-clicking was preferrable but
it seems it was conflicting with the existing itemChanged (single click
was triggered twice so producing no state change).
IMO, better than nothing.

---------

Co-authored-by: Megamouse <studienricky89@googlemail.com>
2025-09-10 16:25:47 +02:00
Megamouse f63bb4c7fb input: fix sdl pad handler LED and rumble properties 2025-09-08 21:20:21 +02:00
Antonino Di Guardo 28920f1781 Fix emulator crash when a pad gets disconnected (e.g. due to inactivity) (#17478) 2025-09-07 21:21:35 +02:00
Megamouse e457dbdea3 Update opencv to 4.12.0 2025-09-07 17:32:25 +02:00
Elad c76a3366ec Network: Increase P2P listener thread rest duration (#17474)
1 milisecond is not enough time for WSAPoll to be CPU time efficient, 5 miliseconds seems to address it.
2025-09-07 13:03:36 +03:00
Elad 0564842871 SPU: Restore postponed LR notifications (with tweaks) 2025-09-06 00:05:46 +03:00
Elad f84df03651 SPU: Limit SPU self notifying thread to 12+ threaded CPUs 2025-09-05 11:11:03 +03:00
Elad fc62733d65 SPU: Self-notifying SPU waiters 2025-09-05 11:11:03 +03:00
Elad cfe1eca185 SPU: Reimplement reservation notifications 2025-09-05 11:11:03 +03:00
Megamouse 34a9d03d3d Update SDL to 3.2.22 2025-09-02 23:29:54 +02:00
Megamouse 79fa06f9d6 Update FAudio to 25.09 2025-09-02 23:29:54 +02:00
Megamouse c7de9053b4 Qt: fix saved gs_frame visibility 2025-09-02 00:30:44 +02:00
Antonino Di Guardo 6d1a85b947 Minor improvements and cleanup on VFS panel (#17459) 2025-09-01 20:44:00 +02:00
Megamouse 4800aa9bfc Update Qt to 6.9.2 2025-08-29 21:17:30 +02:00
RunnerFaith 92a30b4e41 Fix raw mouse handler keypress logic 2025-08-27 20:50:38 +02:00
schm1dtmac 6b238d847f Fix mvk formulae causing builds to fail 2025-08-25 19:21:56 +02:00
Antonino Di Guardo 3a13da3201 asm.hpp: Make utils::rational_mul<u64>() consistent (#17452) 2025-08-24 19:12:35 +03:00
Megamouse 4332d2151e vfs_dialog: ensure that one item is always selected 2025-08-24 10:26:46 +02:00
Megamouse e56bc9d15f vfs_dialog: allow to check list items with double-click 2025-08-24 10:26:46 +02:00
Megamouse ce4edf9cb1 patch_manager: make patches selectable by double click 2025-08-24 10:26:46 +02:00
Megamouse d72f95677e overlays: add settings for screenshot and recording hints 2025-08-21 08:27:12 +02:00
Megamouse d087c86243 Audio: simplify apply_volume 2025-08-20 20:36:29 +02:00
Elad 6e7c3362b3 SPU: Update RdEventStat Busy Wait detection to updated setting behavior 2025-08-20 06:36:11 +03:00
ADAS2024 246519c5e1 Fixes for AppImage not targeting Gamemode (#17398)
Targets #17386
2025-08-18 00:03:31 +02:00
oltolm 8e34d7885c SPULLVMRecompiler: add overload for _ptr 2025-08-09 23:34:23 +03:00
oltolm 1902c5f3f4 SPULLVMRecompiler: remove unused parameters from spu_ptr and _ptr 2025-08-09 23:34:23 +03:00
oltolm 48d3b30204 llvm: use CreatePtrAdd
use CreatePtrAdd instead of CreateGEP(get_type<u8>(), ...) or
CreateIntToPtr(CreateAdd, CreatePtrToInt(...))
2025-08-09 09:41:07 +03:00
Megamouse f474533447 Update SDL to 3.2.20 2025-08-06 22:28:06 +02:00
Megamouse bf3501b737 Update 7zip to 25.01 2025-08-06 22:28:06 +02:00
Megamouse cda683df63 Update FAudio to 25.08 2025-08-06 22:28:06 +02:00
Marcin Serwin e5537c1cb0 Remove alternative default device detection in Cubeb backend
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 21:00:57 +01:00
Marcin Serwin e49a086edf Fix description of system wolfSSL option
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin 69bf745246 Add option to use system Vulkan Memory Allocator
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin 2211876b57 Add option to use system hidapi
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin cb5411440d Add option to use system zstd
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin 1b72868abf Add option to use system glslang
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin 9126d617c5 Add option to use system RtMidi
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Marcin Serwin aa7758a20f Add option to use system MiniUPnPc
Signed-off-by: Marcin Serwin <marcin@serwin.dev>
2025-08-04 19:56:01 +02:00
Takuya Wakazono 81b33625f9 Set USE_SYSTEM_OPENAL default to OFF on macOS and Windows
On Linux, using system libraries is generally preferred, but this is
less relevant on macOS and Windows. In particular, macOS does not
provide "alext.h" in its OpenAL framework, which causes the build to
fail.
2025-08-03 12:27:02 +02:00
Takuya Wakazono daad30b2b3 Fix USE_SYSTEM_OPENAL to use system headers
Even when USE_SYSTEM_OPENAL was enabled, the code directly included the
bundled OpenAL headers, bypassing the system headers.

Since `#include <AL/al.h>` is not portable, use `#include "al.h"`
instead.
https://cmake.org/cmake/help/latest/module/FindOpenAL.html
2025-08-03 12:27:02 +02:00
Megamouse e319ca2998 Update SDL to 3.2.18 2025-07-28 21:42:36 +01:00
Megamouse 99b3c45f05 Update wolfssl to 5.8.2 2025-07-28 21:42:36 +01:00
Megamouse 3fd417e230 Update curl to 8.15.0 2025-07-28 21:42:36 +01:00
Ani b90bacba48 vk: Fix textureCompressionBC check for v3dv/panvk 2025-07-23 02:42:26 +03:00
Yahfz 7fe3afbbc2 Add support for arrowlake-s and lunarlake CPUs 2025-07-20 03:27:47 +03:00
Yahfz 8b9c9f677a ARL wasn't using FMA/VNNI/GFNI 2025-07-20 01:18:21 +03:00
Elad 620997c193 SPU/LV2: Notify SPU events after mutex guards' unlocking 2025-07-19 22:44:45 +03:00
capriots 06f480cb83 VS: add quotes around paths
Fixes use with paths that contain spaces.
2025-07-15 23:38:18 +03:00
227 changed files with 4883 additions and 1417 deletions
+10 -9
View File
@@ -6,14 +6,15 @@ export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
export HOMEBREW_NO_ENV_HINTS=1
export HOMEBREW_NO_INSTALL_CLEANUP=1
/opt/homebrew/bin/brew install -f --overwrite --quiet nasm ninja p7zip ccache pipenv gnutls freetype googletest #create-dmg
/opt/homebrew/bin/brew install -f --quiet ffmpeg@5
/opt/homebrew/bin/brew install --quiet "llvm@$LLVM_COMPILER_VER" glew cmake sdl3 vulkan-headers coreutils
/opt/homebrew/bin/brew link -f --quiet "llvm@$LLVM_COMPILER_VER" ffmpeg@5
brew install -f --overwrite --quiet ccache pipenv googletest ffmpeg@5 "llvm@$LLVM_COMPILER_VER" glew sdl3 vulkan-headers
brew link -f --quiet "llvm@$LLVM_COMPILER_VER" ffmpeg@5
# moltenvk based on commit for 1.3.0 release
export HOMEBREW_DEVELOPER=1 # Prevents blocking of local formulae
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/7255441cbcafabaa8950f67c7ec55ff499dbb2d3/Formula/m/molten-vk.rb
/opt/homebrew/bin/brew install -f --overwrite --formula --quiet ./molten-vk.rb
export HOMEBREW_DEVELOPER=0
export CXX=clang++
export CC=clang
@@ -32,17 +33,17 @@ if [ ! -d "/tmp/Qt/$QT_VER" ]; then
git clone https://github.com/engnr/qt-downloader.git
cd qt-downloader
git checkout f52efee0f18668c6d6de2dec0234b8c4bc54c597
# nested Qt 6.9.1 URL workaround
# nested Qt 6.9.3 URL workaround
# sed -i '' "s/'qt{0}_{0}{1}{2}'.format(major, minor, patch)]))/'qt{0}_{0}{1}{2}'.format(major, minor, patch), 'qt{0}_{0}{1}{2}'.format(major, minor, patch)]))/g" qt-downloader
# sed -i '' "s/'{}\/{}\/qt{}_{}\/'/'{0}\/{1}\/qt{2}_{3}\/qt{2}_{3}\/'/g" qt-downloader
# archived Qt 6.7.3 URL workaround
sed -i '' "s/official_releases/archive/g" qt-downloader
cd "/tmp/Qt"
arch -arm64 "$BREW_PATH/bin/pipenv" run pip3 uninstall py7zr requests semantic_version lxml
arch -arm64 "$BREW_PATH/bin/pipenv" run pip3 install py7zr requests semantic_version lxml --no-cache
"$BREW_PATH/bin/pipenv" run pip3 uninstall py7zr requests semantic_version lxml
"$BREW_PATH/bin/pipenv" run pip3 install py7zr requests semantic_version lxml --no-cache
mkdir -p "$QT_VER/macos" ; ln -s "macos" "$QT_VER/clang_64"
# sed -i '' 's/args\.version \/ derive_toolchain_dir(args) \/ //g' "$WORKDIR/qt-downloader/qt-downloader" # Qt 6.9.1 workaround
arch -arm64 "$BREW_PATH/bin/pipenv" run "$WORKDIR/qt-downloader/qt-downloader" macos desktop "$QT_VER" clang_64 --opensource --addons qtmultimedia qtimageformats # -o "$QT_VER/clang_64"
# sed -i '' 's/args\.version \/ derive_toolchain_dir(args) \/ //g' "$WORKDIR/qt-downloader/qt-downloader" # Qt 6.9.3 workaround
"$BREW_PATH/bin/pipenv" run "$WORKDIR/qt-downloader/qt-downloader" macos desktop "$QT_VER" clang_64 --opensource --addons qtmultimedia qtimageformats # -o "$QT_VER/clang_64"
fi
cd "$WORKDIR"
+18 -17
View File
@@ -6,18 +6,17 @@ export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1
export HOMEBREW_NO_ENV_HINTS=1
export HOMEBREW_NO_INSTALL_CLEANUP=1
#/usr/sbin/softwareupdate --install-rosetta --agree-to-license
brew install -f --overwrite --quiet ccache pipenv "llvm@$LLVM_COMPILER_VER"
brew link -f --overwrite --quiet "llvm@$LLVM_COMPILER_VER"
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
arch -x86_64 /usr/local/bin/brew update
arch -x86_64 /usr/local/bin/brew install -f --overwrite --quiet python || arch -x86_64 /usr/local/bin/brew link --overwrite python
arch -x86_64 /usr/local/bin/brew install -f --overwrite --quiet nasm ninja p7zip ccache pipenv gnutls freetype #create-dmg
arch -x86_64 /usr/local/bin/brew install -f --quiet ffmpeg@5
arch -x86_64 /usr/local/bin/brew install --quiet "llvm@$LLVM_COMPILER_VER" glew cmake sdl3 vulkan-headers coreutils
arch -x86_64 /usr/local/bin/brew link -f --quiet "llvm@$LLVM_COMPILER_VER" ffmpeg@5
arch -x86_64 /usr/local/bin/brew install -f --overwrite --quiet ffmpeg@5 "llvm@$LLVM_COMPILER_VER" glew sdl3 vulkan-headers
arch -x86_64 /usr/local/bin/brew link -f --overwrite --quiet "llvm@$LLVM_COMPILER_VER" ffmpeg@5
# moltenvk based on commit for 1.3.0 release
export HOMEBREW_DEVELOPER=1 # Prevents blocking of local formulae
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/7255441cbcafabaa8950f67c7ec55ff499dbb2d3/Formula/m/molten-vk.rb
arch -x86_64 /usr/local/bin/brew install -f --overwrite --formula --quiet ./molten-vk.rb
export HOMEBREW_DEVELOPER=0
export CXX=clang++
export CC=clang
@@ -36,16 +35,16 @@ if [ ! -d "/tmp/Qt/$QT_VER" ]; then
git clone https://github.com/engnr/qt-downloader.git
cd qt-downloader
git checkout f52efee0f18668c6d6de2dec0234b8c4bc54c597
# nested Qt 6.9.1 URL workaround
# nested Qt 6.9.3 URL workaround
# sed -i '' "s/'qt{0}_{0}{1}{2}'.format(major, minor, patch)]))/'qt{0}_{0}{1}{2}'.format(major, minor, patch), 'qt{0}_{0}{1}{2}'.format(major, minor, patch)]))/g" qt-downloader
# sed -i '' "s/'{}\/{}\/qt{}_{}\/'/'{0}\/{1}\/qt{2}_{3}\/qt{2}_{3}\/'/g" qt-downloader
# archived Qt 6.7.3 URL workaround
sed -i '' "s/official_releases/archive/g" qt-downloader
cd "/tmp/Qt"
arch -x86_64 "$BREW_X64_PATH/bin/pipenv" --python "$BREW_X64_PATH/bin/python3" run pip3 install py7zr requests semantic_version lxml
"/opt/homebrew/bin/pipenv" --python "/opt/homebrew/bin/python3" run pip3 install py7zr requests semantic_version lxml
mkdir -p "$QT_VER/macos" ; ln -s "macos" "$QT_VER/clang_64"
# sed -i '' 's/args\.version \/ derive_toolchain_dir(args) \/ //g' "$WORKDIR/qt-downloader/qt-downloader" # Qt 6.9.1 workaround
arch -x86_64 "$BREW_X64_PATH/bin/pipenv" --python "$BREW_X64_PATH/bin/python3" run "$WORKDIR/qt-downloader/qt-downloader" macos desktop "$QT_VER" clang_64 --opensource --addons qtmultimedia qtimageformats # -o "$QT_VER/clang_64"
# sed -i '' 's/args\.version \/ derive_toolchain_dir(args) \/ //g' "$WORKDIR/qt-downloader/qt-downloader" # Qt 6.9.3 workaround
"/opt/homebrew/bin/pipenv" --python "/opt/homebrew/bin/python3" run "$WORKDIR/qt-downloader/qt-downloader" macos desktop "$QT_VER" clang_64 --opensource --addons qtmultimedia qtimageformats # -o "$QT_VER/clang_64"
fi
cd "$WORKDIR"
@@ -54,12 +53,12 @@ ditto "/tmp/Qt/$QT_VER" "qt-downloader/$QT_VER"
export Qt6_DIR="$WORKDIR/qt-downloader/$QT_VER/clang_64/lib/cmake/Qt$QT_VER_MAIN"
export SDL3_DIR="$BREW_X64_PATH/opt/sdl3/lib/cmake/SDL3"
export PATH="$BREW_X64_PATH/opt/llvm@$LLVM_COMPILER_VER/bin:$WORKDIR/qt-downloader/$QT_VER/clang_64/bin:$BREW_BIN:$BREW_SBIN:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin:$PATH"
export PATH="/opt/homebrew/opt/llvm@$LLVM_COMPILER_VER/bin:$WORKDIR/qt-downloader/$QT_VER/clang_64/bin:$BREW_BIN:$BREW_SBIN:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/Apple/usr/bin:$PATH"
export LDFLAGS="-L$BREW_X64_PATH/lib -Wl,-rpath,$BREW_X64_PATH/lib"
export CPPFLAGS="-I$BREW_X64_PATH/include -msse -msse2 -mcx16 -no-pie -D__MAC_OS_X_VERSION_MIN_REQUIRED=140000"
export CFLAGS="-D__MAC_OS_X_VERSION_MIN_REQUIRED=140000"
export LIBRARY_PATH="$BREW_X64_PATH/lib"
export LD_LIBRARY_PATH="$BREW_X64_PATH/lib"
export LIBRARY_PATH="$BREW_X64_PATH/opt/llvm@$LLVM_COMPILER_VER/lib:$BREW_X64_PATH/lib"
export LD_LIBRARY_PATH="$BREW_X64_PATH/opt/llvm@$LLVM_COMPILER_VER/lib:$BREW_X64_PATH/lib"
export VULKAN_SDK
VULKAN_SDK="$BREW_X64_PATH/opt/molten-vk"
@@ -67,7 +66,7 @@ ln -s "$VULKAN_SDK/lib/libMoltenVK.dylib" "$VULKAN_SDK/lib/libvulkan.dylib"
export VK_ICD_FILENAMES="$VULKAN_SDK/share/vulkan/icd.d/MoltenVK_icd.json"
export LLVM_DIR
LLVM_DIR="BREW_X64_PATH/opt/llvm@$LLVM_COMPILER_VER"
LLVM_DIR="$BREW_X64_PATH/opt/llvm@$LLVM_COMPILER_VER"
# exclude ffmpeg, LLVM, opencv, and sdl from submodule update
# shellcheck disable=SC2046
git submodule -q update --init --depth=1 --jobs=8 $(awk '/path/ && !/ffmpeg/ && !/llvm/ && !/opencv/ && !/SDL/ && !/feralinteractive/ { print $3 }' .gitmodules)
@@ -79,7 +78,7 @@ mkdir build && cd build || exit 1
export MACOSX_DEPLOYMENT_TARGET=14.0
"$BREW_X64_PATH/bin/cmake" .. \
"/opt/homebrew/bin/cmake" .. \
-DBUILD_RPCS3_TESTS=OFF \
-DRUN_RPCS3_TESTS=OFF \
-DUSE_SDL=ON \
@@ -107,6 +106,8 @@ export MACOSX_DEPLOYMENT_TARGET=14.0
"$CMAKE_EXTRA_OPTS" \
-DLLVM_TARGET_ARCH=X86_64 \
-DCMAKE_OSX_ARCHITECTURES=x86_64 \
-DCMAKE_SYSTEM_PROCESSOR=x86_64 \
-DCMAKE_TOOLCHAIN_FILE=buildfiles/cmake/TCDarwinX86_64.cmake \
-DCMAKE_IGNORE_PATH="$BREW_X64_PATH/lib" \
-DCMAKE_IGNORE_PREFIX_PATH=/usr/local/opt \
-DCMAKE_CXX_FLAGS="-D__MAC_OS_X_VERSION_MIN_REQUIRED=140000" \
@@ -114,7 +115,7 @@ export MACOSX_DEPLOYMENT_TARGET=14.0
-DCMAKE_OSX_SYSROOT="$(xcrun --sdk macosx --show-sdk-path)" \
-G Ninja
"$BREW_X64_PATH/bin/ninja"; build_status=$?;
"/opt/homebrew/bin/ninja"; build_status=$?;
cd ..
+1 -17
View File
@@ -48,24 +48,8 @@ echo "[InternetShortcut]" > Quickstart.url
echo "URL=https://rpcs3.net/quickstart" >> Quickstart.url
echo "IconIndex=0" >> Quickstart.url
#DMG_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos_arm64.dmg"
#"$BREW_X64_PATH/bin/create-dmg" --volname RPCS3 \
#--window-size 800 400 \
#--icon-size 100 \
#--icon rpcs3.app 200 190 \
#--add-file Quickstart.url Quickstart.url 400 20 \
#--hide-extension rpcs3.app \
#--hide-extension Quickstart.url \
#--app-drop-link 600 185 \
#--skip-jenkins \
#--format ULMO \
#"$DMG_FILEPATH" \
#RPCS3.app
#FILESIZE=$(stat -f %z "$DMG_FILEPATH")
#SHA256SUM=$(shasum -a 256 "$DMG_FILEPATH" | awk '{ print $1 }')
ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos_arm64.7z"
"$BREW_PATH/bin/7z" a -mx9 "$ARCHIVE_FILEPATH" RPCS3.app Quickstart.url
"/opt/homebrew/bin/7z" a -mx9 "$ARCHIVE_FILEPATH" RPCS3.app Quickstart.url
FILESIZE=$(stat -f %z "$ARCHIVE_FILEPATH")
SHA256SUM=$(shasum -a 256 "$ARCHIVE_FILEPATH" | awk '{ print $1 }')
+2 -20
View File
@@ -36,9 +36,7 @@ mv rpcs3.app RPCS3_.app
mv RPCS3_.app RPCS3.app
# Hack
install_name_tool \
-delete_rpath /usr/local/lib \
-delete_rpath /usr/local/opt/llvm@$LLVM_COMPILER_VER/lib RPCS3.app/Contents/MacOS/rpcs3
install_name_tool -delete_rpath /usr/local/lib RPCS3.app/Contents/MacOS/rpcs3
#-delete_rpath /usr/local/Cellar/sdl3/3.2.8/lib
# NOTE: "--deep" is deprecated
@@ -48,24 +46,8 @@ echo "[InternetShortcut]" > Quickstart.url
echo "URL=https://rpcs3.net/quickstart" >> Quickstart.url
echo "IconIndex=0" >> Quickstart.url
#DMG_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos.dmg"
#"$BREW_X64_PATH/bin/create-dmg" --volname RPCS3 \
#--window-size 800 400 \
#--icon-size 100 \
#--icon rpcs3.app 200 190 \
#--add-file Quickstart.url Quickstart.url 400 20 \
#--hide-extension rpcs3.app \
#--hide-extension Quickstart.url \
#--app-drop-link 600 185 \
#--skip-jenkins \
#--format ULMO \
#"$DMG_FILEPATH" \
#RPCS3.app
#FILESIZE=$(stat -f %z "$DMG_FILEPATH")
#SHA256SUM=$(shasum -a 256 "$DMG_FILEPATH" | awk '{ print $1 }')
ARCHIVE_FILEPATH="$BUILD_ARTIFACTSTAGINGDIRECTORY/rpcs3-v${COMM_TAG}-${COMM_COUNT}-${COMM_HASH}_macos.7z"
"$BREW_X64_PATH/bin/7z" a -mx9 "$ARCHIVE_FILEPATH" RPCS3.app Quickstart.url
"/opt/homebrew/bin/7z" a -mx9 "$ARCHIVE_FILEPATH" RPCS3.app Quickstart.url
FILESIZE=$(stat -f %z "$ARCHIVE_FILEPATH")
SHA256SUM=$(shasum -a 256 "$ARCHIVE_FILEPATH" | awk '{ print $1 }')
+3 -3
View File
@@ -123,7 +123,7 @@ jobs:
matrix:
include:
- name: Intel
build_sh: "arch -X86_64 .ci/build-mac.sh"
build_sh: .ci/build-mac.sh
UPLOAD_COMMIT_HASH: 51ae32f468089a8169aaf1567de355ff4a3e0842
UPLOAD_REPO_FULL_NAME: rpcs3/rpcs3-binaries-mac
- name: Apple Silicon
@@ -212,9 +212,9 @@ jobs:
env:
COMPILER: msvc
QT_VER_MAIN: '6'
QT_VER: '6.9.1'
QT_VER: '6.9.3'
QT_VER_MSVC: 'msvc2022'
QT_DATE: '202505291653'
QT_DATE: '202509261208'
LLVM_VER: '19.1.7'
VULKAN_VER: '1.3.268.0'
VULKAN_SDK_SHA: '8459ef49bd06b697115ddd3d97c9aec729e849cd775f5be70897718a9b3b9db5'
+9 -4
View File
@@ -51,6 +51,14 @@ else()
add_subdirectory(pugixml EXCLUDE_FROM_ALL)
endif()
if (USE_SYSTEM_VULKAN_MEMORY_ALLOCATOR)
find_package(VulkanMemoryAllocator REQUIRED GLOBAL)
add_library(3rdparty::vulkanmemoryallocator ALIAS GPUOpen::VulkanMemoryAllocator)
else()
add_library(3rdparty_vulkanmemoryallocator INTERFACE)
target_include_directories(3rdparty_vulkanmemoryallocator INTERFACE GPUOpen/VulkanMemoryAllocator/include)
add_library(3rdparty::vulkanmemoryallocator ALIAS 3rdparty_vulkanmemoryallocator)
endif()
# libusb
if(CMAKE_SYSTEM_NAME MATCHES "DragonFly|FreeBSD")
@@ -92,9 +100,6 @@ add_subdirectory(hidapi)
# glslang
add_subdirectory(glslang EXCLUDE_FROM_ALL)
add_library(3rdparty_glslang INTERFACE)
target_link_libraries(3rdparty_glslang INTERFACE SPIRV)
# yaml-cpp
add_subdirectory(yaml-cpp)
@@ -388,7 +393,7 @@ add_library(3rdparty::wolfssl ALIAS wolfssl)
add_library(3rdparty::libcurl ALIAS 3rdparty_libcurl)
add_library(3rdparty::soundtouch ALIAS soundtouch)
add_library(3rdparty::sdl3 ALIAS ${SDL3_TARGET})
add_library(3rdparty::miniupnpc ALIAS libminiupnpc-static)
add_library(3rdparty::miniupnpc ALIAS 3rdparty_miniupnpc)
add_library(3rdparty::rtmidi ALIAS rtmidi)
add_library(3rdparty::opencv ALIAS ${OPENCV_TARGET})
add_library(3rdparty::fusion ALIAS Fusion)
+8 -8
View File
@@ -70,6 +70,7 @@
<ClCompile Include="curl\lib\cf-h2-proxy.c" />
<ClCompile Include="curl\lib\cf-haproxy.c" />
<ClCompile Include="curl\lib\cf-https-connect.c" />
<ClCompile Include="curl\lib\cf-ip-happy.c" />
<ClCompile Include="curl\lib\cf-socket.c" />
<ClCompile Include="curl\lib\cfilters.c" />
<ClCompile Include="curl\lib\conncache.c" />
@@ -79,6 +80,7 @@
<ClCompile Include="curl\lib\cshutdn.c" />
<ClCompile Include="curl\lib\curlx\base64.c" />
<ClCompile Include="curl\lib\curlx\dynbuf.c" />
<ClCompile Include="curl\lib\curlx\inet_ntop.c" />
<ClCompile Include="curl\lib\curlx\inet_pton.c" />
<ClCompile Include="curl\lib\curlx\multibyte.c" />
<ClCompile Include="curl\lib\curlx\nonblock.c" />
@@ -86,6 +88,7 @@
<ClCompile Include="curl\lib\curlx\timediff.c" />
<ClCompile Include="curl\lib\curlx\timeval.c" />
<ClCompile Include="curl\lib\curlx\version_win32.c" />
<ClCompile Include="curl\lib\curlx\wait.c" />
<ClCompile Include="curl\lib\curlx\warnless.c" />
<ClCompile Include="curl\lib\curlx\winapi.c" />
<ClCompile Include="curl\lib\curl_addrinfo.c" />
@@ -144,7 +147,6 @@
<ClCompile Include="curl\lib\idn.c" />
<ClCompile Include="curl\lib\if2ip.c" />
<ClCompile Include="curl\lib\imap.c" />
<ClCompile Include="curl\lib\inet_ntop.c" />
<ClCompile Include="curl\lib\krb5.c" />
<ClCompile Include="curl\lib\ldap.c" />
<ClCompile Include="curl\lib\llist.c" />
@@ -199,7 +201,6 @@
<ClCompile Include="curl\lib\urlapi.c" />
<ClCompile Include="curl\lib\vauth\gsasl.c" />
<ClCompile Include="curl\lib\version.c" />
<ClCompile Include="curl\lib\vquic\curl_msh3.c" />
<ClCompile Include="curl\lib\vquic\curl_ngtcp2.c" />
<ClCompile Include="curl\lib\vquic\curl_quiche.c" />
<ClCompile Include="curl\lib\vtls\cipher_suite.c" />
@@ -225,7 +226,6 @@
<ClCompile Include="curl\lib\vssh\libssh.c" />
<ClCompile Include="curl\lib\vssh\libssh2.c" />
<ClCompile Include="curl\lib\vssh\wolfssh.c" />
<ClCompile Include="curl\lib\vtls\bearssl.c" />
<ClCompile Include="curl\lib\vtls\gtls.c" />
<ClCompile Include="curl\lib\vtls\keylog.c" />
<ClCompile Include="curl\lib\vtls\mbedtls.c" />
@@ -233,7 +233,6 @@
<ClCompile Include="curl\lib\vtls\openssl.c" />
<ClCompile Include="curl\lib\vtls\schannel.c" />
<ClCompile Include="curl\lib\vtls\schannel_verify.c" />
<ClCompile Include="curl\lib\vtls\sectransp.c" />
<ClCompile Include="curl\lib\vtls\vtls.c" />
<ClCompile Include="curl\lib\vtls\wolfssl.c" />
<ClCompile Include="curl\lib\ws.c" />
@@ -258,6 +257,7 @@
<ClInclude Include="curl\lib\cf-h2-proxy.h" />
<ClInclude Include="curl\lib\cf-haproxy.h" />
<ClInclude Include="curl\lib\cf-https-connect.h" />
<ClInclude Include="curl\lib\cf-ip-happy.h" />
<ClInclude Include="curl\lib\cf-socket.h" />
<ClInclude Include="curl\lib\cfilters.h" />
<ClInclude Include="curl\lib\config-mac.h" />
@@ -271,8 +271,10 @@
<ClInclude Include="curl\lib\cookie.h" />
<ClInclude Include="curl\lib\cshutdn.h" />
<ClInclude Include="curl\lib\curlx\base64.h" />
<ClInclude Include="curl\lib\curlx\binmode.h" />
<ClInclude Include="curl\lib\curlx\curlx.h" />
<ClInclude Include="curl\lib\curlx\dynbuf.h" />
<ClInclude Include="curl\lib\curlx\inet_ntop.h" />
<ClInclude Include="curl\lib\curlx\inet_pton.h" />
<ClInclude Include="curl\lib\curlx\multibyte.h" />
<ClInclude Include="curl\lib\curlx\nonblock.h" />
@@ -280,6 +282,7 @@
<ClInclude Include="curl\lib\curlx\timediff.h" />
<ClInclude Include="curl\lib\curlx\timeval.h" />
<ClInclude Include="curl\lib\curlx\version_win32.h" />
<ClInclude Include="curl\lib\curlx\wait.h" />
<ClInclude Include="curl\lib\curlx\warnless.h" />
<ClInclude Include="curl\lib\curlx\winapi.h" />
<ClInclude Include="curl\lib\curl_addrinfo.h" />
@@ -297,6 +300,7 @@
<ClInclude Include="curl\lib\curl_md5.h" />
<ClInclude Include="curl\lib\curl_memory.h" />
<ClInclude Include="curl\lib\curl_memrchr.h" />
<ClInclude Include="curl\lib\curl_mem_undef.h" />
<ClInclude Include="curl\lib\curl_ntlm_core.h" />
<ClInclude Include="curl\lib\curl_printf.h" />
<ClInclude Include="curl\lib\curl_range.h" />
@@ -345,7 +349,6 @@
<ClInclude Include="curl\lib\idn.h" />
<ClInclude Include="curl\lib\if2ip.h" />
<ClInclude Include="curl\lib\imap.h" />
<ClInclude Include="curl\lib\inet_ntop.h" />
<ClInclude Include="curl\lib\llist.h" />
<ClInclude Include="curl\lib\macos.h" />
<ClInclude Include="curl\lib\memdebug.h" />
@@ -397,7 +400,6 @@
<ClInclude Include="curl\lib\url.h" />
<ClInclude Include="curl\lib\urlapi-int.h" />
<ClInclude Include="curl\lib\urldata.h" />
<ClInclude Include="curl\lib\vquic\curl_msh3.h" />
<ClInclude Include="curl\lib\vquic\curl_ngtcp2.h" />
<ClInclude Include="curl\lib\vquic\curl_quiche.h" />
<ClInclude Include="curl\lib\vquic\vquic_int.h" />
@@ -415,14 +417,12 @@
<ClInclude Include="curl\lib\vquic\vquic.h" />
<ClInclude Include="curl\lib\vssh\curl_path.h" />
<ClInclude Include="curl\lib\vssh\ssh.h" />
<ClInclude Include="curl\lib\vtls\bearssl.h" />
<ClInclude Include="curl\lib\vtls\gtls.h" />
<ClInclude Include="curl\lib\vtls\keylog.h" />
<ClInclude Include="curl\lib\vtls\mbedtls.h" />
<ClInclude Include="curl\lib\vtls\mbedtls_threadlock.h" />
<ClInclude Include="curl\lib\vtls\openssl.h" />
<ClInclude Include="curl\lib\vtls\schannel.h" />
<ClInclude Include="curl\lib\vtls\sectransp.h" />
<ClInclude Include="curl\lib\vtls\vtls.h" />
<ClInclude Include="curl\lib\vtls\wolfssl.h" />
<ClInclude Include="curl\lib\ws.h" />
+24 -24
View File
@@ -159,9 +159,6 @@
<ClCompile Include="curl\lib\imap.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\inet_ntop.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\krb5.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -339,9 +336,6 @@
<ClCompile Include="curl\lib\vssh\wolfssh.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vtls\bearssl.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vtls\gtls.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -360,9 +354,6 @@
<ClCompile Include="curl\lib\vtls\schannel_verify.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vtls\sectransp.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vtls\vtls.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -426,9 +417,6 @@
<ClCompile Include="curl\lib\cf-socket.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vquic\curl_msh3.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\vquic\curl_ngtcp2.c">
<Filter>Source Files</Filter>
</ClCompile>
@@ -549,6 +537,15 @@
<ClCompile Include="curl\lib\curlx\winapi.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\curlx\inet_ntop.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\curlx\wait.c">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="curl\lib\cf-ip-happy.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="curl\include\curl\curl.h">
@@ -758,9 +755,6 @@
<ClInclude Include="curl\lib\imap.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\inet_ntop.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\llist.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -899,9 +893,6 @@
<ClInclude Include="curl\lib\vssh\ssh.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vtls\bearssl.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vtls\gtls.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -917,9 +908,6 @@
<ClInclude Include="curl\lib\vtls\schannel.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vtls\sectransp.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vtls\vtls.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -989,9 +977,6 @@
<ClInclude Include="curl\lib\cf-socket.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vquic\curl_msh3.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\vquic\curl_ngtcp2.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -1112,6 +1097,21 @@
<ClInclude Include="curl\lib\curlx\winapi.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\curlx\binmode.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\curlx\inet_ntop.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\curlx\wait.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\cf-ip-happy.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="curl\lib\curl_mem_undef.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="curl\lib\libcurl.rc">
+21 -9
View File
@@ -1,11 +1,23 @@
#glslang
set(ENABLE_PCH OFF CACHE BOOL "Enables Precompiled header" FORCE)
set(BUILD_EXTERNAL OFF CACHE BOOL "Build external dependencies in /External" FORCE)
set(SKIP_GLSLANG_INSTALL ON CACHE BOOL "Skip installation" FORCE)
set(ENABLE_SPVREMAPPER OFF CACHE BOOL "Enables building of SPVRemapper" FORCE)
set(ENABLE_GLSLANG_BINARIES OFF CACHE BOOL "Builds glslangValidator and spirv-remap" FORCE)
set(ENABLE_HLSL OFF CACHE BOOL "Enables HLSL input support" FORCE)
set(ENABLE_OPT OFF CACHE BOOL "Enables spirv-opt capability if present" FORCE)
set(ENABLE_CTEST OFF CACHE BOOL "Enables testing" FORCE)
add_subdirectory(glslang)
if(USE_SYSTEM_GLSLANG)
message(STATUS "RPCS3: using shared glslang")
find_package(glslang REQUIRED GLOBAL)
add_library(3rdparty_glslang INTERFACE)
target_link_libraries(3rdparty_glslang INTERFACE glslang::SPIRV)
get_target_property(SPIRV_INCLUDE_DIRS glslang::SPIRV INTERFACE_INCLUDE_DIRECTORIES)
list(TRANSFORM SPIRV_INCLUDE_DIRS APPEND "/glslang")
target_include_directories(3rdparty_glslang INTERFACE ${SPIRV_INCLUDE_DIRS})
else()
set(ENABLE_PCH OFF CACHE BOOL "Enables Precompiled header" FORCE)
set(BUILD_EXTERNAL OFF CACHE BOOL "Build external dependencies in /External" FORCE)
set(SKIP_GLSLANG_INSTALL ON CACHE BOOL "Skip installation" FORCE)
set(ENABLE_SPVREMAPPER OFF CACHE BOOL "Enables building of SPVRemapper" FORCE)
set(ENABLE_GLSLANG_BINARIES OFF CACHE BOOL "Builds glslangValidator and spirv-remap" FORCE)
set(ENABLE_HLSL OFF CACHE BOOL "Enables HLSL input support" FORCE)
set(ENABLE_OPT OFF CACHE BOOL "Enables spirv-opt capability if present" FORCE)
set(ENABLE_CTEST OFF CACHE BOOL "Enables testing" FORCE)
add_subdirectory(glslang)
add_library(3rdparty_glslang INTERFACE)
target_link_libraries(3rdparty_glslang INTERFACE SPIRV)
endif()
+27 -19
View File
@@ -1,22 +1,30 @@
# hidapi
set(BUILD_SHARED_LIBS FALSE CACHE BOOL "Don't build shared libs")
set(HIDAPI_INSTALL_TARGETS FALSE CACHE BOOL "Don't install anything")
if(CMAKE_SYSTEM MATCHES "Linux")
set(HIDAPI_WITH_LIBUSB FALSE CACHE BOOL "Don't build with libusb for linux")
endif()
add_library(3rdparty_hidapi INTERFACE)
add_subdirectory(hidapi EXCLUDE_FROM_ALL)
if(APPLE)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi_darwin "-framework CoreFoundation" "-framework IOKit")
elseif(CMAKE_SYSTEM MATCHES "Linux")
target_link_libraries(3rdparty_hidapi INTERFACE hidapi-hidraw udev)
elseif(WIN32)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi::hidapi hidapi::include Shlwapi.lib)
elseif(ANDROID)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi::libusb)
if(USE_SYSTEM_HIDAPI)
message(STATUS "RPCS3: using shared hidapi")
pkg_check_modules(hidapi-hidraw REQUIRED IMPORTED_TARGET hidapi-hidraw)
add_library(3rdparty_hidapi INTERFACE)
target_link_libraries(3rdparty_hidapi INTERFACE PkgConfig::hidapi-hidraw)
target_include_directories(3rdparty_hidapi INTERFACE PkgConfig::hidapi-hidraw)
else()
target_link_libraries(3rdparty_hidapi INTERFACE hidapi-libusb usb)
set(BUILD_SHARED_LIBS FALSE CACHE BOOL "Don't build shared libs")
set(HIDAPI_INSTALL_TARGETS FALSE CACHE BOOL "Don't install anything")
if(CMAKE_SYSTEM MATCHES "Linux")
set(HIDAPI_WITH_LIBUSB FALSE CACHE BOOL "Don't build with libusb for linux")
endif()
add_library(3rdparty_hidapi INTERFACE)
add_subdirectory(hidapi EXCLUDE_FROM_ALL)
if(APPLE)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi_darwin "-framework CoreFoundation" "-framework IOKit")
elseif(CMAKE_SYSTEM MATCHES "Linux")
target_link_libraries(3rdparty_hidapi INTERFACE hidapi-hidraw udev)
elseif(WIN32)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi::hidapi hidapi::include Shlwapi.lib)
elseif(ANDROID)
target_link_libraries(3rdparty_hidapi INTERFACE hidapi::libusb)
else()
target_link_libraries(3rdparty_hidapi INTERFACE hidapi-libusb usb)
endif()
endif()
+20 -7
View File
@@ -1,8 +1,21 @@
option (UPNPC_BUILD_STATIC "Build static library" TRUE)
option (UPNPC_BUILD_SHARED "Build shared library" FALSE)
option (UPNPC_BUILD_TESTS "Build test executables" FALSE)
option (UPNPC_BUILD_SAMPLE "Build sample executables" FALSE)
option (NO_GETADDRINFO "Define NO_GETADDRINFO" FALSE)
option (UPNPC_NO_INSTALL "Disable installation" TRUE)
if(USE_SYSTEM_MINIUPNPC)
message(STATUS "RPCS3: using shared MiniUPnPc")
pkg_check_modules(MiniUPnPc REQUIRED IMPORTED_TARGET miniupnpc>=2.3.3)
add_library(3rdparty_miniupnpc INTERFACE)
target_link_libraries(3rdparty_miniupnpc INTERFACE PkgConfig::MiniUPnPc)
target_include_directories(3rdparty_miniupnpc INTERFACE PkgConfig::MiniUPnPc)
list(TRANSFORM MiniUPnPc_INCLUDE_DIRS APPEND "/miniupnpc")
target_include_directories(3rdparty_miniupnpc INTERFACE ${MiniUPnPc_INCLUDE_DIRS})
else()
option (UPNPC_BUILD_STATIC "Build static library" TRUE)
option (UPNPC_BUILD_SHARED "Build shared library" FALSE)
option (UPNPC_BUILD_TESTS "Build test executables" FALSE)
option (UPNPC_BUILD_SAMPLE "Build sample executables" FALSE)
option (NO_GETADDRINFO "Define NO_GETADDRINFO" FALSE)
option (UPNPC_NO_INSTALL "Disable installation" TRUE)
add_subdirectory(miniupnp/miniupnpc EXCLUDE_FROM_ALL)
add_subdirectory(miniupnp/miniupnpc EXCLUDE_FROM_ALL)
add_library(3rdparty_miniupnpc INTERFACE)
target_link_libraries(3rdparty_miniupnpc INTERFACE libminiupnpc-static)
target_include_directories(3rdparty_miniupnpc INTERFACE libminiupnpc-static)
endif()
+12 -4
View File
@@ -1,4 +1,12 @@
option(RTMIDI_API_JACK "Compile with JACK support." OFF)
option(RTMIDI_BUILD_TESTING "Build test programs" OFF)
set(RTMIDI_TARGETNAME_UNINSTALL "uninstall-rpcs3-rtmidi")
add_subdirectory(rtmidi EXCLUDE_FROM_ALL)
if(USE_SYSTEM_RTMIDI)
message(STATUS "RPCS3: using shared RtMidi")
pkg_check_modules(RtMidi REQUIRED IMPORTED_TARGET rtmidi>=6.0.0)
add_library(rtmidi INTERFACE)
target_link_libraries(rtmidi INTERFACE PkgConfig::RtMidi)
target_include_directories(rtmidi INTERFACE PkgConfig::RtMidi)
else()
option(RTMIDI_API_JACK "Compile with JACK support." OFF)
option(RTMIDI_BUILD_TESTING "Build test programs" OFF)
set(RTMIDI_TARGETNAME_UNINSTALL "uninstall-rpcs3-rtmidi")
add_subdirectory(rtmidi EXCLUDE_FROM_ALL)
endif()
+15 -7
View File
@@ -1,8 +1,16 @@
option(ZSTD_BUILD_PROGRAMS "BUILD PROGRAMS" OFF)
option(ZSTD_BUILD_SHARED "BUILD SHARED LIBRARIES" OFF)
option(ZSTD_BUILD_STATIC "BUILD STATIC LIBRARIES" ON)
option(ZSTD_BUILD_TESTS "BUILD TESTS" OFF)
if(USE_SYSTEM_ZSTD)
message(STATUS "RPCS3: using shared zstd")
pkg_check_modules(zstd REQUIRED IMPORTED_TARGET libzstd)
add_library(3rdparty_zstd INTERFACE)
target_link_libraries(3rdparty_zstd INTERFACE PkgConfig::zstd)
target_include_directories(3rdparty_zstd INTERFACE PkgConfig::RtMidi)
else()
option(ZSTD_BUILD_PROGRAMS "BUILD PROGRAMS" OFF)
option(ZSTD_BUILD_SHARED "BUILD SHARED LIBRARIES" OFF)
option(ZSTD_BUILD_STATIC "BUILD STATIC LIBRARIES" ON)
option(ZSTD_BUILD_TESTS "BUILD TESTS" OFF)
add_subdirectory(zstd/build/cmake EXLUDE_FROM_ALL)
add_library(3rdparty_zstd INTERFACE)
target_link_libraries(3rdparty_zstd INTERFACE libzstd_static)
add_subdirectory(zstd/build/cmake EXLUDE_FROM_ALL)
add_library(3rdparty_zstd INTERFACE)
target_link_libraries(3rdparty_zstd INTERFACE libzstd_static)
endif()
+5 -5
View File
@@ -19,26 +19,26 @@ The following tools are required to build RPCS3 on Windows 10 or later:
with standalone **CMake** tool.
- [Python 3.6+](https://www.python.org/downloads/) (add to PATH)
- [Qt 6.9.1](https://www.qt.io/download-qt-installer) In case you can't download from the official installer, you can use [Another Qt installer](https://github.com/miurahr/aqtinstall) (In that case you will need to manually add the "qtmultimedia" module when installing Qt)
- [Qt 6.9.3](https://www.qt.io/download-qt-installer) In case you can't download from the official installer, you can use [Another Qt installer](https://github.com/miurahr/aqtinstall) (In that case you will need to manually add the "qtmultimedia" module when installing Qt)
- [Vulkan SDK 1.3.268.0](https://vulkan.lunarg.com/sdk/home) (see "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/windows/getting_started.html)) for now future SDKs don't work. You need precisely 1.3.268.0.
The `sln` solution available only on **Visual Studio** is the preferred building solution. It easily allows to build the **RPCS3** application in `Release` and `Debug` mode.
In order to build **RPCS3** with the `sln` solution (with **Visual Studio**), **Qt** libs need to be detected. To detect the libs:
- add and set the `QTDIR` environment variable, e.g. `<QtInstallFolder>\6.9.1\msvc2022_64\`
- add and set the `QTDIR` environment variable, e.g. `<QtInstallFolder>\6.9.3\msvc2022_64\`
- or use the [Visual Studio Qt Plugin](https://marketplace.visualstudio.com/items?itemName=TheQtCompany.QtVisualStudioTools2022)
**NOTE:** If you have issues with the **Visual Studio Qt Plugin**, you may want to uninstall it and install the [Legacy Qt Plugin](https://marketplace.visualstudio.com/items?itemName=TheQtCompany.LEGACYQtVisualStudioTools2022) instead.
In order to build **RPCS3** with the `CMake` solution (with both **Visual Studio** and standalone **CMake** tool):
- add and set the `Qt6_ROOT` environment variable to the **Qt** libs path, e.g. `<QtInstallFolder>\6.9.1\msvc2022_64\`
- add and set the `Qt6_ROOT` environment variable to the **Qt** libs path, e.g. `<QtInstallFolder>\6.9.3\msvc2022_64\`
### Linux
These are the essentials tools to build RPCS3 on Linux. Some of them can be installed through your favorite package manager:
- Clang 17+ or GCC 13+
- [CMake 3.28.0+](https://www.cmake.org/download/)
- [Qt 6.9.1](https://www.qt.io/download-qt-installer)
- [Qt 6.9.3](https://www.qt.io/download-qt-installer)
- [Vulkan SDK 1.3.268.0](https://vulkan.lunarg.com/sdk/home) (See "Install the SDK" [here](https://vulkan.lunarg.com/doc/sdk/latest/linux/getting_started.html)) for now future SDKs don't work. You need precisely 1.3.268.0.
- [SDL3](https://github.com/libsdl-org/SDL/releases) (for the FAudio backend)
@@ -121,7 +121,7 @@ Start **Visual Studio**, click on `Open a project or solution` and select the `r
##### Configuring the Qt Plugin (if used)
1) go to `Extensions->Qt VS Tools->Qt Versions`
2) add the path to your Qt installation with compiler e.g. `<QtInstallFolder>\6.9.1\msvc2022_64`, version will fill in automatically
2) add the path to your Qt installation with compiler e.g. `<QtInstallFolder>\6.9.3\msvc2022_64`, version will fill in automatically
3) go to `Extensions->Qt VS Tools->Options->Legacy Project Format`. (Only available in the **Legacy Qt Plugin**)
4) set `Build: Run pre-build setup` to `true`. (Only available in the **Legacy Qt Plugin**)
+17 -5
View File
@@ -22,6 +22,12 @@ elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
endif()
endif()
if(APPLE OR WIN32)
set(USE_SYSTEM_OPENAL_DEFAULT OFF)
else()
set(USE_SYSTEM_OPENAL_DEFAULT ON)
endif()
option(USE_NATIVE_INSTRUCTIONS "USE_NATIVE_INSTRUCTIONS makes rpcs3 compile with -march=native, which is useful for local builds, but not good for packages." ON)
option(WITH_LLVM "Enable usage of LLVM library" ON)
option(BUILD_LLVM "Build LLVM from git submodule" OFF)
@@ -37,19 +43,26 @@ option(USE_SYSTEM_CURL "Prefer system Curl instead of the prebuild one" ON)
option(USE_SYSTEM_FAUDIO "Prefer system FAudio instead of the builtin one" OFF)
option(USE_SYSTEM_FFMPEG "Prefer system ffmpeg instead of the prebuild one" OFF)
option(USE_SYSTEM_FLATBUFFERS "Prefer system flatbuffers instead of the builtin one" OFF)
option(USE_SYSTEM_GLSLANG "Prefer system glslang instead of the builtin one" OFF)
option(USE_SYSTEM_HIDAPI "Prefer system hidapi instead of the builtin one" OFF)
option(USE_SYSTEM_LIBPNG "Prefer system libpng instead of the builtin one" OFF)
option(USE_SYSTEM_LIBUSB "Prefer system libusb instead of the builtin one" OFF)
option(USE_SYSTEM_MINIUPNPC "Prefer system MiniUPnPc instead of the builtin one" OFF)
option(USE_SYSTEM_MVK "Prefer system MoltenVK instead of the builtin one" OFF)
option(USE_SYSTEM_OPENAL "Prefer system OpenAL instead of the prebuild one" ON)
option(USE_SYSTEM_OPENAL "Prefer system OpenAL instead of the prebuild one" ${USE_SYSTEM_OPENAL_DEFAULT})
option(USE_SYSTEM_OPENCV "Prefer system OpenCV instead of the builtin one" ON)
option(USE_SYSTEM_PUGIXML "Prefer system pugixml instead of the builtin one" OFF)
option(USE_SYSTEM_RTMIDI "Prefer system RtMidi instead of the builtin one" OFF)
option(USE_SYSTEM_SDL "Prefer system SDL instead of the builtin one" ON)
option(USE_SYSTEM_WOLFSSL "Prefer system MoltenVK instead of the builtin one" OFF)
option(USE_SYSTEM_VULKAN_MEMORY_ALLOCATOR "Prefer system Vulkan Memory Allocator instead of the builtin one" OFF)
option(USE_SYSTEM_WOLFSSL "Prefer system wolfSSL instead of the builtin one" OFF)
option(USE_SYSTEM_ZLIB "Prefer system ZLIB instead of the builtin one" ON)
option(USE_SYSTEM_ZSTD "Prefer system zstd instead of the builtin one" OFF)
option(HAS_MEMORY_BREAKPOINTS "Add support for memory breakpoints to the interpreter" OFF)
option(USE_LTO "Use LTO for building" ON)
option(BUILD_RPCS3_TESTS "Build RPCS3 unit tests." OFF)
option(RUN_RPCS3_TESTS "Run RPCS3 unit tests. Requires BUILD_RPCS3_TESTS" OFF)
option(USE_GAMEMODE "Choose whether to enable GameMode features or not." ON)
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/buildfiles/cmake")
@@ -154,11 +167,10 @@ endif()
## Look for Gamemode if its installed on Linux
if(LINUX)
find_program(GAMEMODE_FOUND gamemoded) ## Only works if gamemode is installed on system (might include lib32 case)
if(GAMEMODE_FOUND)
## User chooses whether to Enable GameMode features or not
if(USE_GAMEMODE)
add_compile_definitions(GAMEMODE_AVAILABLE)
endif()
message(GAMEMODE_AVAILABLE="${GAMEMODE_AVAILABLE}")
endif()
# TODO: do real installation, including copying directory structure
+5 -12
View File
@@ -553,19 +553,12 @@ void cfg::node::from_default()
}
}
void cfg::_bool::from_default()
void cfg::node::restore_defaults()
{
m_value = def;
}
void cfg::string::from_default()
{
m_value = def;
}
void cfg::set_entry::from_default()
{
m_set = {};
for (auto& node : m_nodes)
{
node->restore_defaults();
}
}
std::string cfg::map_entry::get_value(std::string_view key)
+80 -7
View File
@@ -90,6 +90,9 @@ namespace cfg
// Reset defaults
virtual void from_default() = 0;
// Restore default members
virtual void restore_defaults() = 0;
// Convert to string (optional)
virtual std::string to_string() const
{
@@ -151,11 +154,15 @@ namespace cfg
// Set default values
void from_default() override;
// Restore default members
void restore_defaults() override;
};
class _bool final : public _base
{
atomic_t<bool> m_value;
bool original_def;
public:
bool def;
@@ -163,6 +170,7 @@ namespace cfg
_bool(node* owner, std::string name, bool def = false, bool dynamic = false)
: _base(type::_bool, owner, std::move(name), dynamic)
, m_value(def)
, original_def(def)
, def(def)
{
}
@@ -177,7 +185,15 @@ namespace cfg
return m_value;
}
void from_default() override;
void from_default() override
{
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
@@ -220,14 +236,16 @@ namespace cfg
class _enum : public _base
{
atomic_t<T> m_value;
T original_def;
public:
const T def;
T def;
_enum(node* owner, const std::string& name, T value = {}, bool dynamic = false)
_enum(node* owner, const std::string& name, T def = {}, bool dynamic = false)
: _base(type::_enum, owner, name, dynamic)
, m_value(value)
, def(value)
, m_value(def)
, original_def(def)
, def(def)
{
}
@@ -256,6 +274,11 @@ namespace cfg
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
std::string result;
@@ -300,6 +323,7 @@ namespace cfg
using int_type = std::conditional_t<Min >= s32{smin} && Max <= s32{smax}, s32, s64>;
atomic_t<int_type> m_value;
int_type original_def;
public:
int_type def;
@@ -311,6 +335,7 @@ namespace cfg
_int(node* owner, const std::string& name, int_type def = std::min<int_type>(Max, std::max<int_type>(Min, 0)), bool dynamic = false)
: _base(type::_int, owner, name, dynamic)
, m_value(def)
, original_def(def)
, def(def)
{
}
@@ -330,6 +355,11 @@ namespace cfg
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
return std::to_string(m_value);
@@ -372,6 +402,7 @@ namespace cfg
using float_type = f64;
atomic_t<float_type> m_value;
float_type original_def;
public:
float_type def;
@@ -383,6 +414,7 @@ namespace cfg
_float(node* owner, const std::string& name, float_type def = std::min<float_type>(Max, std::max<float_type>(Min, 0)), bool dynamic = false)
: _base(type::_int, owner, name, dynamic)
, m_value(def)
, original_def(def)
, def(def)
{
}
@@ -402,6 +434,11 @@ namespace cfg
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
std::string result;
@@ -464,6 +501,7 @@ namespace cfg
using int_type = std::conditional_t<Max <= u32{umax}, u32, u64>;
atomic_t<int_type> m_value;
int_type original_def;
public:
int_type def;
@@ -475,6 +513,7 @@ namespace cfg
uint(node* owner, const std::string& name, int_type def = std::max<int_type>(Min, 0), bool dynamic = false)
: _base(type::uint, owner, name, dynamic)
, m_value(def)
, original_def(def)
, def(def)
{
}
@@ -494,6 +533,11 @@ namespace cfg
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
return std::to_string(m_value);
@@ -538,6 +582,7 @@ namespace cfg
class string : public _base
{
atomic_ptr<std::string> m_value;
std::string original_def;
public:
std::string def;
@@ -545,6 +590,7 @@ namespace cfg
string(node* owner, std::string name, std::string def = {}, bool dynamic = false)
: _base(type::string, owner, std::move(name), dynamic)
, m_value(def)
, original_def(def)
, def(std::move(def))
{
}
@@ -554,7 +600,15 @@ namespace cfg
return *m_value.load().get();
}
void from_default() override;
void from_default() override
{
m_value = def;
}
void restore_defaults() override
{
def = original_def;
}
std::string to_string() const override
{
@@ -595,7 +649,14 @@ namespace cfg
m_set = std::move(set);
}
void from_default() override;
void from_default() override
{
m_set = {};
}
void restore_defaults() override
{
}
std::vector<std::string> to_list() const override
{
@@ -636,6 +697,10 @@ namespace cfg
void erase(std::string_view key);
void from_default() override;
void restore_defaults() override
{
}
};
class node_map_entry final : public map_entry
@@ -665,6 +730,10 @@ namespace cfg
void set_map(map_of_type<logs::level>&& map);
void from_default() override;
void restore_defaults() override
{
}
};
struct device_info
@@ -702,5 +771,9 @@ namespace cfg
void set_map(map_of_type<device_info>&& map);
void from_default() override;
void restore_defaults() override
{
}
};
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+46 -43
View File
@@ -4,24 +4,28 @@ by Ani @ https://github.com/AniLeo
r1 (2018.02.27)
r2 (2021.08.28)
r3 (2022.08.20)
r4 (2025.09.14)
*/
/*
Color Scheme
- Pod Programs
8c806a
bd9d86
c1b398
eadfb1
ebe4d2
#8c806a
#bd9d86
#c1b398
#eadfb1
#ebe4d2
- Light
b3ac98
aea993
#b3ac98
#aea993
- Dark
4d4940
#4d4940
- Disabled
#828790
*/
@@ -55,31 +59,6 @@ QTextEdit, QPlainTextEdit {
font-size: 8.50pt;
}
/*
QListWidget, QTreeWidget: Style checkboxes and rows
RPCS3: LLE/HLE Selector, Debugger
*/
QListWidget::item {
margin-top: 0.05em;
margin-bottom: 0.05em;
}
QListWidget::indicator, QTreeWidget::indicator {
border: 0.05em solid #4d4940;
}
QListWidget::indicator::unchecked, QTreeWidget::indicator::unchecked {
background-color: #b3ac98;
}
QListWidget::indicator::checked, QTreeWidget::indicator::checked {
background-color: #4d4940;
}
QListWidget::indicator::disabled, QTreeWidget::indicator::disabled {
background-color: #828790;
}
QListWidget::item::selected, QTreeWidget::item::selected {
background-color: #4d4940;
}
/*
QTableView: Style selected row
@@ -141,31 +120,38 @@ QTabBar::tab::selected {
color: #aea993;
}
/* Checkboxes */
QCheckBox::indicator {
/* Checkboxes
Radio Buttons
QListWidget, QTreeWidget: Style indicators (checkboxes) and selected rows
RPCS3: LLE/HLE Selector, Debugger, Game Patches
*/
QCheckBox::indicator, QListWidget::indicator, QTreeWidget::indicator {
border-radius: 0.1em;
}
/* Radio Buttons */
QRadioButton::indicator {
border-radius: 0.4em;
}
/* Checkboxes and Radio Buttons */
QCheckBox::indicator, QRadioButton::indicator {
QCheckBox::indicator, QRadioButton::indicator, QListWidget::indicator, QTreeWidget::indicator {
border: 0.05em solid #4d4940;
margin-top: 0.05em;
margin-bottom: 0.05em;
width: 0.8em;
height: 0.8em;
}
QCheckBox::indicator:checked, QRadioButton::indicator:checked {
QCheckBox::indicator:checked, QRadioButton::indicator:checked, QListWidget::indicator::checked, QTreeWidget::indicator::checked{
background-color: #4d4940; /* Dark */
}
QCheckBox::indicator:unchecked, QRadioButton::indicator:unchecked {
QCheckBox::indicator:unchecked, QRadioButton::indicator:unchecked, QListWidget::indicator::unchecked, QTreeWidget::indicator::unchecked {
background-color: #b3ac98; /* Light */
}
QCheckBox::indicator::disabled, QRadioButton::indicator::disabled {
QCheckBox::indicator::disabled, QRadioButton::indicator::disabled, QListWidget::indicator::disabled, QTreeWidget::indicator::disabled {
background-color: #828790; /* Gray */
}
QListWidget::item::selected, QTreeWidget::item::selected {
background-color: #4d4940;
}
/* Combo Boxes, Datetime dropdown */
QComboBox, QDateTimeEdit, QLineEdit {
@@ -215,6 +201,7 @@ QPushButton::disabled {
/* QSpinBox (Settings -> Emulator -> width/height) */
/* QDoubleSpinBox (Pads -> Mouse Acceleration -> x/y) */
QSpinBox, QDoubleSpinBox {
height: 0.1em;
background-color: #b3ac98;
}
QSpinBox::disabled, QDoubleSpinBox::disabled {
@@ -247,6 +234,7 @@ QDockWidget {
QDockWidget::title {
background: #4d4940;
padding-top: 0.2em;
padding-left: 0.2em;
}
QDockWidget::close-button, QDockWidget::float-button {
background-color: #b3ac98;
@@ -262,7 +250,7 @@ QTabWidget::tab-bar {
}
/* Top menu bar */
QMenuBar {
QMenuBar#menuBar {
height:1.50em;
text-transform: uppercase;
}
@@ -314,12 +302,27 @@ QCalendarWidget QWidget{
color: #4d4940;
}
/* Scrollbars */
QScrollBar::handle, QTableView QScrollBar::handle {
background: #4d4940;
}
QScrollBar::handle:disabled {
background: #828790;
}
QScrollBar::add-page, QScrollBar::sub-page {
background: #8c806a;
}
QScrollBar::up-arrow, QScrollBar::down-arrow, QScrollBar::up-button:vertical, QScrollBar::down-button, QScrollBar::sub-line, QScrollBar::add-line {
background: transparent;
color: transparent;
}
/*** RPCS3 Specifics ***/
/* Main Window, Dialogs and some Dialogs that are actually widgets */
QWidget#trophy_manager, QWidget#cg_disasm, QWidget#log_viewer, QMainWindow#main_window {
QWidget#trophy_manager, QWidget#cg_disasm, QWidget#log_viewer, QWidget#savestate_manager, QMainWindow#main_window {
border-image: url("GuiConfigs/YoRHa-background.jpg");
}
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.793 4.04298C11.1835 3.65246 11.8165 3.65246 12.207 4.04298C12.5975 4.43351 12.5975 5.06654 12.207 5.45704L7.70708 9.95704C7.31658 10.3475 6.68355 10.3475 6.29302 9.95704L1.79302 5.45704C1.40249 5.06652 1.40249 4.43351 1.79302 4.04298C2.18354 3.65246 2.81656 3.65246 3.20708 4.04298L7.00005 7.83595L10.793 4.04298Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 448 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.793 4.04298C11.1835 3.65246 11.8165 3.65246 12.207 4.04298C12.5975 4.43351 12.5975 5.06654 12.207 5.45704L7.70708 9.95704C7.31658 10.3475 6.68355 10.3475 6.29302 9.95704L1.79302 5.45704C1.40249 5.06652 1.40249 4.43351 1.79302 4.04298C2.18354 3.65246 2.81656 3.65246 3.20708 4.04298L7.00005 7.83595L10.793 4.04298Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 446 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.95698 10.793C10.3475 11.1835 10.3475 11.8165 9.95698 12.207C9.56645 12.5975 8.93343 12.5975 8.54293 12.207L4.04293 7.70706C3.65243 7.31656 3.65248 6.68353 4.04293 6.293L8.54293 1.793C8.93345 1.40248 9.56646 1.40248 9.95698 1.793C10.3475 2.18352 10.3475 2.81654 9.95698 3.20706L6.16402 7.00003L9.95698 10.793Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 442 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.95698 10.793C10.3475 11.1835 10.3475 11.8165 9.95698 12.207C9.56645 12.5975 8.93343 12.5975 8.54293 12.207L4.04293 7.70706C3.65243 7.31656 3.65248 6.68353 4.04293 6.293L8.54293 1.793C8.93345 1.40248 9.56646 1.40248 9.95698 1.793C10.3475 2.18352 10.3475 2.81654 9.95698 3.20706L6.16402 7.00003L9.95698 10.793Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 440 B

+10
View File
@@ -0,0 +1,10 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_47_46)">
<path d="M8.70711 0.792985C8.31659 0.402461 7.68357 0.402461 7.29305 0.792985C6.9026 1.18351 6.90255 1.81655 7.29305 2.20705L11.586 6.50002H1.00008C0.447775 6.50006 7.53403e-05 6.94776 7.53403e-05 7.50002C7.53403e-05 8.05224 0.447875 8.49998 1.00008 8.50002H11.586L7.29305 12.7929C6.9026 13.1835 6.90255 13.8165 7.29305 14.207C7.68355 14.5975 8.31658 14.5975 8.70711 14.207L14.7071 8.20705C15.0976 7.81652 15.0976 7.18351 14.7071 6.79299L8.70711 0.792985Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_47_46">
<rect width="15" height="15" fill="white" transform="matrix(-1 0 0 1 15 0)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 747 B

+10
View File
@@ -0,0 +1,10 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_47_43)">
<path d="M6.29289 0.792985C6.68341 0.402461 7.31643 0.402461 7.70695 0.792985C8.0974 1.18351 8.09745 1.81655 7.70695 2.20705L3.41398 6.50002H13.9999C14.5522 6.50006 14.9999 6.94776 14.9999 7.50002C14.9999 8.05224 14.5521 8.49998 13.9999 8.50002H3.41398L7.70695 12.7929C8.0974 13.1835 8.09745 13.8165 7.70695 14.207C7.31645 14.5975 6.68342 14.5975 6.29289 14.207L0.292893 8.20705C-0.0976311 7.81652 -0.0976311 7.18351 0.292893 6.79299L6.29289 0.792985Z" fill="white"/>
</g>
<defs>
<clipPath id="clip0_47_43">
<rect width="15" height="15" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 709 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.04302 10.793C3.65249 11.1835 3.65249 11.8165 4.04302 12.207C4.43355 12.5975 5.06657 12.5975 5.45707 12.207L9.95707 7.70706C10.3476 7.31656 10.3475 6.68353 9.95707 6.293L5.45707 1.793C5.06655 1.40248 4.43354 1.40248 4.04302 1.793C3.65249 2.18352 3.65249 2.81654 4.04302 3.20706L7.83598 7.00003L4.04302 10.793Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 442 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.04302 10.793C3.65249 11.1835 3.65249 11.8165 4.04302 12.207C4.43355 12.5975 5.06657 12.5975 5.45707 12.207L9.95707 7.70706C10.3476 7.31656 10.3475 6.68353 9.95707 6.293L5.45707 1.793C5.06655 1.40248 4.43354 1.40248 4.04302 1.793C3.65249 2.18352 3.65249 2.81654 4.04302 3.20706L7.83598 7.00003L4.04302 10.793Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 440 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.793 9.95702C11.1835 10.3475 11.8165 10.3475 12.207 9.95702C12.5975 9.56649 12.5975 8.93346 12.207 8.54296L7.70708 4.04296C7.31658 3.65246 6.68355 3.65251 6.29302 4.04296L1.79302 8.54296C1.40249 8.93348 1.40249 9.56649 1.79302 9.95702C2.18354 10.3475 2.81656 10.3475 3.20708 9.95702L7.00005 6.16405L10.793 9.95702Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 448 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.793 9.95702C11.1835 10.3475 11.8165 10.3475 12.207 9.95702C12.5975 9.56649 12.5975 8.93346 12.207 8.54296L7.70708 4.04296C7.31658 3.65246 6.68355 3.65251 6.29302 4.04296L1.79302 8.54296C1.40249 8.93348 1.40249 9.56649 1.79302 9.95702C2.18354 10.3475 2.81656 10.3475 3.20708 9.95702L7.00005 6.16405L10.793 9.95702Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 446 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.7929 2.29289C12.1834 1.90237 12.8164 1.90237 13.207 2.29289C13.5974 2.68342 13.5975 3.31645 13.207 3.70695L5.70695 11.207C5.31645 11.5975 4.68342 11.5974 4.29289 11.207L0.792893 7.70695C0.402369 7.31643 0.402369 6.68341 0.792893 6.29289C1.18342 5.90237 1.81643 5.90237 2.20695 6.29289L4.99992 9.08586L11.7929 2.29289Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 452 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.7929 2.29289C12.1834 1.90237 12.8164 1.90237 13.207 2.29289C13.5974 2.68342 13.5975 3.31645 13.207 3.70695L5.70695 11.207C5.31645 11.5975 4.68342 11.5974 4.29289 11.207L0.792893 7.70695C0.402369 7.31643 0.402369 6.68341 0.792893 6.29289C1.18342 5.90237 1.81643 5.90237 2.20695 6.29289L4.99992 9.08586L11.7929 2.29289Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 450 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#343434"/>
<g clip-path="url(#clip0_43_2)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#7E7E7E"/>
</g>
<defs>
<clipPath id="clip0_43_2">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 666 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#48B2E9"/>
<g clip-path="url(#clip0_4_14)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="black"/>
</g>
<defs>
<clipPath id="clip0_4_14">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 664 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#45A4D5"/>
<g clip-path="url(#clip0_4_80)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#22526A"/>
</g>
<defs>
<clipPath id="clip0_4_80">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 666 B

+11
View File
@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#4CC2FF"/>
<g clip-path="url(#clip0_4_17)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="black"/>
</g>
<defs>
<clipPath id="clip0_4_17">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 664 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#2B2B2B"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#4D4D4D" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#343434"/>
<g clip-path="url(#clip0_43_5)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#7E7E7E"/>
</g>
<defs>
<clipPath id="clip0_43_5">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 487 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#48B2E9"/>
<g clip-path="url(#clip0_4_32)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="black"/>
</g>
<defs>
<clipPath id="clip0_4_32">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 485 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#45A4D5"/>
<g clip-path="url(#clip0_4_83)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#22526A"/>
</g>
<defs>
<clipPath id="clip0_4_83">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 487 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#4CC2FF"/>
<g clip-path="url(#clip0_4_35)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="black"/>
</g>
<defs>
<clipPath id="clip0_4_35">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 485 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#343434"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#9E9E9E" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#3A3A3A"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#525252" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#272727"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#9E9E9E" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

+2
View File
@@ -0,0 +1,2 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
</svg>

After

Width:  |  Height:  |  Size: 103 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.40772 9.05172C5.19743 9.26295 5.19743 9.60535 5.40772 9.81658C5.61801 10.0278 5.95888 10.0278 6.16915 9.81658L8.5923 7.38247C8.80259 7.17124 8.80254 6.82882 8.5923 6.61758L6.16915 4.18344C5.95887 3.9722 5.618 3.9722 5.40772 4.18344C5.19743 4.39468 5.19743 4.73709 5.40772 4.94833L7.45014 7.00003L5.40772 9.05172Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 446 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.40772 9.05172C5.19743 9.26295 5.19743 9.60535 5.40772 9.81658C5.61801 10.0278 5.95888 10.0278 6.16915 9.81658L8.5923 7.38247C8.80259 7.17124 8.80254 6.82882 8.5923 6.61757L6.16915 4.18343C5.95887 3.97219 5.618 3.97219 5.40772 4.18343C5.19743 4.39467 5.19743 4.73709 5.40772 4.94833L7.45014 7.00002L5.40772 9.05172Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 446 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.94826 5.40772C4.73703 5.19743 4.39463 5.19743 4.1834 5.40772C3.97217 5.61801 3.97217 5.95888 4.1834 6.16916L6.61751 8.59231C6.82874 8.8026 7.17116 8.80254 7.3824 8.59231L9.81655 6.16916C10.0278 5.95887 10.0278 5.61801 9.81655 5.40772C9.6053 5.19743 9.26289 5.19743 9.05165 5.40772L6.99996 7.45015L4.94826 5.40772Z" fill="#7E7E7E"/>
</svg>

After

Width:  |  Height:  |  Size: 447 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.94826 5.40772C4.73703 5.19743 4.39463 5.19743 4.1834 5.40772C3.97217 5.61801 3.97217 5.95888 4.1834 6.16915L6.61751 8.5923C6.82874 8.80259 7.17116 8.80254 7.3824 8.5923L9.81655 6.16915C10.0278 5.95887 10.0278 5.618 9.81655 5.40772C9.6053 5.19743 9.26289 5.19743 9.05165 5.40772L6.99996 7.45014L4.94826 5.40772Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 442 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="3" y="3" width="19" height="19" rx="9.5" fill="#7E7E7E"/>
<rect x="3" y="3" width="19" height="19" rx="9.5" stroke="#343434" stroke-width="6"/>
</svg>

After

Width:  |  Height:  |  Size: 256 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="2" y="2" width="21" height="21" rx="10.5" fill="black"/>
<rect x="2" y="2" width="21" height="21" rx="10.5" stroke="#48B2E9" stroke-width="4"/>
</svg>

After

Width:  |  Height:  |  Size: 256 B

@@ -0,0 +1,5 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="3.5" y="3.5" width="18" height="18" rx="9" fill="black"/>
<rect x="3.5" y="3.5" width="18" height="18" rx="9" stroke="#45A4D5" stroke-width="7"/>
<circle cx="12.5" cy="12.5" r="9" fill="black" stroke="#45A4D5" stroke-width="7"/>
</svg>

After

Width:  |  Height:  |  Size: 341 B

+4
View File
@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="3" y="3" width="19" height="19" rx="9.5" fill="black"/>
<rect x="3" y="3" width="19" height="19" rx="9.5" stroke="#4CC2FF" stroke-width="6"/>
</svg>

After

Width:  |  Height:  |  Size: 254 B

+4
View File
@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="11.5" fill="#2B2B2B"/>
<rect x="1" y="1" width="23" height="23" rx="11.5" stroke="#4D4D4D" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 258 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="11.5" fill="#343434"/>
<rect x="1" y="1" width="23" height="23" rx="11.5" stroke="#9E9E9E" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 258 B

@@ -0,0 +1,5 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="11.5" fill="#3A3A3A"/>
<rect x="1" y="1" width="23" height="23" rx="11.5" stroke="#484848" stroke-width="2"/>
<circle cx="12.5" cy="12.5" r="6.5" fill="black"/>
</svg>

After

Width:  |  Height:  |  Size: 309 B

+4
View File
@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="11.5" fill="#272727"/>
<rect x="1" y="1" width="23" height="23" rx="11.5" stroke="#9E9E9E" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 258 B

@@ -0,0 +1,3 @@
<svg width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="14.5" cy="14" r="11" fill="#626262" stroke="#454545" stroke-width="6"/>
</svg>

After

Width:  |  Height:  |  Size: 187 B

@@ -0,0 +1,3 @@
<svg width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="14.5" cy="14" r="11" fill="#4BB5EC" stroke="#454545" stroke-width="6"/>
</svg>

After

Width:  |  Height:  |  Size: 187 B

@@ -0,0 +1,3 @@
<svg width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="14.5" cy="14" r="9.5" fill="#4AA9DA" stroke="#454545" stroke-width="9"/>
</svg>

After

Width:  |  Height:  |  Size: 188 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="29" height="28" viewBox="0 0 29 28" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="14.5" cy="14" r="10" fill="#4CC2FF" stroke="#454545" stroke-width="8"/>
</svg>

After

Width:  |  Height:  |  Size: 187 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="13" height="13" viewBox="0 0 13 13" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.0815 11.9176L6.50035 6.49999M0.919184 1.08236L6.50035 6.49999M6.50035 6.49999L1.08273 12.0811M6.50035 6.49999L11.918 0.918823" stroke="white" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 283 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="13" height="13" viewBox="0 0 13 13" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M3.5 1H9C10.6569 1 12 2.34315 12 4V9.5M10 11V4C10 3.44772 9.55228 3 9 3H2C1.44772 3 1 3.44772 1 4V11C1 11.5523 1.44772 12 2 12H9C9.55228 12 10 11.5523 10 11Z" stroke="white" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 311 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.7929 4.04289C11.1834 3.65237 11.8164 3.65237 12.2069 4.04289C12.5974 4.43342 12.5974 5.06645 12.2069 5.45695L7.70696 9.95695C7.31646 10.3474 6.68343 10.3474 6.2929 9.95695L1.7929 5.45695C1.40237 5.06643 1.40237 4.43342 1.7929 4.04289C2.18342 3.65237 2.81644 3.65237 3.20696 4.04289L6.99993 7.83586L10.7929 4.04289Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 449 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.7929 4.04289C11.1834 3.65237 11.8164 3.65237 12.2069 4.04289C12.5974 4.43342 12.5974 5.06645 12.2069 5.45695L7.70696 9.95695C7.31646 10.3474 6.68343 10.3474 6.2929 9.95695L1.7929 5.45695C1.40237 5.06643 1.40237 4.43342 1.7929 4.04289C2.18342 3.65237 2.81644 3.65237 3.20696 4.04289L6.99993 7.83586L10.7929 4.04289Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 449 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.95691 10.7929C10.3474 11.1834 10.3474 11.8164 9.95691 12.2069C9.56638 12.5974 8.93336 12.5974 8.54286 12.2069L4.04286 7.70695C3.65236 7.31645 3.65241 6.68342 4.04286 6.29289L8.54286 1.79289C8.93338 1.40237 9.56639 1.40237 9.95691 1.79289C10.3474 2.18341 10.3474 2.81643 9.95691 3.20695L6.16395 6.99992L9.95691 10.7929Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 452 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M9.95691 10.7929C10.3474 11.1834 10.3474 11.8164 9.95691 12.2069C9.56638 12.5974 8.93336 12.5974 8.54286 12.2069L4.04286 7.70695C3.65236 7.31645 3.65241 6.68342 4.04286 6.29289L8.54286 1.79289C8.93338 1.40237 9.56639 1.40237 9.95691 1.79289C10.3474 2.18341 10.3474 2.81643 9.95691 3.20695L6.16395 6.99992L9.95691 10.7929Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 452 B

+15
View File
@@ -0,0 +1,15 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_76_460)">
<mask id="mask0_76_460" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="15" height="15">
<path d="M0 0H15V15H0V0Z" fill="white"/>
</mask>
<g mask="url(#mask0_76_460)">
<path d="M8.70704 0.792893C8.31652 0.402369 7.68349 0.402369 7.29297 0.792893C6.90252 1.18342 6.90247 1.81646 7.29297 2.20696L11.5859 6.49993H1C0.4477 6.49997 0 6.94767 0 7.49993C0 8.05215 0.4478 8.49989 1 8.49993H11.5859L7.29297 12.7928C6.90252 13.1834 6.90247 13.8164 7.29297 14.2069C7.68347 14.5974 8.31651 14.5974 8.70704 14.2069L14.707 8.20696C15.0975 7.81643 15.0975 7.18342 14.707 6.7929L8.70704 0.792893Z" fill="#1B1B1B"/>
</g>
</g>
<defs>
<clipPath id="clip0_76_460">
<rect width="15" height="15" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 873 B

+15
View File
@@ -0,0 +1,15 @@
<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_76_466)">
<mask id="mask0_76_466" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="15" height="15">
<path d="M15 0H0V15H15V0Z" fill="white"/>
</mask>
<g mask="url(#mask0_76_466)">
<path d="M6.29289 0.792893C6.68341 0.402369 7.31643 0.402369 7.70695 0.792893C8.0974 1.18342 8.09745 1.81646 7.70695 2.20696L3.41398 6.49993H13.9999C14.5522 6.49997 14.9999 6.94767 14.9999 7.49993C14.9999 8.05215 14.5521 8.49989 13.9999 8.49993H3.41398L7.70695 12.7928C8.0974 13.1834 8.09745 13.8164 7.70695 14.2069C7.31645 14.5974 6.68342 14.5974 6.29289 14.2069L0.292893 8.20696C-0.097631 7.81643 -0.097631 7.18342 0.292893 6.7929L6.29289 0.792893Z" fill="#1B1B1B"/>
</g>
</g>
<defs>
<clipPath id="clip0_76_466">
<rect width="15" height="15" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 912 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.0429 10.7929C3.65237 11.1834 3.65237 11.8164 4.0429 12.2069C4.43343 12.5974 5.06645 12.5974 5.45695 12.2069L9.95695 7.70695C10.3475 7.31645 10.3474 6.68342 9.95695 6.29289L5.45695 1.79289C5.06643 1.40237 4.43342 1.40237 4.0429 1.79289C3.65237 2.18341 3.65237 2.81643 4.0429 3.20695L7.83586 6.99992L4.0429 10.7929Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 447 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.0429 10.7929C3.65237 11.1834 3.65237 11.8164 4.0429 12.2069C4.43343 12.5974 5.06645 12.5974 5.45695 12.2069L9.95695 7.70695C10.3475 7.31645 10.3474 6.68342 9.95695 6.29289L5.45695 1.79289C5.06643 1.40237 4.43342 1.40237 4.0429 1.79289C3.65237 2.18341 3.65237 2.81643 4.0429 3.20695L7.83586 6.99992L4.0429 10.7929Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 447 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.7929 9.95692C11.1834 10.3474 11.8164 10.3474 12.2069 9.95692C12.5974 9.56639 12.5974 8.93336 12.2069 8.54286L7.70696 4.04286C7.31646 3.65236 6.68343 3.65241 6.2929 4.04286L1.7929 8.54286C1.40237 8.93338 1.40237 9.56639 1.7929 9.95692C2.18342 10.3474 2.81644 10.3474 3.20696 9.95692L6.99993 6.16395L10.7929 9.95692Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 449 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M10.7929 9.95692C11.1834 10.3474 11.8164 10.3474 12.2069 9.95692C12.5974 9.56639 12.5974 8.93336 12.2069 8.54286L7.70696 4.04286C7.31646 3.65236 6.68343 3.65241 6.2929 4.04286L1.7929 8.54286C1.40237 8.93338 1.40237 9.56639 1.7929 9.95692C2.18342 10.3474 2.81644 10.3474 3.20696 9.95692L6.99993 6.16395L10.7929 9.95692Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 449 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.7929 2.29289C12.1834 1.90237 12.8164 1.90237 13.207 2.29289C13.5974 2.68342 13.5975 3.31645 13.207 3.70695L5.70695 11.207C5.31645 11.5975 4.68342 11.5974 4.29289 11.207L0.792893 7.70695C0.402369 7.31643 0.402369 6.68341 0.792893 6.29289C1.18342 5.90237 1.81643 5.90237 2.20695 6.29289L4.99992 9.08586L11.7929 2.29289Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 452 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11.7929 2.29289C12.1834 1.90237 12.8164 1.90237 13.207 2.29289C13.5974 2.68342 13.5975 3.31645 13.207 3.70695L5.70695 11.207C5.31645 11.5975 4.68342 11.5974 4.29289 11.207L0.792893 7.70695C0.402369 7.31643 0.402369 6.68341 0.792893 6.29289C1.18342 5.90237 1.81643 5.90237 2.20695 6.29289L4.99992 9.08586L11.7929 2.29289Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 452 B

@@ -0,0 +1,12 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#C5C5C5"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#B5B5B5" stroke-width="2"/>
<g clip-path="url(#clip0_70_229)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#FEFEFE"/>
</g>
<defs>
<clipPath id="clip0_70_229">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 766 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#1A76C6"/>
<g clip-path="url(#clip0_70_212)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#FCFDFE"/>
</g>
<defs>
<clipPath id="clip0_70_212">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 670 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#3284CB"/>
<g clip-path="url(#clip0_70_215)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#B9D5ED"/>
</g>
<defs>
<clipPath id="clip0_70_215">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 670 B

+11
View File
@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#0067C0"/>
<g clip-path="url(#clip0_70_209)">
<path d="M17.2929 7.79289C17.6834 7.40237 18.3164 7.40237 18.7069 7.79289C19.0974 8.18342 19.0974 8.81645 18.7069 9.20695L11.207 16.707C10.8165 17.0975 10.1834 17.0974 9.79289 16.707L6.29289 13.207C5.90237 12.8164 5.90237 12.1834 6.29289 11.7929C6.68342 11.4024 7.31643 11.4024 7.70695 11.7929L10.4999 14.5859L17.2929 7.79289Z" fill="#FAFCFE"/>
</g>
<defs>
<clipPath id="clip0_70_209">
<rect width="13" height="10" fill="white" transform="translate(6 7.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 670 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#FBFBFB"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#C5C5C5" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,12 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#C5C5C5"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#B5B5B5" stroke-width="2"/>
<g clip-path="url(#clip0_70_232)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#FEFEFE"/>
</g>
<defs>
<clipPath id="clip0_70_232">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 587 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#1A76C6"/>
<g clip-path="url(#clip0_70_221)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#FCFDFE"/>
</g>
<defs>
<clipPath id="clip0_70_221">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 491 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#3284CB"/>
<g clip-path="url(#clip0_70_224)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#B9D5ED"/>
</g>
<defs>
<clipPath id="clip0_70_224">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 491 B

@@ -0,0 +1,11 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="25" height="25" rx="6" fill="#0067C0"/>
<g clip-path="url(#clip0_70_218)">
<path d="M18 11.5C18.5523 11.5 19 11.9477 19 12.5C19 13.0523 18.5523 13.5 18 13.5H7C6.44771 13.5 6 13.0523 6 12.5C6 11.9477 6.44771 11.5 7 11.5H18Z" fill="#FAFCFE"/>
</g>
<defs>
<clipPath id="clip0_70_218">
<rect width="13" height="2" fill="white" transform="translate(6 11.5)"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 491 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#EDEDED"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#888888" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#E4E4E4"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#BEBEBE" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="5" fill="#F6F6F6"/>
<rect x="1" y="1" width="23" height="23" rx="5" stroke="#898989" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 252 B

+2
View File
@@ -0,0 +1,2 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
</svg>

After

Width:  |  Height:  |  Size: 103 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.40772 9.05161C5.19743 9.26284 5.19743 9.60524 5.40772 9.81647C5.61801 10.0277 5.95888 10.0277 6.16915 9.81647L8.5923 7.38236C8.80259 7.17113 8.80254 6.82871 8.5923 6.61747L6.16915 4.18333C5.95887 3.97209 5.618 3.97209 5.40772 4.18333C5.19743 4.39457 5.19743 4.73698 5.40772 4.94822L7.45014 6.99992L5.40772 9.05161Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 448 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M5.40772 9.05162C5.19743 9.26285 5.19743 9.60525 5.40772 9.81648C5.61801 10.0277 5.95888 10.0277 6.16915 9.81648L8.5923 7.38237C8.80259 7.17114 8.80254 6.82872 8.5923 6.61747L6.16915 4.18333C5.95887 3.97209 5.618 3.97209 5.40772 4.18333C5.19743 4.39457 5.19743 4.73699 5.40772 4.94823L7.45014 6.99992L5.40772 9.05162Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 448 B

@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.94867 5.40772C4.73744 5.19743 4.39504 5.19743 4.18381 5.40772C3.97258 5.61801 3.97258 5.95888 4.18381 6.16916L6.61792 8.59231C6.82915 8.8026 7.17157 8.80254 7.38281 8.59231L9.81696 6.16916C10.0282 5.95887 10.0282 5.61801 9.81696 5.40772C9.60571 5.19743 9.2633 5.19743 9.05206 5.40772L7.00037 7.45015L4.94867 5.40772Z" fill="#A0A0A0"/>
</svg>

After

Width:  |  Height:  |  Size: 450 B

+3
View File
@@ -0,0 +1,3 @@
<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M4.94867 5.40772C4.73744 5.19743 4.39504 5.19743 4.18381 5.40772C3.97258 5.61801 3.97258 5.95888 4.18381 6.16915L6.61792 8.5923C6.82915 8.80259 7.17157 8.80254 7.38281 8.5923L9.81696 6.16915C10.0282 5.95887 10.0282 5.618 9.81696 5.40772C9.60571 5.19743 9.2633 5.19743 9.05206 5.40772L7.00037 7.45014L4.94867 5.40772Z" fill="#1B1B1B"/>
</svg>

After

Width:  |  Height:  |  Size: 447 B

@@ -0,0 +1,5 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="1" y="1" width="23" height="23" rx="11.5" fill="#C5C5C5"/>
<rect x="1" y="1" width="23" height="23" rx="11.5" stroke="#ABABAB" stroke-width="2"/>
<circle cx="12.5" cy="12.5" r="6.5" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 309 B

@@ -0,0 +1,4 @@
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect x="2" y="2" width="21" height="21" rx="10.5" fill="white"/>
<rect x="2" y="2" width="21" height="21" rx="10.5" stroke="#1A76C6" stroke-width="4"/>
</svg>

After

Width:  |  Height:  |  Size: 256 B

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