Commit Graph
136 Commits
Author SHA1 Message Date
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
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årdandGitHub 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
Unknown W. Brackets 15152fc55b UI: Reorganize EmuScreen so it renders on loading. 2017-12-03 10:39:25 -08:00
Henrik Rydgård 8bfdf7b1b2 Fix annoying little flicker when starting a game. 2017-11-13 15:45:31 +01:00
Gde Made Novan Priambhada 4420719a86 Bug fix 2017-08-09 03:50:31 +08:00
Ade Novan 10e874cefd PPSSPP early chat feature rebranched 2017-07-02 01:28:38 +08:00
Henrik Rydgård 0f171acacb Start refactoring things to be more vulkan-friendly 2017-05-30 09:36:17 +02:00
Unknown W. Brackets 75898392b9 UI: Proxy devmenu keypress through an event.
This prevents a mutex issue in #9626.
2017-04-17 20:33:22 -07:00
Unknown W. Brackets 9e390510df Remove legacy InputState. 2017-03-14 22:07:07 -07:00