[XAM/CONTENT] - Implement XamContentRegisterChangeCallback

- Implement XamContentRegisterChangeCallback
- Callback used subfunction within XContentInstall
This commit is contained in:
The-Little-Wolf
2025-12-14 19:00:44 -08:00
committed by Radosław Gliński
parent 4cbcae5b64
commit a89513864c
3 changed files with 12 additions and 0 deletions

View File

@@ -794,6 +794,11 @@ dword_result_t XamContentLaunchImageInternal_entry(lpvoid_t content_data_ptr,
DECLARE_XAM_EXPORT1(XamContentLaunchImageInternal, kContent, kStub);
void XamContentRegisterChangeCallback_entry(dword_t callback) {
kernel_state()->xam_state()->SetContentRegisterCallback(callback);
}
DECLARE_XAM_EXPORT1(XamContentRegisterChangeCallback, kContent, kImplemented);
dword_result_t XamContentGetDeviceVolumePath_entry(dword_t device_id,
lpvoid_t path_ptr,
dword_t path_size,

View File

@@ -72,6 +72,10 @@ void XamState::LoadSpaInfo(const SpaInfo* info) {
user_tracker_->UpdateSpaInfo(spa_info_.get());
}
void XamState::SetContentRegisterCallback(uint32_t callback) {
content_register_callback = callback;
}
} // namespace xam
} // namespace kernel
} // namespace xe

View File

@@ -57,9 +57,12 @@ class XamState {
//
void LoadSpaInfo(const SpaInfo* info);
void SetContentRegisterCallback(uint32_t callback);
X_DASH_APP_INFO dash_app_info_ = {};
uint32_t dash_backstack_nodes_count_ = 0;
X_DASH_BACKSTACK_DATA dash_backstack_data_[2] = {};
uint32_t content_register_callback = 0;
std::atomic<int32_t> xam_dialogs_shown_ = {0};
std::atomic<int32_t> xam_nui_dialogs_shown_ = {0};