From 648d1e765d82046bd78e7a7d522f210e386fe26c Mon Sep 17 00:00:00 2001 From: zhanghang Date: Wed, 25 Jun 2025 16:06:01 +0800 Subject: [PATCH] add badge resource fun Signed-off-by: zhanghang --- .../declarative_frontend/jsview/js_badge.cpp | 43 +++++++------------ 1 file changed, 15 insertions(+), 28 deletions(-) diff --git a/frameworks/bridge/declarative_frontend/jsview/js_badge.cpp b/frameworks/bridge/declarative_frontend/jsview/js_badge.cpp index d11486c923a..c8f80db7b9b 100644 --- a/frameworks/bridge/declarative_frontend/jsview/js_badge.cpp +++ b/frameworks/bridge/declarative_frontend/jsview/js_badge.cpp @@ -80,9 +80,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) if (SystemProperties::ConfigChangePerform()) { RefPtr resObj; bool state = ParseJsString(value, valueResult, resObj); - if (resObj) { - badgeParameters.resourceBadgeValueObject = resObj; - } else if (state) { + badgeParameters.resourceBadgeValueObject = resObj; + if (state) { badgeParameters.badgeValue = valueResult; } } else { @@ -156,9 +155,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr resObj; badgeParameters.badgeTextColorByUser = true; bool state = ParseJsColor(colorValue, colorVal, resObj); - if (resObj) { - badgeParameters.resourceColorObject = resObj; - } else if (state) { + badgeParameters.resourceColorObject = resObj; + if (state) { badgeParameters.badgeTextColor = colorVal; } else if (themeColors) { badgeParameters.badgeTextColor = themeColors->FontOnPrimary(); @@ -179,9 +177,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr resObj; badgeParameters.badgeFontSizeByUser = true; bool state = ParseJsDimensionNG(fontSizeValue, fontSize, DimensionUnit::FP, resObj); - if (resObj) { - badgeParameters.resourceFontSizeObject = resObj; - } else if (state && fontSize.IsNonNegative() && fontSize.Unit() != DimensionUnit::PERCENT) { + badgeParameters.resourceFontSizeObject = resObj; + if (state && fontSize.IsNonNegative() && fontSize.Unit() != DimensionUnit::PERCENT) { badgeParameters.badgeFontSize = fontSize; isDefaultFontSize = false; } else { @@ -206,9 +203,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr resObj; badgeParameters.badgeCircleSizeByUser = true; bool state = ParseJsDimensionNG(badgeSizeValue, badgeSize, DimensionUnit::FP, resObj); - if (resObj) { - badgeParameters.resourceBadgeSizeObject = resObj; - } else if (state && badgeSize.IsNonNegative() && badgeSize.Unit() != DimensionUnit::PERCENT) { + badgeParameters.resourceBadgeSizeObject = resObj; + if (state && badgeSize.IsNonNegative() && badgeSize.Unit() != DimensionUnit::PERCENT) { badgeParameters.badgeCircleSize = badgeSize; isDefaultBadgeSize = false; } else { @@ -231,10 +227,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr badgeColorResObj; badgeParameters.badgeColorByUser = false; bool state = ParseJsColor(badgeColorValue, color, badgeColorResObj); - if (badgeColorResObj) { - badgeParameters.resourceBadgeColorObject = badgeColorResObj; - badgeParameters.badgeColorByUser = true; - } else if (state) { + badgeParameters.resourceBadgeColorObject = badgeColorResObj; + if (state) { badgeParameters.badgeColor = color; badgeParameters.badgeColorByUser = true; } else if (themeColors) { @@ -253,9 +247,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr resObj; badgeParameters.badgeBorderWidthByUser = true; bool state = ParseJsDimensionVp(borderWidthValue, borderWidth, resObj); - if (resObj) { - badgeParameters.resourceBorderWidthObject = resObj; - } else if (state && borderWidth.IsNonNegative() && borderWidth.Unit() != DimensionUnit::PERCENT) { + badgeParameters.resourceBorderWidthObject = resObj; + if (state && borderWidth.IsNonNegative() && borderWidth.Unit() != DimensionUnit::PERCENT) { badgeParameters.badgeBorderWidth = borderWidth; } else { badgeParameters.badgeBorderWidth = badgeTheme->GetBadgeBorderWidth(); @@ -274,10 +267,8 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) RefPtr borderColorResObj; badgeParameters.badgeBorderColorByUser = false; bool state = ParseJsColor(borderColorValue, borderColor, borderColorResObj); - if (borderColorResObj) { - badgeParameters.resourceBorderColorObject = borderColorResObj; - badgeParameters.badgeBorderColorByUser = true; - } else if (state) { + badgeParameters.resourceBorderColorObject = borderColorResObj; + if (state) { badgeParameters.badgeBorderColor = borderColor; badgeParameters.badgeBorderColorByUser = true; } else { @@ -300,11 +291,7 @@ BadgeParameters JSBadge::CreateBadgeParameters(const JSCallbackInfo& info) } else if (SystemProperties::ConfigChangePerform()) { RefPtr resObj; ParseJsString(fontWeightValue, fontWeight, resObj); - if (resObj) { - badgeParameters.resourceFontWeightObject = resObj; - } else { - badgeParameters.badgeFontWeight = ConvertStrToFontWeight(fontWeight); - } + badgeParameters.resourceFontWeightObject = resObj; } else { if (!ParseJsString(fontWeightValue, fontWeight)) { badgeParameters.badgeFontWeight = FontWeight::NORMAL; -- Gitee