Commit Graph

93 Commits

Author SHA1 Message Date
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ård
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
Unknown W. Brackets
eb8a239616 UI: Show a reset button on the crash screen. 2021-08-08 23:03:19 -07:00
Henrik Rydgård
ef51097f06 Move auto-rotation code to ControlMapper so it can be checked using the new screen 2021-07-09 16:14:51 +02:00
Henrik Rydgård
98372c465f Break out EmuScreen's key/axis inputs to ControlMapper.cpp/h
Additionally, break out the analog stick mapping to the same file.

This will make more sense soon when I change where the analog mapping
is called from, but want this refactor in separately for testing.
2021-07-08 22:24:00 +02:00
Unknown W. Brackets
b0de7ee0e1 UI: Move to ScreenManager for mapping.
Otherwise we'll detect repeated axis for some devices and you won't be
able to map what you want.
2021-05-23 15:18:21 -07:00
Unknown W. Brackets
e1e5a8b49b UI: Ignore duplicate axis events.
We already ignore these on Windows, so this makes other platforms follow
the same logic.
2021-05-23 13:21:45 -07:00
Henrik Rydgård
025bcb1673 Introduce Path, start using it all over the place.
Still lots left to convert!

Convert GetSysDirectory to return Path.

More buildfixing

Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
63edd037d7 Ctrl: Apply analog limiter to real sticks too.
Previously only applied to virtual analog by button, but there's no
particular good reason for that.
2021-05-08 13:34:07 -07:00
Unknown W. Brackets
92d0454133 UI: Make chatButton_ a member of EmuScreen.
No need for a global here.  This should prevent any confusion if the
screen is deleted (i.e. playing a second game.)
2021-02-15 20:37:24 -08:00
Henrik Rydgård
6c8ee35826 Crash screen: Add a very dangerous and inaccurate "Resume" function.
Not sure if there's much point really but maybe..
2020-12-19 20:27:39 +01:00
Henrik Rydgård
1640a39de8 Add developer setting "Show on screen messages". Uncheck to hide them.
Fixes #13682.

Might move to system settings or something next release, don't want to
cause a mess in translations.
2020-11-22 19:08:14 +01:00
Henrik Rydgård
4f43cff5ca
Move fileutil, net, image loaders, ui to Common. (#13506)
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing

Let's also move net while we're at it.

Move the ZIM/PNG loaders over to Common.

Move the UI framework into Common

iOS buildfix

* Buildfix

* Buildfixes

* Apple buildfix

* This typo again..

* UWP buildfix

* Fix build of PPSSPPQt, such as it is (it's not in good condition...)

* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård
9e41fafd0d Move math and some file and data conversion files out from native to Common.
Buildfixing

Move some file util files

Buildfix

Move KeyMap.cpp/h to Core where they belong better.

libretro buildfix attempt

Move ini_file

More buildfixes
2020-10-04 09:12:46 +02:00
Henrik Rydgård
342ed97291 Move input utilities from native to Common/Input. 2020-10-01 09:42:32 +02:00
iota97
e7bcf9a4c2 Use 2 different button for CW and CCW 2020-03-23 09:24:36 +01:00
iota97
45da319ce7 Auto rotating analog 2020-03-23 00:45:22 +01:00
ANR2ME
142e60974c Merge branch 'rechat' of https://github.com/adenovan/amultios-ppsspp into rechat 2020-03-02 22:25:18 +07:00
Henrik Rydgård
5dc9acf839 Cardboard VR: Add an on-screen VR OFF button. Enable Cardboard on iOS. 2019-10-25 16:03:00 +02:00
Unknown W. Brackets
1205753289 UI: Pass touch/button releases to all screens.
This way, if you go into a menu and release a button, it still gets
noticed.  This also goes for axis centering (and therefore vkeys.)

Also, move TOUCH_RELEASE_ALL to all screen switches.
2019-03-03 17:50:54 -08:00
Henrik Rydgård
260fd3c9ee ActivateTopScissor doesn't belong in UIContext::Begin. 2018-12-18 10:37:39 +01:00
Unknown W. Brackets
18bfff5f75 UI: Reinit UI texture during game when used.
Otherwise we may try to use it when it doesn't exist.  This should only
happen on graphics restart.

Potentially related to first crash in #11116.
2018-06-01 21:07:09 -07:00
Unknown W. Brackets
895de164ed Android: Fix initial start from shortcut.
Fixes #10855.  We have to wait for the permission request to complete.
2018-04-01 23:28:36 -07:00
Henrik Rydgård
70481c9444 Fix the loading status. Prettify the loading screen by putting the status and spinner along the bottom edge. 2018-03-13 11:25:17 +01:00
Henrik Rydgård
b9b41f52c5 Add a simple spinner to the game load screen to not look frozen. 2018-02-08 12:03:29 +01:00
Unknown W. Brackets
c793da500a UI: Show PIC1 while loading.
In case it takes a second, less ugly than a black screen.
2018-01-01 22:58:07 -08:00
Henrik Rydgård
7d0fc9ce65 Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc. 2017-12-07 15:05:59 +01:00
Unknown W. Brackets
fb91e7f043 UI: Show loading message while shaders preload.
This opens the door to doing this for other things we do on game start,
later.
2017-12-03 12:04:42 -08:00