diff options
author | Zephyron <zephyron@citron-emu.org> | 2025-01-26 13:27:06 +1000 |
---|---|---|
committer | Zephyron <zephyron@citron-emu.org> | 2025-01-26 13:27:06 +1000 |
commit | a6063bbd64ffe5ab823c7f0f75fe3eddb4ad2e90 (patch) | |
tree | 6f2928a2ce03952c7a47922406dcf3abe2e658d6 /src/core/cpu_manager.cpp | |
parent | 924c06d88ff8c21534a3a560fe66afafa2e081c7 (diff) |
service: vi: Implement missing IApplicationDisplayService functions
Implements missing functions and improves permission handling in the VI
(Visual Interface) IApplicationDisplayService based on official documentation.
Key changes:
- Add session type enum to properly handle vi:u/vi:s/vi:m permissions
- Implement GetIndirectLayerImageCropMap for handling cropped layer images
- Implement GetDisplayVsyncEventForDebug for debug vsync event handling
- Add proper permission checks for GetSystemDisplayService and GetManagerDisplayService
- Improve AppletResourceUserId validation in OpenLayer
- Clean up logging and error handling
The changes follow the official documentation for permission handling:
- vi:u sessions can only use GetRelayService
- vi:s sessions can use everything except GetManagerDisplayService
- vi:m sessions can use all commands
REFS: switchbrew.org/wiki/Display_services#IApplicationDisplayService
Diffstat (limited to 'src/core/cpu_manager.cpp')
0 files changed, 0 insertions, 0 deletions