Commit Graph
119 Commits
Author SHA1 Message Date
Henrik Rydgård 1be01aea52 rcheevos: Call rc_client_do_frame in the flip callback.
Also some minor cleanup of the AVI recording.

Should fix #20383
2025-05-25 22:21:37 +02:00
Henrik Rydgård 9a86101769 Avoid getting stuck in a load-loop when auto-loading a bad savestate. Make some code clearer. 2025-05-16 01:55:18 +02:00
Henrik Rydgård ceef65fe67 Wait for pipelines to finish creating before proceeding with boot. 2025-05-15 12:26:03 +02:00
Henrik Rydgård 751e4fad2e Move more of GPU init to the loader thread. Some log cleanup. 2025-05-15 11:43:37 +02:00
Henrik Rydgård 9e0c98a87b Simplify framestep logic 2025-05-13 12:13:15 +02:00
Henrik Rydgård 1ec9ba509e Small refactor of vblank callbacks 2025-05-13 12:13:15 +02:00
Henrik Rydgård c984897b2e Minor cleanup, check 2025-05-13 12:13:12 +02:00
Henrik Rydgård a4e6e84a0a Move achievement handling to EmuScreen and the main thread. Fixes black screen. 2025-04-09 18:07:13 +02:00
Henrik Rydgård 6961a9fc1a Fix resetting through the keyboard shortcut 2025-04-04 23:45:43 +02:00
Henrik Rydgård 088a02bfdb Cleanup a lot of the bootup state management. 2025-03-30 14:02:29 +02:00
Henrik Rydgård 7314a65cc5 Remove the "invalid_" state bool in EmuScreen 2025-03-28 11:11:28 +01:00
Henrik Rydgård 6efb758893 CHange the TabbedDialog create-tab API to allow for future lazy-loading 2025-03-23 22:48:57 +01:00
Henrik Rydgård d11f8609ea Add an easy way to break into the imdebugger from assert messageboxs ("No") 2025-03-19 14:22:02 +01:00
Henrik Rydgård af92d56491 Move a bunch of non-time-critical virt-keys to the new safe processing 2025-02-24 15:57:38 -06:00
Henrik Rydgård 4b77cfd53b Add confirmation popup support on Exit App key
This adds a new mechanism so we can delay "vkey" events until the next
frame, making for safer code. Will move a bunch of the virtkeys to this
later.

Fixes #20020
2025-02-24 10:23:11 -06:00
Henrik Rydgård d58138c585 SDL: Enable KEY_CHAR processing when imgui is active 2025-01-09 14:41:39 +01:00
Henrik Rydgård 15b63aa812 Run the imgui processing early in the frame, only do the rendering late 2024-12-15 00:17:26 +01:00
Henrik Rydgård 080798b5dd Move out two more functions from Core.cpp. Clean up Windows includes 2024-12-08 12:12:02 +01:00
Henrik Rydgård b3d08977d5 Delete unused code 2024-12-08 11:25:00 +01:00
Henrik Rydgård 8831d4bfe7 ImGui: Implement Shift/Ctrl/Alt modifier support 2024-11-25 00:23:28 +01:00
Henrik Rydgård 0e3c1df9b3 Add a way to access the ImDebugger from the DevMenu 2024-11-21 15:48:18 +01:00
Henrik Rydgård 39a07a033c Make imdebugger visibility a config option instead of emuscreen state 2024-11-12 12:20:47 +01:00
Henrik Rydgård cf6d06c56a Start work on imdbg 2024-11-07 11:10:12 +01:00
Henrik Rydgård 8dba3a50f7 imgui: Code cleanup, fix clean shutdown 2024-11-05 11:27:16 +01:00
Henrik Rydgård 8da1ccc3de Hook up basic keyboard and mouse input 2024-11-04 23:14:39 +01:00
Henrik Rydgård 4b66a80d2b More work, starting to integrate into the EmuScreen 2024-11-04 23:14:39 +01:00
Henrik Rydgård 6d3849bc48 Add a "Back" button to the crash screen for convenience 2024-10-03 18:55:22 +02:00
Henrik Rydgård 42914c3d7c Try to make Frame Advance a bit more reliable 2024-09-18 15:17:20 +02:00
Henrik Rydgård c38ce2a5be Fix an issue when bringin up the dev menu with transparent background disabled 2024-05-11 21:28:26 +02:00
Henrik Rydgård 902b73698f Slight improvement to extra assert info (set special info on pause screen) 2024-01-18 23:00:43 +01:00
Henrik Rydgård 25ab7b9170 Fix a bunch of edge cases 2023-12-11 15:58:08 +01:00
Henrik Rydgård e8f70594a4 Implement running the game in the background on the pause screen. Fix some bugs. 2023-12-11 12:41:44 +01:00
Henrik Rydgård 6d51fbc1e6 Refactor UI background rendering. There's now a BackgroundScreen. 2023-12-10 22:26:46 +01:00
Henrik Rydgård 0ff0ad9140 Remove preRender/postRender methods from screens, in favor of a mode parameter. 2023-12-10 14:09:55 +01:00
Henrik Rydgård 22295a6412 Plumb through a ScreenRenderMode parameter 2023-12-10 13:05:17 +01:00
Henrik Rydgård 707670cfcf Fix time tracking during pause 2023-11-26 19:49:21 +01:00
Henrik Rydgård 0ad2827e14 Vulkan: Fix synchronization when shutting the GPU down in-game. 2023-10-11 12:27:39 +02:00
Henrik Rydgård 19e4de5088 Change global UI messages to use an enum instead of strings.
Makes it easier to add new ones and delete outdated ones without missing
any uses.
2023-09-30 11:37:02 +02:00
Henrik Rydgård ee93e4a2ca Batch axis events all the way into ControlMapper 2023-09-29 11:14:19 +02:00
Henrik Rydgård 8784ece623 Fix the chat window closing on pressing the X key.
It's better to handle the chat window on the queued event path.
2023-09-12 10:25:04 +02:00
Henrik Rydgård 109205a56a Add return value to UnsyncTouch 2023-09-04 11:00:06 +02:00
Henrik Rydgård d6552a7673 Implement an "OverlayScreen" concept. OSD can now render on top of other screens than EmuScreen. 2023-06-20 10:44:47 +02:00
Henrik Rydgård 3715b1ffa1 Split the functions up, so you don't have to care about the Unsync ones at all in most cases while still getting synced behavior. 2023-05-26 18:41:13 +02:00
Henrik Rydgård ca300a4dfd More callback fixes 2023-03-31 11:05:33 +02:00
Henrik RydgårdandGitHub 26bf40c497 ControlMapper: Change the callbacks to be more suitable for the upcoming refactor. (#17209)
* ControlMapper: Change the callbacks to be more suitable for the upcoming refactor.

* SetAllButtons: Separate bits to set and bits to clear.

* Oops, missed committing some files somehow
2023-03-30 10:47:28 +02:00
Henrik Rydgård 07114c6aaf Remove return value from axis functions in API 2023-01-10 10:12:37 +01:00
Henrik Rydgård a3a949f5e6 Remove touch() return values from screen hierarchy 2023-01-10 10:12:37 +01:00
Henrik Rydgård 9f3851678e Add tags to all our UI screens. Useful to debug UI problems. 2022-09-16 10:14:00 +02:00
Unknown W. Brackets 9403947b67 UI: Decouple new chat display and tracking logic. 2021-09-14 18:08:16 -07:00
Unknown W. Brackets f45c5186ca UI: Move the chat message box to just a view.
Instead of being a popup.  This should make it easier to make sure things
work normally, and avoids some of the strange overrides of PopupScreen it
previously had.
2021-09-12 19:44:44 -07:00