From: Fang Xiaohui Date: Tue, 29 Mar 2022 07:54:36 +0000 (+0800) Subject: Revert "[NUI][XamlBuild] Fix Xaml issues reported by VD" X-Git-Tag: accepted/tizen/unified/20231205.024657~1086 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=46a4d8b3e0d0caa9088d78d77f1025f3ddadecfd;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git Revert "[NUI][XamlBuild] Fix Xaml issues reported by VD" This reverts commit cf1af463fc31a1e07d3abc26511a02c071f7e8cd. --- diff --git a/pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll b/pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll deleted file mode 100644 index cd0054a..0000000 Binary files a/pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll and /dev/null differ diff --git a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlContext.cs b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlContext.cs index 7426f3b..2c4de0c 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlContext.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlContext.cs @@ -622,11 +622,7 @@ namespace Tizen.NUI.EXaml.Build.Tasks //Fang: How to deal the Enum string ret = ""; - if (System.Type.Missing == valueObject) - { - ret += "yy "; - } - else if (null == valueObject) + if (null == valueObject) { ret += "zz "; } diff --git a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlCreateObjectVisitor.cs b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlCreateObjectVisitor.cs index e50364f..9d76d01 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlCreateObjectVisitor.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlCreateObjectVisitor.cs @@ -128,7 +128,7 @@ namespace Tizen.NUI.EXaml.Build.Tasks VariableDefinition vardef = new VariableDefinition(typeref); Context.Variables[node] = vardef; - var argumentList = GetCtorXArguments(node, factoryCtorInfo.Parameters.Count, true); + var argumentList = GetCtorXArguments(node, factoryCtorInfo.Parameters.Count); Context.Values[node] = new EXamlCreateObject(Context, null, typedef, argumentList.ToArray()); return; } @@ -164,7 +164,7 @@ namespace Tizen.NUI.EXaml.Build.Tasks VariableDefinition vardef = new VariableDefinition(typeref); Context.Variables[node] = vardef; - var argumentList = GetCtorXArguments(node, factoryMethodInfo.Parameters.Count, false); + var argumentList = GetCtorXArguments(node, factoryMethodInfo.Parameters.Count); Context.Values[node] = new EXamlCreateObject(Context, null, typedef, factoryMethodInfo, argumentList?.ToArray()); return; } @@ -454,7 +454,7 @@ namespace Tizen.NUI.EXaml.Build.Tasks return true; } - List GetCtorXArguments(ElementNode enode, int paramsCount, bool isConstructor) + List GetCtorXArguments(ElementNode enode, int paramsCount) { if (!enode.Properties.ContainsKey(XmlName.xArguments)) { @@ -483,12 +483,9 @@ namespace Tizen.NUI.EXaml.Build.Tasks argumentList.Add(Context.Values[arguments[i]]); } - if (!isConstructor) + for (int i = arguments.Count; i < paramsCount; i++) { - for (int i = arguments.Count; i < paramsCount; i++) - { - argumentList.Add(Type.Missing); - } + argumentList.Add(null); } return argumentList; diff --git a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlSetPropertiesVisitor.cs b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlSetPropertiesVisitor.cs index 5a990ac..737cb84 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlSetPropertiesVisitor.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/EXamlBuild/EXamlSetPropertiesVisitor.cs @@ -804,15 +804,7 @@ namespace Tizen.NUI.EXaml.Build.Tasks var realValue = context.Values[elementNode] as EXamlCreateObject; if (null != realValue) { - var valueTypeRef = realValue.GetType(); - if (valueTypeRef.InheritsFromOrImplements(propertyType)) - { - return true; - } - - var realTypeFromMarkupExtension = valueTypeRef.GetRealTypeIfIsMarkupExtension(); - - if (true == realTypeFromMarkupExtension?.InheritsFromOrImplements(propertyType)) + if (realValue.GetType().InheritsFromOrImplements(propertyType)) { return true; } diff --git a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/NodeILExtensions.cs b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/NodeILExtensions.cs index 0345b9e..7e46b32 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/NodeILExtensions.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/NodeILExtensions.cs @@ -434,12 +434,12 @@ namespace Tizen.NUI.Xaml.Build.Tasks else if (targetTypeRef.FullName == "System.UInt16") yield return Instruction.Create(OpCodes.Ldc_I4, unchecked((int)UInt16.Parse(str, CultureInfo.InvariantCulture))); else if (targetTypeRef.FullName == "System.UInt32") - yield return Instruction.Create(OpCodes.Ldc_I4, unchecked((int)UInt32.Parse(str, CultureInfo.InvariantCulture))); + yield return Instruction.Create(OpCodes.Ldc_I8, unchecked((uint)UInt32.Parse(str, CultureInfo.InvariantCulture))); else if (targetTypeRef.FullName == "System.UInt64") yield return Instruction.Create(OpCodes.Ldc_I8, unchecked((long)UInt64.Parse(str, CultureInfo.InvariantCulture))); else if (targetTypeRef.FullName == "System.Single") { - if (null != GetDPValueSubFix(str)) + if (str.EndsWith("dp") || str.EndsWith("px")) { var insOfDPValue = GetDPValue(module, node, targetTypeRef, str); diff --git a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/TypeReferenceExtensions.cs b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/TypeReferenceExtensions.cs index 914afc4..4ff87b2 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/TypeReferenceExtensions.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/TypeReferenceExtensions.cs @@ -290,34 +290,6 @@ namespace Tizen.NUI.Xaml.Build.Tasks return typeRef.InheritsFromOrImplements(baseClass); } - public static TypeReference GetRealTypeIfIsMarkupExtension(this TypeReference typeRef) - { - TypeReference ret = null; - - var typeDef = typeRef.ResolveCached(); - - foreach (var @interface in typeDef.Interfaces) - { - if (@interface.InterfaceType is GenericInstanceType instanceType) - { - if ("Tizen.NUI.Xaml.IMarkupExtension`1" == instanceType.ElementType.FullName - && - 1 == instanceType.GenericArguments.Count) - { - ret = instanceType.GenericArguments[0]; - break; - } - } - } - - if (null == ret) - { - ret = typeDef.BaseType?.GetRealTypeIfIsMarkupExtension(); - } - - return ret; - } - static CustomAttribute GetCustomAttribute(this TypeReference typeRef, TypeReference attribute) { var typeDef = typeRef.ResolveCached(); diff --git a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/XamlTask.cs b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/XamlTask.cs index 7c9498b..dcb2dc5 100755 --- a/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/XamlTask.cs +++ b/src/Tizen.NUI.XamlBuild/src/public/XamlBuild/XamlTask.cs @@ -25,6 +25,11 @@ using Microsoft.Build.Utilities; using Mono.Cecil; +using Tizen.NUI.Xaml; +using Mono.Cecil.Cil; +using Mono.Cecil.Pdb; +using Mono.Cecil.Mdb; + namespace Tizen.NUI.Xaml.Build.Tasks { [LoadInSeparateAppDomain] diff --git a/src/Tizen.NUI/src/internal/EXaml/Action/GetValueAction.cs b/src/Tizen.NUI/src/internal/EXaml/Action/GetValueAction.cs index f22cd94..b786600 100755 --- a/src/Tizen.NUI/src/internal/EXaml/Action/GetValueAction.cs +++ b/src/Tizen.NUI/src/internal/EXaml/Action/GetValueAction.cs @@ -167,10 +167,6 @@ namespace Tizen.NUI.EXaml Value = valueString[0]; break; - case 'y': - Value = Type.Missing; - break; - case 'z': Value = null; break; diff --git a/src/Tizen.NUI/src/internal/EXaml/Operation/CreateObject.cs b/src/Tizen.NUI/src/internal/EXaml/Operation/CreateObject.cs index a5477eb..ff0e890 100755 --- a/src/Tizen.NUI/src/internal/EXaml/Operation/CreateObject.cs +++ b/src/Tizen.NUI/src/internal/EXaml/Operation/CreateObject.cs @@ -16,7 +16,6 @@ */ using System; using System.Collections.Generic; -using System.Globalization; using System.Reflection; using System.Text; using Tizen.NUI.BaseComponents; @@ -84,7 +83,7 @@ namespace Tizen.NUI.EXaml if (null == xFactoryMethod) { - obj = Activator.CreateInstance(type, BindingFlags.CreateInstance | BindingFlags.Public | BindingFlags.Instance | BindingFlags.OptionalParamBinding, null, paramList.ToArray(), CultureInfo.CurrentCulture); + obj = Activator.CreateInstance(type, paramList.ToArray()); } else {