mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu-mainline.git
				synced 2025-03-21 01:53:15 +00:00 
			
		
		
		
	am: IHomeMenuFunctions:GetPopFromGeneralChannelEvent
QLaunch 1.0.0
This commit is contained in:
		
							parent
							
								
									f88d2f5739
								
							
						
					
					
						commit
						8850d85341
					
				| @ -1514,14 +1514,15 @@ void InstallInterfaces(SM::ServiceManager& service_manager, | |||||||
|     std::make_shared<TCAP>()->InstallAsService(service_manager); |     std::make_shared<TCAP>()->InstallAsService(service_manager); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| IHomeMenuFunctions::IHomeMenuFunctions() : ServiceFramework("IHomeMenuFunctions") { | IHomeMenuFunctions::IHomeMenuFunctions(Kernel::KernelCore& kernel) | ||||||
|  |     : ServiceFramework("IHomeMenuFunctions"), kernel(kernel) { | ||||||
|     // clang-format off
 |     // clang-format off
 | ||||||
|     static const FunctionInfo functions[] = { |     static const FunctionInfo functions[] = { | ||||||
|         {10, &IHomeMenuFunctions::RequestToGetForeground, "RequestToGetForeground"}, |         {10, &IHomeMenuFunctions::RequestToGetForeground, "RequestToGetForeground"}, | ||||||
|         {11, nullptr, "LockForeground"}, |         {11, nullptr, "LockForeground"}, | ||||||
|         {12, nullptr, "UnlockForeground"}, |         {12, nullptr, "UnlockForeground"}, | ||||||
|         {20, nullptr, "PopFromGeneralChannel"}, |         {20, nullptr, "PopFromGeneralChannel"}, | ||||||
|         {21, nullptr, "GetPopFromGeneralChannelEvent"}, |         {21, &IHomeMenuFunctions::GetPopFromGeneralChannelEvent, "GetPopFromGeneralChannelEvent"}, | ||||||
|         {30, nullptr, "GetHomeButtonWriterLockAccessor"}, |         {30, nullptr, "GetHomeButtonWriterLockAccessor"}, | ||||||
|         {31, nullptr, "GetWriterLockAccessorEx"}, |         {31, nullptr, "GetWriterLockAccessorEx"}, | ||||||
|         {100, nullptr, "PopRequestLaunchApplicationForDebug"}, |         {100, nullptr, "PopRequestLaunchApplicationForDebug"}, | ||||||
| @ -1531,6 +1532,9 @@ IHomeMenuFunctions::IHomeMenuFunctions() : ServiceFramework("IHomeMenuFunctions" | |||||||
|     // clang-format on
 |     // clang-format on
 | ||||||
| 
 | 
 | ||||||
|     RegisterHandlers(functions); |     RegisterHandlers(functions); | ||||||
|  | 
 | ||||||
|  |     pop_from_general_channel_event = Kernel::WritableEvent::CreateEventPair( | ||||||
|  |         kernel, "IHomeMenuFunctions:PopFromGeneralChannelEvent"); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| IHomeMenuFunctions::~IHomeMenuFunctions() = default; | IHomeMenuFunctions::~IHomeMenuFunctions() = default; | ||||||
| @ -1542,6 +1546,14 @@ void IHomeMenuFunctions::RequestToGetForeground(Kernel::HLERequestContext& ctx) | |||||||
|     rb.Push(RESULT_SUCCESS); |     rb.Push(RESULT_SUCCESS); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | void IHomeMenuFunctions::GetPopFromGeneralChannelEvent(Kernel::HLERequestContext& ctx) { | ||||||
|  |     LOG_WARNING(Service_AM, "(STUBBED) called"); | ||||||
|  | 
 | ||||||
|  |     IPC::ResponseBuilder rb{ctx, 2, 1}; | ||||||
|  |     rb.Push(RESULT_SUCCESS); | ||||||
|  |     rb.PushCopyObjects(pop_from_general_channel_event.readable); | ||||||
|  | } | ||||||
|  | 
 | ||||||
| IGlobalStateController::IGlobalStateController() : ServiceFramework("IGlobalStateController") { | IGlobalStateController::IGlobalStateController() : ServiceFramework("IGlobalStateController") { | ||||||
|     // clang-format off
 |     // clang-format off
 | ||||||
|     static const FunctionInfo functions[] = { |     static const FunctionInfo functions[] = { | ||||||
|  | |||||||
| @ -292,11 +292,15 @@ private: | |||||||
| 
 | 
 | ||||||
| class IHomeMenuFunctions final : public ServiceFramework<IHomeMenuFunctions> { | class IHomeMenuFunctions final : public ServiceFramework<IHomeMenuFunctions> { | ||||||
| public: | public: | ||||||
|     IHomeMenuFunctions(); |     explicit IHomeMenuFunctions(Kernel::KernelCore& kernel); | ||||||
|     ~IHomeMenuFunctions() override; |     ~IHomeMenuFunctions() override; | ||||||
| 
 | 
 | ||||||
| private: | private: | ||||||
|     void RequestToGetForeground(Kernel::HLERequestContext& ctx); |     void RequestToGetForeground(Kernel::HLERequestContext& ctx); | ||||||
|  |     void GetPopFromGeneralChannelEvent(Kernel::HLERequestContext& ctx); | ||||||
|  | 
 | ||||||
|  |     Kernel::EventPair pop_from_general_channel_event; | ||||||
|  |     Kernel::KernelCore& kernel; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| class IGlobalStateController final : public ServiceFramework<IGlobalStateController> { | class IGlobalStateController final : public ServiceFramework<IGlobalStateController> { | ||||||
|  | |||||||
| @ -202,7 +202,7 @@ private: | |||||||
| 
 | 
 | ||||||
|         IPC::ResponseBuilder rb{ctx, 2, 0, 1}; |         IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | ||||||
|         rb.Push(RESULT_SUCCESS); |         rb.Push(RESULT_SUCCESS); | ||||||
|         rb.PushIpcInterface<IHomeMenuFunctions>(); |         rb.PushIpcInterface<IHomeMenuFunctions>(system.Kernel()); | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     void GetGlobalStateController(Kernel::HLERequestContext& ctx) { |     void GetGlobalStateController(Kernel::HLERequestContext& ctx) { | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 David Marcec
						David Marcec