mirror of
https://git.naxdy.org/Mirror/Ryujinx.git
synced 2026-05-13 16:10:36 +00:00
Should allow Ring Fit and other games that rely heavily on the notification system to get in-game (?), needs testing. if you're wondering what happened to the first branch -- no you're not. (duplicated history somehow??) Reviewed-on: https://git.ryujinx.app/projects/Ryubing/pulls/6
32 lines
1.2 KiB
C#
32 lines
1.2 KiB
C#
using Ryujinx.Common.Logging;
|
|
using Ryujinx.HLE.HOS.Ipc;
|
|
using Ryujinx.HLE.HOS.Kernel.Threading;
|
|
using Ryujinx.Horizon.Common;
|
|
using System;
|
|
|
|
namespace Ryujinx.HLE.HOS.Services.Notification
|
|
{
|
|
class INotificationSystemEventAccessor : IpcService
|
|
{
|
|
|
|
private readonly KEvent _getNotificationSendingNotifierEvent;
|
|
private int _getNotificationSendingNotifierEventHandle;
|
|
public INotificationSystemEventAccessor(ServiceCtx context) { }
|
|
|
|
[CommandCmif(0)] // 9.0.0+
|
|
// GetNotificationSendingNotifier() -> nn::notification::server::INotificationSystemEventAccessor
|
|
public ResultCode GetSystemEvent(ServiceCtx context)
|
|
{
|
|
if (_getNotificationSendingNotifierEventHandle == 0)
|
|
{
|
|
if (context.Process.HandleTable.GenerateHandle(_getNotificationSendingNotifierEvent.ReadableEvent, out _getNotificationSendingNotifierEventHandle) != Result.Success)
|
|
{
|
|
throw new InvalidOperationException("Out of handles!");
|
|
}
|
|
}
|
|
|
|
context.Response.HandleDesc = IpcHandleDesc.MakeCopy(_getNotificationSendingNotifierEventHandle);
|
|
return ResultCode.Success;
|
|
}
|
|
}
|
|
}
|