From f4855d3280d44e3f2bf71b99a081fe841c3b31b7 Mon Sep 17 00:00:00 2001 From: baoyang Date: Tue, 20 Jan 2026 20:26:40 +0800 Subject: [PATCH] fix AdjustSecCompRect Signed-off-by: baoyang --- .../sa/sa_main/sec_comp_info_helper.cpp | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/services/security_component_service/sa/sa_main/sec_comp_info_helper.cpp b/services/security_component_service/sa/sa_main/sec_comp_info_helper.cpp index 87a73a4..02bb3e9 100644 --- a/services/security_component_service/sa/sa_main/sec_comp_info_helper.cpp +++ b/services/security_component_service/sa/sa_main/sec_comp_info_helper.cpp @@ -57,21 +57,14 @@ const static std::set RELEASE_ATTRIBUTE_LIST = { void SecCompInfoHelper::AdjustSecCompRect(SecCompBase* comp, const Scales scales, bool isCompatScaleMode, SecCompRect& windowRect) { - if (!isCompatScaleMode) { - // window scales towards the top-left corner - comp->windowRect_.width_ *= scales.scaleX; - comp->windowRect_.height_ *= scales.scaleY; - } else { - // window scales towards the center - comp->windowRect_.x_ = windowRect.x_; - comp->windowRect_.y_ = windowRect.y_; - comp->windowRect_.width_ = windowRect.width_; - comp->windowRect_.height_ = windowRect.height_; - } + comp->rect_.x_ = windowRect.x_ + (comp->rect_.x_ - comp->windowRect_.x_) * scales.scaleX; + comp->rect_.y_ = windowRect.y_ + (comp->rect_.y_ - comp->windowRect_.y_) * scales.scaleY; comp->rect_.width_ *= scales.scaleX; comp->rect_.height_ *= scales.scaleY; - comp->rect_.x_ = comp->windowRect_.x_ + (comp->rect_.x_ - comp->windowRect_.x_) * scales.scaleX; - comp->rect_.y_ = comp->windowRect_.y_ + (comp->rect_.y_ - comp->windowRect_.y_) * scales.scaleY; + comp->windowRect_.x_ = windowRect.x_; + comp->windowRect_.y_ = windowRect.y_; + comp->windowRect_.width_ = windowRect.width_; + comp->windowRect_.height_ = windowRect.height_; if (scales.scaleX > scales.scaleY) { comp->scale_ = scales.scaleX; } else {