diff --git a/frameworks/js/napi/inner/napi_common/napi_common_start_options.cpp b/frameworks/js/napi/inner/napi_common/napi_common_start_options.cpp index 81b5543daa..da4e858a01 100644 --- a/frameworks/js/napi/inner/napi_common/napi_common_start_options.cpp +++ b/frameworks/js/napi/inner/napi_common/napi_common_start_options.cpp @@ -232,15 +232,15 @@ bool UnwrapStartOptions(napi_env env, napi_value param, AAFwk::StartOptions &sta } } - Rosen::StartAnimationOptions animationOptions; - if (Rosen::ConvertStartAnimationOptionsFromJsValue(env, param, animationOptions)) { - startOptions.animationOptions_ = std::make_shared(animationOptions); - } - - Rosen::StartAnimationSystemOptions animationSystemOptions; - if (Rosen::ConvertStartAnimationSystemOptionsFromJsValue(env, param, animationSystemOptions)) { - startOptions.animationSystemOptions_ = - std::make_shared(animationSystemOptions); + bool hasWindowCreateParams = false; + napi_has_named_property(env, param, "windowCreateParams", &hasWindowCreateParams); + if (hasWindowCreateParams) { + napi_value windowJsObject = nullptr; + napi_get_named_property(env, param, "windowCreateParams", &windowJsObject); + Rosen::WindowCreateParams windowCreateParams; + if (Rosen::ConvertWindowCreateParamsFromJsValue(env, windowJsObject, windowCreateParams)) { + startOptions.windowCreateParams_ = std::make_shared(windowCreateParams); + } } return true; diff --git a/interfaces/inner_api/ability_manager/include/start_options.h b/interfaces/inner_api/ability_manager/include/start_options.h index 78ad119b5d..9d1f684f60 100644 --- a/interfaces/inner_api/ability_manager/include/start_options.h +++ b/interfaces/inner_api/ability_manager/include/start_options.h @@ -24,8 +24,7 @@ namespace OHOS { namespace Rosen { -struct StartAnimationOptions; -struct StartAnimationSystemOptions; +struct WindowCreateParams; } namespace AbilityRuntime { @@ -61,8 +60,7 @@ public: std::shared_ptr startWindowOption = nullptr; std::vector supportWindowModes_; std::string requestId_; - std::shared_ptr animationOptions_ = nullptr; - std::shared_ptr animationSystemOptions_ = nullptr; + std::shared_ptr windowCreateParams_ = nullptr; StartOptions() = default; ~StartOptions() = default; diff --git a/services/abilitymgr/src/scene_board/ui_ability_lifecycle_manager.cpp b/services/abilitymgr/src/scene_board/ui_ability_lifecycle_manager.cpp index 03fe67c0d1..960bd0f800 100644 --- a/services/abilitymgr/src/scene_board/ui_ability_lifecycle_manager.cpp +++ b/services/abilitymgr/src/scene_board/ui_ability_lifecycle_manager.cpp @@ -1360,10 +1360,9 @@ int UIAbilityLifecycleManager::NotifySCBPendingActivation(sptr &ses return ERR_INVALID_VALUE; } TAG_LOGD(AAFwkTag::ABILITYMGR, "windowTop=%{public}d,windowHeight=%{public}d," - "windowWidth=%{public}d,windowMode=%{public}d,supportWindowModes.size=%{public}zu,specifiedFlag=%{public}s", + "windowMode=%{public}d,supportWindowModes.size=%{public}zu,specifiedFlag=%{public}s", (sessionInfo->want).GetIntParam(Want::PARAM_RESV_WINDOW_TOP, 0), (sessionInfo->want).GetIntParam(Want::PARAM_RESV_WINDOW_HEIGHT, 0), - (sessionInfo->want).GetIntParam(Want::PARAM_RESV_WINDOW_WIDTH, 0), (sessionInfo->want).GetIntParam(Want::PARAM_RESV_WINDOW_MODE, 0), (sessionInfo->supportWindowModes).size(), sessionInfo->specifiedFlag.c_str()); bool hasStartWindowOption = (sessionInfo->startWindowOption != nullptr); @@ -1371,8 +1370,7 @@ int UIAbilityLifecycleManager::NotifySCBPendingActivation(sptr &ses std::string backgroundColor = hasStartWindowOption ? sessionInfo->startWindowOption->startWindowBackgroundColor : ""; sessionInfo->hideStartWindow = abilityRequest.hideStartWindow; - sessionInfo->animationOptions = abilityRequest.startOptions.animationOptions_; - sessionInfo->animationSystemOptions = abilityRequest.startOptions.animationSystemOptions_; + sessionInfo->windowCreateParams = abilityRequest.startOptions.windowCreateParams_; TAG_LOGI(AAFwkTag::ABILITYMGR, "appCloneIndex:%{public}d, instanceKey:%{public}s, " "hasStartWindow:%{public}d, backgroundColor:%{public}s, hideStartWindow: %{public}d", (sessionInfo->want).GetIntParam(Want::PARAM_APP_CLONE_INDEX_KEY, 0), sessionInfo->instanceKey.c_str(), diff --git a/services/abilitymgr/src/start_options.cpp b/services/abilitymgr/src/start_options.cpp index 46c1eefc89..33e384b97e 100644 --- a/services/abilitymgr/src/start_options.cpp +++ b/services/abilitymgr/src/start_options.cpp @@ -51,8 +51,7 @@ StartOptions::StartOptions(const StartOptions &other) startWindowOption = other.startWindowOption; supportWindowModes_ = other.supportWindowModes_; requestId_ = other.requestId_; - animationOptions_ = other.animationOptions_; - animationSystemOptions_ = other.animationSystemOptions_; + windowCreateParams_ = other.windowCreateParams_; } StartOptions &StartOptions::operator=(const StartOptions &other) @@ -83,8 +82,7 @@ StartOptions &StartOptions::operator=(const StartOptions &other) startWindowOption = other.startWindowOption; supportWindowModes_ = other.supportWindowModes_; requestId_ = other.requestId_; - animationOptions_ = other.animationOptions_; - animationSystemOptions_ = other.animationSystemOptions_; + windowCreateParams_ = other.windowCreateParams_; } return *this; } @@ -123,8 +121,7 @@ bool StartOptions::ReadFromParcel(Parcel &parcel) supportWindowModes_.emplace_back(AppExecFwk::SupportWindowMode(parcel.ReadInt32())); } requestId_ = parcel.ReadString(); - animationOptions_.reset(parcel.ReadParcelable()); - animationSystemOptions_.reset(parcel.ReadParcelable()); + windowCreateParams_.reset(parcel.ReadParcelable()); return true; } @@ -190,13 +187,8 @@ bool StartOptions::Marshalling(Parcel &parcel) const bool StartOptions::MarshallingTwo(Parcel &parcel) const { - if (!parcel.WriteParcelable(animationOptions_.get())) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "Write animationOptions_ failed"); - return false; - } - - if (!parcel.WriteParcelable(animationSystemOptions_.get())) { - TAG_LOGE(AAFwkTag::ABILITYMGR, "Write animationSystemOptions failed"); + if (!parcel.WriteParcelable(windowCreateParams_.get())) { + TAG_LOGE(AAFwkTag::ABILITYMGR, "Write windowCreateParams_ failed"); return false; } return true;