Commit Graph

271 Commits

Author SHA1 Message Date
Guido Cella 4413c7b10f Implement pause on lost focus on SDL
This option was Windows exclusive and this commit implements it on SDL
as well.

It is hidden on mobile devices because it makes no sense there.
2026-04-01 15:39:34 +02:00
Henrik Rydgård 2b946094a9 Warning fixes 2026-03-10 12:19:27 +01:00
Henrik Rydgård d6ca0378b6 Move DarwinFileSystemServices.mm/h to Core/Util 2026-03-07 11:35:34 +01:00
Henrik Rydgård 2052ebc60c Fix switching of audio devices on Windows.
Fixes #21337
2026-03-04 14:41:59 +01:00
BearOso 0871d53d68 Prevent starvation of window state updates with Vulkan. 2026-02-24 22:18:07 -06:00
BearOso acbb715413 Fix fullscreen bugs in SDL port.
* It needs to check for both SDL_WINDOW_FULLSCREEN *and* SDL_WINDOW_FULLSCREEN_DESKTOP
  when looking at the SDL window flags.
* Display size wasn't used when starting with fullscreen enabled in the config file.

This resolves the problems with fullscreening and sdl2-compat.
2026-02-24 21:15:33 -06:00
Henrik Rydgård 236a0acf71 Minor tweaks 2026-02-06 11:37:09 +01:00
Henrik Rydgård 563fdb5d28 Fix bug with fullscreen in SDL (and do a drive-by fix in LaunchUrl) 2026-02-02 12:54:56 +01:00
Henrik Rydgård ad4da764df Rework the internal API for applying the fullscreen state. Fixes. 2026-02-02 11:45:46 +01:00
Henrik Rydgård 51c3058cf6 Replace "ForceFullScreen" with a way to prevent specific settings from being saved. 2026-02-02 09:25:49 +01:00
Dmytro Kyshchenko 73e0bb651e Fix #20356 - Flatpak application doesn't close until controller is unplugged.
When the controller is connected SLD sends a lot of events (`SDL_JOYAXISMOTION` and etc.),
so PPSSPP is stuck in the loop to process these events. Fixed by duplicating the `if` statement
to check whether the quit was requested inside the loop.
2026-01-28 16:40:01 +02:00
Henrik Rydgård 18a67b82d2 Do the same with KeyInputFlags. Fix minor UI misalignments 2025-12-19 13:41:58 +01:00
Henrik Rydgård 481d0fd18c Switch TouchInputFlags to enum class, fix some minor UI issues
Scroll views now only wheel-scroll if the mouse is hovering over them.
2025-12-19 11:38:56 +01:00
Henrik Rydgård 6d1973edfb Add banners on the top of settings pages, if editing game-specific settings show the icon. 2025-11-09 08:51:41 +01:00
Henrik Rydgård 7891d12c48 Fix references to icon files 2025-09-18 11:40:04 -06:00
Henrik Rydgård 9218fe9b59 Rework the shutdown logic in the OpenGL backend. Eliminated race conditions. 2025-08-31 10:57:06 +02:00
fp64 4bed8ac8c8 Fix more stdout on SDL
Followup to https://github.com/hrydgard/ppsspp/pull/20748
Now PPSSPPSDL outputs nothing to stdout during normal operation.
Didn't touch `printf`s `CocoaBarItems.mm`, though.
2025-08-29 21:52:08 +03:00
fp64 5a8e63714c Implement --help in SDL backend
This also changes bunch of logging from stdout to stderr.
Conventionally, intended output goes to stdout, and diagnostic
output to stderr. For a graphical application like PPSSPPSDL,
pretty much the only intended textual outputs are results of
`--help` and `--version`. The rest now mostly goes to stderr
(there are still few straggler `printf`s left).
2025-08-25 22:47:27 +03:00
Henrik Rydgård 6868bdee6f style fixes 2025-08-22 21:47:36 +02:00
fp64 65e44b8ec1 Update SDLMain.cpp 2025-08-22 17:32:55 +03:00
Henrik Rydgård 263d0b3983 SDL: Fix bug where the mouse got stuck in relative mode when mapping mouse inputs 2025-07-10 20:29:24 +02:00
Henrik Rydgård b0df912935 Merge pull request #20550 from gooosedev/feature-ImMemView-KeyboardShortcuts
ImMemView: Refined the keyboard shortcuts.
2025-06-19 18:42:31 +02:00
gooosedev 854b9cce17 removed reset keybind in SDL/SDLMain.cpp
enabled search byte keybind in UI/ImDebugger/ImMemView.cpp
2025-06-19 18:24:54 +02:00
Henrik Rydgård 61d6c95f0c More refactoring. Add the AudioBackend interface 2025-06-16 21:55:32 +02:00
Henrik Rydgård 990b74cc17 More audio refactoring 2025-06-16 18:48:53 +02:00
Henrik Rydgård b75541b23f Disable the Cache full ISO in RAM feature on 32-bit builds 2025-06-13 20:59:22 +02:00
Henrik Rydgård 17385c6e3a SDL audio: Improve logging, don't auto-switch device during the first 3 seconds of execution 2025-06-09 11:57:14 +02:00
Henrik Rydgård 4edbc14025 Fix the background image selector on MacOS and Linux (with pfd)
Forgot that the backends need changes too, after I split out image file selection from the other types.
2025-05-27 23:04:18 +02:00
Henrik Rydgård f0b0457fea More minor fixes 2025-05-26 19:40:31 +02:00
Henrik Rydgård 2dbb54667d IAP work 2025-05-25 11:22:04 +02:00
Henrik Rydgård 09e067c6e1 Revert "Get rid of remains of support for non-square screen DPIs"
This reverts commit f206ed95eb.
2025-05-21 21:41:50 +02:00
Henrik Rydgård 486370852f Restrict SDL audio buffer setting to 128, 256, 512, 1024, 2048. UI improvmeents 2025-04-15 19:26:26 +02:00
Jamie Bainbridge 3d0ef8c6e1 SDL audio: Add config slider for audio samples
As described on Issue #12705 several users have problems with audio
popping, crackling, and distorion with different sample values.

Previous commit ece6edf reduced default samples from 1024 to 256 but
there does not seem to be an ideal value for all platforms.

Make the option configurable in Audio Backend Settings.

Signed-off-by: Jamie Bainbridge <jamie.bainbridge@gmail.com>
2025-04-15 18:18:42 +02:00
Henrik Rydgård 0e429b74f1 ImGUI on SDL: Implement mouse cursor shape support 2025-04-10 22:54:12 +02:00
Henrik Rydgård 5f8f40e592 Add file browser support on Linux through portable-file-dialogs 2025-03-29 08:43:30 +01:00
Henrik Rydgård b05d6171d4 Add a consistent feature check - only desktops get to use CacheFullISOInRAM. 2025-03-27 01:02:28 +01:00
Henrik Rydgård 1a1483478a Fix live resizing, implement setting on all platforms. 2025-02-20 17:14:59 -06:00
Henrik Rydgård 0a641e1b36 Assorted warning fixes, fix regression on Mac (save/load dialogs) 2025-02-20 15:47:06 -06:00
Henrik Rydgård 91360fee9b Have Native_UpdateScreenScale use the new g_display.Recalculate() 2025-02-20 15:47:02 -06:00
Henrik Rydgård 7d8c7dd70a macOS SDL: Set the metal layer resolution properly, remove DPI hacks.
Fixes #19183

Thanks to @schm1dtmac for the fix.

@shm1dtmac also mentions that this may have issues when moving the window between displays, but this should still be an improvement for most people.
2025-02-20 13:54:50 -06:00
Henrik Rydgård f206ed95eb Get rid of remains of support for non-square screen DPIs 2025-02-20 11:14:26 -06:00
Henrik Rydgård 1ea14efcf9 SDL: Use SDL_GetPowerInfo 2025-02-11 10:46:28 -06:00
Henrik Rydgård 61aa231fe2 Buildfix attempt 2025-02-11 10:43:39 -06:00
Henrik Rydgård ee772bb1e2 Refactor querying the battery percentage into a regular sysprop 2025-02-11 10:31:18 -06:00
Henrik Rydgård ab51c2a13b Fix enabling logs 2024-12-16 12:48:48 +01:00
Henrik Rydgård 2b8414b437 Move irrelevant code out of Core.cpp 2024-12-02 13:26:41 +01:00
Henrik Rydgård e6ae256da8 Fix regression with Debug->Stop (Ctrl+W). Delete some duplicate code. 2024-11-29 17:18:34 +01:00
Vishwanath Martur 0a8ded56ae Convert argv[i] to Path type before passing it to File::IsDirectory
* Fix the error by converting `argv[i]` to `Path` type before passing it to `File::IsDirectory`
2024-11-27 07:59:59 +05:30
Vishwanath Martur 052d0c3c35 Fix toast warning in SDL build
Related to #18951

Add toast warning for unpacked ISO directories in SDL build.

* Check if the path to a directory containing an unpacked ISO is passed as a command line argument.
* Display the toast warning "Warning: Playing unpacked games may cause issues." if an unpacked ISO directory is detected.
2024-11-26 18:46:37 +05:30
Henrik Rydgård f0ae048d21 Fix mouse hover in SDL builds 2024-11-06 22:09:53 +01:00