Commit Graph

81 Commits

Author SHA1 Message Date
Henrik Rydgård
d60c9a015f Vulkan: Fix synchronization when shutting the GPU down in-game. 2023-10-11 12:49:33 +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
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
Henrik Rydgard
900539e200 Fix #9340 (touch controls not always getting repositioned correctly) 2017-02-23 09:31:45 +01:00
Unknown W. Brackets
92d930887f Android: Add both a lost and restore phase.
Lost = delete, restore = create.  Let's stick to never overlapping.

May help #8912.
2016-09-10 21:58:42 -07:00
Unknown W. Brackets
afdd01571c Uncouple savestates from NativeApp some.
Still have osm.
2016-05-27 20:41:37 -07:00
Henrik Rydgard
5d6d4a08f4 Change approach somewhat to avoid adding drawing code in the screen manager. 2015-11-18 14:18:35 +01:00
Henrik Rydgard
758ec5a027 Avoid clearing the backbuffer before actually doing any rendering to fbo on every frame - instead, clear when stretching the framebuffer into place. May save quite a bit of bandwidth on tiler GPUs with naive GL drivers. 2015-11-18 12:13:35 +01:00