|
|
@ -210,8 +210,8 @@ IDisplayController::IDisplayController(Core::System& system_) |
|
|
{21, nullptr, "ClearAppletTransitionBuffer"}, |
|
|
{21, nullptr, "ClearAppletTransitionBuffer"}, |
|
|
{22, nullptr, "AcquireLastApplicationCaptureSharedBuffer"}, |
|
|
{22, nullptr, "AcquireLastApplicationCaptureSharedBuffer"}, |
|
|
{23, nullptr, "ReleaseLastApplicationCaptureSharedBuffer"}, |
|
|
{23, nullptr, "ReleaseLastApplicationCaptureSharedBuffer"}, |
|
|
{24, nullptr, "AcquireLastForegroundCaptureSharedBuffer"}, |
|
|
|
|
|
{25, nullptr, "ReleaseLastForegroundCaptureSharedBuffer"}, |
|
|
|
|
|
|
|
|
{24, &IDisplayController::AcquireLastForegroundCaptureSharedBuffer, "AcquireLastForegroundCaptureSharedBuffer"}, |
|
|
|
|
|
{25, &IDisplayController::ReleaseLastForegroundCaptureSharedBuffer, "ReleaseLastForegroundCaptureSharedBuffer"}, |
|
|
{26, &IDisplayController::AcquireCallerAppletCaptureSharedBuffer, "AcquireCallerAppletCaptureSharedBuffer"}, |
|
|
{26, &IDisplayController::AcquireCallerAppletCaptureSharedBuffer, "AcquireCallerAppletCaptureSharedBuffer"}, |
|
|
{27, &IDisplayController::ReleaseCallerAppletCaptureSharedBuffer, "ReleaseCallerAppletCaptureSharedBuffer"}, |
|
|
{27, &IDisplayController::ReleaseCallerAppletCaptureSharedBuffer, "ReleaseCallerAppletCaptureSharedBuffer"}, |
|
|
{28, nullptr, "TakeScreenShotOfOwnLayerEx"}, |
|
|
{28, nullptr, "TakeScreenShotOfOwnLayerEx"}, |
|
|
@ -239,6 +239,22 @@ void IDisplayController::TakeScreenShotOfOwnLayer(HLERequestContext& ctx) { |
|
|
rb.Push(ResultSuccess); |
|
|
rb.Push(ResultSuccess); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void IDisplayController::AcquireLastForegroundCaptureSharedBuffer(HLERequestContext& ctx) { |
|
|
|
|
|
LOG_WARNING(Service_AM, "(STUBBED) called"); |
|
|
|
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
|
|
rb.Push(ResultSuccess); |
|
|
|
|
|
rb.Push(1U); |
|
|
|
|
|
rb.Push(0); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void IDisplayController::ReleaseLastForegroundCaptureSharedBuffer(HLERequestContext& ctx) { |
|
|
|
|
|
LOG_WARNING(Service_AM, "(STUBBED) called"); |
|
|
|
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 2}; |
|
|
|
|
|
rb.Push(ResultSuccess); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
void IDisplayController::AcquireCallerAppletCaptureSharedBuffer(HLERequestContext& ctx) { |
|
|
void IDisplayController::AcquireCallerAppletCaptureSharedBuffer(HLERequestContext& ctx) { |
|
|
LOG_WARNING(Service_AM, "(STUBBED) called"); |
|
|
LOG_WARNING(Service_AM, "(STUBBED) called"); |
|
|
|
|
|
|
|
|
@ -1557,7 +1573,7 @@ ILibraryAppletSelfAccessor::ILibraryAppletSelfAccessor(Core::System& system_) |
|
|
{100, nullptr, "CreateGameMovieTrimmer"}, |
|
|
{100, nullptr, "CreateGameMovieTrimmer"}, |
|
|
{101, nullptr, "ReserveResourceForMovieOperation"}, |
|
|
{101, nullptr, "ReserveResourceForMovieOperation"}, |
|
|
{102, nullptr, "UnreserveResourceForMovieOperation"}, |
|
|
{102, nullptr, "UnreserveResourceForMovieOperation"}, |
|
|
{110, nullptr, "GetMainAppletAvailableUsers"}, |
|
|
|
|
|
|
|
|
{110, &ILibraryAppletSelfAccessor::GetMainAppletAvailableUsers, "GetMainAppletAvailableUsers"}, |
|
|
{120, nullptr, "GetLaunchStorageInfoForDebug"}, |
|
|
{120, nullptr, "GetLaunchStorageInfoForDebug"}, |
|
|
{130, nullptr, "GetGpuErrorDetectedSystemEvent"}, |
|
|
{130, nullptr, "GetGpuErrorDetectedSystemEvent"}, |
|
|
{140, nullptr, "SetApplicationMemoryReservation"}, |
|
|
{140, nullptr, "SetApplicationMemoryReservation"}, |
|
|
@ -1652,6 +1668,25 @@ void ILibraryAppletSelfAccessor::GetCallerAppletIdentityInfo(HLERequestContext& |
|
|
rb.PushRaw(applet_info); |
|
|
rb.PushRaw(applet_info); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void ILibraryAppletSelfAccessor::GetMainAppletAvailableUsers(HLERequestContext& ctx) { |
|
|
|
|
|
const Service::Account::ProfileManager manager{}; |
|
|
|
|
|
bool is_empty{true}; |
|
|
|
|
|
s32 user_count{-1}; |
|
|
|
|
|
|
|
|
|
|
|
LOG_INFO(Service_AM, "called"); |
|
|
|
|
|
|
|
|
|
|
|
if (manager.GetUserCount() > 0) { |
|
|
|
|
|
is_empty = false; |
|
|
|
|
|
user_count = static_cast<s32>(manager.GetUserCount()); |
|
|
|
|
|
ctx.WriteBuffer(manager.GetAllUsers()); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
IPC::ResponseBuilder rb{ctx, 4}; |
|
|
|
|
|
rb.Push(ResultSuccess); |
|
|
|
|
|
rb.Push<u8>(is_empty); |
|
|
|
|
|
rb.Push(user_count); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
void ILibraryAppletSelfAccessor::PushInShowAlbum() { |
|
|
void ILibraryAppletSelfAccessor::PushInShowAlbum() { |
|
|
const Applets::CommonArguments arguments{ |
|
|
const Applets::CommonArguments arguments{ |
|
|
.arguments_version = Applets::CommonArgumentVersion::Version3, |
|
|
.arguments_version = Applets::CommonArgumentVersion::Version3, |
|
|
|