Release 4.0.0-preview1-00258 submit/tizen/20170927.150029
authorDotnetBuild <dotnetbuild.tizen@gmail.com>
Wed, 27 Sep 2017 15:00:28 +0000 (00:00 +0900)
committerDotnetBuild <dotnetbuild.tizen@gmail.com>
Wed, 27 Sep 2017 15:00:28 +0000 (00:00 +0900)
19 files changed:
packaging/csapi-tizenfx.spec
pkg/build/tizen40/Tizen.NET.targets
src/ElmSharp/ElmSharp/Image.cs [changed mode: 0755->0644]
src/Tizen.Applications.PackageManager/Tizen.Applications/PackageManager.cs
src/Tizen.CallManager/Interop/Interop.CallManager.cs
src/Tizen.CallManager/Interop/Interop.GsList.cs [new file with mode: 0755]
src/Tizen.CallManager/Tizen.CallManager/CmClientHandle.cs
src/Tizen.CallManager/Tizen.CallManager/CmUtility.cs
src/Tizen.Multimedia.Remoting/ScreenMirroring/ScreenMirroring.cs
src/Tizen.Multimedia/MediaView/MediaView.cs
src/Tizen.Network.Mtp/Interop/Interop.Libraries.cs
src/Tizen.Network.Mtp/Tizen.Network.Mtp/MtpStorage.cs
src/Tizen.Security.TEEC/Interop/Interop.Libteec.cs
src/Tizen.Security.TEEC/Interop/Interop.Types.cs
src/Tizen.Security.TEEC/Tizen.Security.TEEC/Libteec.cs
src/Tizen.Tapi/Tizen.Tapi/SatStructs.cs
src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/DisplayLanaguageChangedEventArgs.cs
src/Tizen.Uix.InputMethod/Tizen.Uix.InputMethod/InputMethodEditor.cs
src/Tizen.Uix.InputMethodManager/Tizen.Uix.InputMethodManager/InputMethodManager.cs

index 07fec1a..a2e9a52 100644 (file)
@@ -9,7 +9,7 @@
 
 Name:       csapi-tizenfx
 Summary:    Assemblies of Tizen .NET
-Version:    4.0.0.253
+Version:    4.0.0.258
 Release:    1
 Group:      Development/Libraries
 License:    Apache-2.0
@@ -144,7 +144,7 @@ rm -fr %{_tizenfx_bin_path}
 export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
 ./build.sh --full
 ./build.sh --dummy
-./build.sh --pack 4.0.0-preview1-00253
+./build.sh --pack 4.0.0-preview1-00258
 
 %install
 mkdir -p %{buildroot}%{DOTNET_ASSEMBLY_PATH}
index 76995dc..24a95b6 100644 (file)
@@ -43,7 +43,7 @@
   -->
   <PropertyGroup Condition="'$(OutputType)' == 'Exe'">
     <NoWarn>$(NoWarn);NU1701</NoWarn>
-    <AssetTargetFallback>netcoreapp2.0</AssetTargetFallback>
+    <AssetTargetFallback>$(AssetTargetFallback);netcoreapp2.0</AssetTargetFallback>
   </PropertyGroup>
 
   <ItemGroup Condition="'$(OutputType)' == 'Exe'">
old mode 100755 (executable)
new mode 100644 (file)
index 3f1bc1c..a6a499d
@@ -345,7 +345,10 @@ namespace ElmSharp
                 {
                     IntPtr evasObj = Interop.Elementary.elm_image_object_get(RealHandle);
                     if (evasObj != IntPtr.Zero)
+                    {
                         _imageObject = new EvasImage(this, evasObj);
+                        _imageObject.Deleted += (s, e) => _imageObject = null;
+                    }
                 }
                 return _imageObject;
             }
index dcabacc..d811841 100755 (executable)
@@ -386,6 +386,7 @@ namespace Tizen.Applications
         /// Installs the package located at the given path.
         /// </summary>
         /// <param name="packagePath">Absolute path for the package to be installed.</param>
+        /// <param name="installMode">Optional parameter to indicate special installation mode.</param>
         /// <returns>Returns true if the installation request is successful, otherwise false.</returns>
         /// <remarks>
         /// The 'true' means that the request for installation is successful.
index f4d3c4b..393efa5 100755 (executable)
@@ -29,7 +29,7 @@ internal static partial class Interop
     internal static partial class CallManager
     {
         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
-        internal delegate void CallStatusChangedCallback(CallStatus callStatus, string number, IntPtr userData);
+        internal delegate void CallStatusChangedCallback(CallStatus callStatus, IntPtr number, IntPtr userData);
         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
         internal delegate void CallMuteStatusChangedCallback(CallMuteStatus muteStatus, IntPtr userData);
         [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
diff --git a/src/Tizen.CallManager/Interop/Interop.GsList.cs b/src/Tizen.CallManager/Interop/Interop.GsList.cs
new file mode 100755 (executable)
index 0000000..661b514
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+using System;
+using System.Runtime.InteropServices;
+
+/// <summary>
+/// Interop class for GSList
+/// </summary>
+internal static partial class Interop
+{
+    internal static partial class GsList
+    {
+        [DllImport(Libraries.Glib, EntryPoint = "g_slist_length")]
+        internal static extern int GetLength(IntPtr list);
+        [DllImport(Libraries.Glib, EntryPoint = "g_slist_nth_data")]
+        internal static extern IntPtr GetDataByIndex(IntPtr list, int index);
+    }
+}
index c41dc82..38b4292 100755 (executable)
@@ -17,6 +17,7 @@
 using System;
 using System.Collections.Generic;
 using System.Runtime.InteropServices;
+using System.Linq;
 
 namespace Tizen.CallManager
 {
@@ -251,9 +252,9 @@ namespace Tizen.CallManager
 
         private void RegisterCallStatusChangedEvent()
         {
-            _callStatusChangedCb = (CallStatus status, string number, IntPtr userData) =>
+            _callStatusChangedCb = (CallStatus status, IntPtr number, IntPtr userData) =>
             {
-                _callStatusChanged?.Invoke(null, new CallStatusChangedEventArgs(status, number));
+                _callStatusChanged?.Invoke(null, new CallStatusChangedEventArgs(status, Marshal.PtrToStringAnsi(number)));
             };
             int ret = Interop.CallManager.SetCallStatusCallback(_handle, _callStatusChangedCb, IntPtr.Zero);
             if (ret != (int)CmError.None)
@@ -301,7 +302,7 @@ namespace Tizen.CallManager
         {
             _callEventCb = (CallEvent callEvent, IntPtr eventData, IntPtr userData) =>
             {
-                _callEvent?.Invoke(null, new CallEventEventArgs(callEvent, CmUtility.GetCallEventData(eventData)));
+                _callEvent?.Invoke(null, new CallEventEventArgs(callEvent, CmUtility.GetCallEventData(callEvent, eventData)));
             };
             int ret = Interop.CallManager.SetCallEventCb(_handle, _callEventCb, IntPtr.Zero);
             if (ret != (int)CmError.None)
@@ -506,20 +507,22 @@ namespace Tizen.CallManager
                     return null;
                 }
 
+                int length = Interop.GsList.GetLength(list);
+                if (length == 0)
+                {
+                    Log.Debug(CmUtility.LogTag, "Call list is empty");
+                    return Enumerable.Empty<CallData>();
+                }
+
                 List<CallData> callList = new List<CallData>();
-                int offset = 0;
-                IntPtr data = Marshal.ReadIntPtr(list, offset);
-                if (data != IntPtr.Zero)
+                IntPtr callData = IntPtr.Zero;
+                for (int index = 0; index < length; index++)
                 {
-                    do
+                    callData = Interop.GsList.GetDataByIndex(list, index);
+                    if (callData != IntPtr.Zero)
                     {
-                        offset += Marshal.SizeOf(data);
-                        callList.Add(CmUtility.GetCallData(data));
-                        Interop.CallManager.FreeCallData(data);
-                        data = IntPtr.Zero;
+                        callList.Add(CmUtility.GetCallData(callData));
                     }
-
-                    while ((data = Marshal.ReadIntPtr(list, offset)) != IntPtr.Zero);
                 }
 
                 return callList;
@@ -540,20 +543,21 @@ namespace Tizen.CallManager
                     return null;
                 }
 
+                int length = Interop.GsList.GetLength(list);
+                if (length == 0)
+                {
+                    Log.Debug(CmUtility.LogTag, "Conf call list is empty");
+                    return Enumerable.Empty<ConferenceCallData>();
+                }
                 List<ConferenceCallData> confList = new List<ConferenceCallData>();
-                int offset = 0;
-                IntPtr data = Marshal.ReadIntPtr(list, offset);
-                if (data != IntPtr.Zero)
+                IntPtr confData = IntPtr.Zero;
+                for (int index = 0; index < length; index++)
                 {
-                    do
+                    confData = Interop.GsList.GetDataByIndex(list, index);
+                    if (confData != IntPtr.Zero)
                     {
-                        offset += Marshal.SizeOf(data);
-                        confList.Add(CmUtility.GetConfCallData(data));
-                        Interop.CallManager.FreeConfCallData(data);
-                        data = IntPtr.Zero;
+                        confList.Add(CmUtility.GetConfCallData(confData));
                     }
-
-                    while ((data = Marshal.ReadIntPtr(list, offset)) != IntPtr.Zero);
                 }
 
                 return confList;
index 91d2c49..e37be1a 100755 (executable)
@@ -38,6 +38,11 @@ namespace Tizen.CallManager
 
         internal static CallData GetCallData(IntPtr handle)
         {
+            if (handle == IntPtr.Zero)
+            {
+                return null;
+            }
+
             CallData data = new CallData();
             int ret = Interop.CallManager.GetCallId(handle, out uint id);
             if (ret != (int)CmError.None)
@@ -264,6 +269,11 @@ namespace Tizen.CallManager
 
         internal static ConferenceCallData GetConfCallData(IntPtr handle)
         {
+            if (handle == IntPtr.Zero)
+            {
+                return null;
+            }
+
             ConferenceCallData confData = new ConferenceCallData();
             int ret = Interop.CallManager.GetConfCallId(handle, out uint callId);
             if (ret != (int)CmError.None)
@@ -312,73 +322,115 @@ namespace Tizen.CallManager
             return confData;
         }
 
-        internal static CallEventData GetCallEventData(IntPtr handle)
+        internal static CallEventData GetCallEventData(CallEvent callEvent, IntPtr handle)
         {
-            CallEventData eventData = new CallEventData();
-            int ret = Interop.CallManager.GetEventDataCallId(handle, out uint id);
-            if (ret != (int)CmError.None)
+            if (handle == IntPtr.Zero)
             {
-                Log.Error(CmUtility.LogTag, "Failed to get event data call ID, Error: " + (CmError)ret);
+                return null;
             }
 
-            else
-            {
-                eventData.EventId = id;
-            }
+            CallEventData eventData = new CallEventData();
 
-            ret = Interop.CallManager.GetSimSlot(handle, out MultiSimSlot simSlot);
-            if (ret != (int)CmError.None)
-            {
-                Log.Error(CmUtility.LogTag, "Failed to get event data sim slot, Error: " + (CmError)ret);
-            }
+            if (callEvent == CallEvent.Active)
+            {
+                int ret = Interop.CallManager.GetEventDataCallId(handle, out uint id);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get event data call ID, Error: " + (CmError)ret);
+                }
+
+                else
+                {
+                    eventData.EventId = id;
+                }
+
+                ret = Interop.CallManager.GetSimSlot(handle, out MultiSimSlot simSlot);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get event data sim slot, Error: " + (CmError)ret);
+                }
+
+                else
+                {
+                    eventData.Slot = simSlot;
+                }
+
+                ret = Interop.CallManager.GetIncomingCallData(handle, out IntPtr incoming);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get incoming call data, Error: " + (CmError)ret);
+                }
+
+                else
+                {
+                    CallData incomingData = GetCallData(incoming);
+                    if (incomingData != null)
+                    {
+                        ret = Interop.CallManager.FreeCallData(incoming);
+                        if (ret != (int)CmError.None)
+                        {
+                            Log.Error(CmUtility.LogTag, "Failed to free incoming call data, Error: " + (CmError)ret);
+                        }
+                    }
 
-            else
-            {
-                eventData.Slot = simSlot;
-            }
+                    eventData.Incoming = incomingData;
+                }
 
-            ret = Interop.CallManager.GetEndCause(handle, out CallEndCause endCause);
-            if (ret != (int)CmError.None)
-            {
-                Log.Error(CmUtility.LogTag, "Failed to get end cause, Error: " + (CmError)ret);
-            }
+                ret = Interop.CallManager.GetActiveCall(handle, out IntPtr active);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get active call data, Error: " + (CmError)ret);
+                }
 
-            else
-            {
-                eventData.Cause = endCause;
-            }
+                else
+                {
+                    CallData activeData = GetCallData(active);
+                    if (activeData != null)
+                    {
+                        ret = Interop.CallManager.FreeCallData(active);
+                        if (ret != (int)CmError.None)
+                        {
+                            Log.Error(CmUtility.LogTag, "Failed to free active call data, Error: " + (CmError)ret);
+                        }
+                    }
 
-            ret = Interop.CallManager.GetIncomingCallData(handle, out IntPtr incoming);
-            if (ret != (int)CmError.None)
-            {
-                Log.Error(CmUtility.LogTag, "Failed to get incoming call data, Error: " + (CmError)ret);
-            }
+                    eventData.Active = activeData;
+                }
 
-            else
-            {
-                eventData.Incoming = GetCallData(incoming);
-            }
+                ret = Interop.CallManager.GetHeldCall(handle, out IntPtr held);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get held call data, Error: " + (CmError)ret);
+                }
 
-            ret = Interop.CallManager.GetActiveCall(handle, out IntPtr active);
-            if (ret != (int)CmError.None)
-            {
-                Log.Error(CmUtility.LogTag, "Failed to get active call data, Error: " + (CmError)ret);
-            }
+                else
+                {
+                    CallData heldData = GetCallData(held);
+                    if (heldData != null)
+                    {
+                        ret = Interop.CallManager.FreeCallData(held);
+                        if (ret != (int)CmError.None)
+                        {
+                            Log.Error(CmUtility.LogTag, "Failed to free held call data, Error: " + (CmError)ret);
+                        }
+                    }
 
-            else
-            {
-                eventData.Active = GetCallData(active);
+                    eventData.Held = heldData;
+                }
             }
 
-            ret = Interop.CallManager.GetHeldCall(handle, out IntPtr held);
-            if (ret != (int)CmError.None)
+            else if (callEvent == CallEvent.Idle)
             {
-                Log.Error(CmUtility.LogTag, "Failed to get held call data, Error: " + (CmError)ret);
-            }
+                int ret = Interop.CallManager.GetEndCause(handle, out CallEndCause endCause);
+                if (ret != (int)CmError.None)
+                {
+                    Log.Error(CmUtility.LogTag, "Failed to get end cause, Error: " + (CmError)ret);
+                }
 
-            else
-            {
-                eventData.Held = GetCallData(held);
+                else
+                {
+                    eventData.Cause = endCause;
+                }
             }
 
             return eventData;
index 1a276f4..6f08ffb 100755 (executable)
@@ -58,7 +58,6 @@ namespace Tizen.Multimedia.Remoting
         /// </summary>
         /// <feature>http://tizen.org/feature/network.wifi.direct.display</feature>
         /// <exception cref="NotSupportedException">The feature is not supported.</exception>
-
         public ScreenMirroring()
         {
             if (IsSupported() == false)
index f064a72..a2cdd58 100755 (executable)
@@ -30,7 +30,7 @@ namespace Tizen.Multimedia
     /// <code>
     /// Tizen.Xamarin.Forms.Extension.MediaView mediaView = ...
     /// ...
-    /// var display = new Display((Tizen.Multimedia.MediaView)MediaView.NativeView);
+    /// var display = new Display((Tizen.Multimedia.MediaView)mediaView.NativeView);
     /// </code>
     /// </example>
     public class MediaView : EvasObject
index ae75b1a..0d16b44 100644 (file)
@@ -18,7 +18,7 @@ internal static partial class Interop
 {
     internal static partial class Libraries
     {
-        public const string Mtp = "libcapi-network-mtp.so.0";
+        public const string Mtp = "libcapi-network-mtp.so.1";
         public const string Glib = "libglib-2.0.so.0";
         public const string Libc = "libc.so.6";
     }
index 1e44f1f..c6e38b4 100644 (file)
@@ -191,7 +191,7 @@ namespace Tizen.Network.Mtp
         /// <summary>
         /// Gets the list of objects.
         /// </summary>
-        /// <param name="parentHandle">The parent object handle. If parentHandle is 0, it means "root folder" of mtp storage.</param>
+        /// <param name="parentObject">The parent object handle. If parentHandle is 0, it means "root folder" of mtp storage.</param>
         /// <param name="fileType">The file type what you want.</param>
         /// <returns>List of objects.</returns>
         /// <feature>http://tizen.org/feature/network.mtp</feature>
index 9680956..3700b90 100644 (file)
@@ -91,7 +91,7 @@ internal static partial class Interop
         /// </summary>
         //TEEC_Result TEEC_OpenSession(TEEC_Context *context, TEEC_Session *session, const TEEC_UUID *destination, uint connectionMethod, const void *connectionData, TEEC_Operation *operation, uint *returnOrigin);
         [DllImport(Libraries.Libteec, EntryPoint = "TEEC_OpenSession", CallingConvention = CallingConvention.Cdecl)]
-        static public extern int OpenSession(ref TEEC_Context context, ref TEEC_Session session, TEEC_UUID destination, uint connectionMethod, byte[] connectionData, ref TEEC_Operation operation, out uint returnOrigin);
+        static public extern int OpenSession(ref TEEC_Context context, ref TEEC_Session session, ref TEEC_UUID destination, uint connectionMethod, byte[] connectionData, ref TEEC_Operation operation, out uint returnOrigin);
 
         /// <summary>
         /// This function closes a session which has been opened with a trusted application.
index 75955d1..86432d3 100644 (file)
@@ -16,6 +16,8 @@
 
 
 using System;
+using System.IO;
+using System.Text;
 using System.Runtime.InteropServices;
 
 internal static partial class Interop
@@ -40,6 +42,18 @@ internal static partial class Interop
         public UInt16 timeHiAndVersion;
         [MarshalAs(UnmanagedType.ByValArray, SizeConst = 8)]
         public byte[] clockSeqAndNode;
+
+        internal static TEEC_UUID ToTeecUuid(Guid guid)
+        {
+            TEEC_UUID uuid = new TEEC_UUID();
+            byte[] bin = guid.ToByteArray();
+            uuid.timeLow = BitConverter.ToUInt32(bin, 0);
+            uuid.timeMid = BitConverter.ToUInt16(bin, 4);
+            uuid.timeHiAndVersion = BitConverter.ToUInt16(bin, 6);
+            uuid.clockSeqAndNode = new byte[8];
+            Array.Copy(bin, 8, uuid.clockSeqAndNode, 0, 8);
+            return uuid;
+        }
     }
 
     [StructLayout(LayoutKind.Sequential)]
index f05cb74..8b39e79 100644 (file)
@@ -16,6 +16,7 @@
 
 using System;
 using System.Collections.Generic;
+using System.Runtime.InteropServices;
 using System.Threading;
 using System.Threading.Tasks;
 
@@ -137,7 +138,7 @@ namespace Tizen.Security.TEEC
         public void SetData(byte[] data, int dstOffs)
         {
             if ((shm.flags & (uint)SharedMemoryFlags.Output) == 0) throw new InvalidOperationException("No write access");
-            //TODO copy data into shared memory starting at given offset
+            Marshal.Copy(data, 0, shm.buffer + dstOffs, data.Length);
         }
         /// <summary>
         /// This function makes a copy and is designed for convenient operations on small buffers.
@@ -150,7 +151,7 @@ namespace Tizen.Security.TEEC
         public void GetData(byte[] data, int srcOffs)
         {
             if ((shm.flags & (uint)SharedMemoryFlags.Input) == 0) throw new InvalidOperationException("No read access");
-            //TODO copy data from shared memory starting at given offset
+            Marshal.Copy(shm.buffer + srcOffs, data, 0, data.Length);
         }
     };
 
@@ -310,11 +311,11 @@ namespace Tizen.Security.TEEC
 
         internal void Open(Guid destination, uint loginMethod, byte[] connectionData, Parameter[] paramlist)
         {
-            Interop.TEEC_UUID uuid = new Interop.TEEC_UUID();
+            Interop.TEEC_UUID uuid = Interop.TEEC_UUID.ToTeecUuid(destination);
             Interop.TEEC_Operation op = new Interop.TEEC_Operation();
             uint ro;
 
-            int ret = Interop.Libteec.OpenSession(ref context, ref session, uuid, loginMethod, connectionData, ref op, out ro);
+            int ret = Interop.Libteec.OpenSession(ref context, ref session, ref uuid, loginMethod, connectionData, ref op, out ro);
             //MAYBE map origin of return code to specyfic Exception
             Interop.CheckNThrowException(ret, string.Format("OpenSession('{0}')", destination));
         }
@@ -414,6 +415,8 @@ namespace Tizen.Security.TEEC
         public Context(string name)
         {
             context = new Interop.TEEC_Context();
+            if (name != null && name.Length == 0)
+                name = null;
             int ret = Interop.Libteec.InitializeContext(name, ref context);
             Interop.CheckNThrowException(ret, string.Format("InititalizeContext('{0}')", name));
         }
index cac7b82..99c6e07 100755 (executable)
@@ -344,7 +344,9 @@ namespace Tizen.Tapi
         {
             SatTextInfo textInfo = new SatTextInfo();
             textInfo.Length = textStruct.Length;
-            Marshal.Copy(textStruct.DataString, textInfo.Data, 0, 501);
+            byte[] data = new byte[textStruct.Length];
+            Marshal.Copy(textStruct.DataString, data, 0, textInfo.Length);
+            textInfo.Data = data;
             return textInfo;
         }
 
index b0712f3..9f4dd8c 100755 (executable)
 namespace Tizen.Uix.InputMethod
 {
     /// <summary>
-    /// This Class contains data related to DisplayLanaguageChanged Event
+    /// This Class contains data related to DisplayLanguageChanged Event
     /// </summary>
-    public class DisplayLanaguageChangedEventArgs
+    public class DisplayLanguageChangedEventArgs
     {
-        internal DisplayLanaguageChangedEventArgs(string langauage)
+        internal DisplayLanguageChangedEventArgs(string langauage)
         {
             Langauage = langauage;
         }
index dc48ce4..e3e5534 100755 (executable)
@@ -979,8 +979,8 @@ namespace Tizen.Uix.InputMethod
         private static event EventHandler<ReturnKeyStateSetEventArgs> _returnKeyStateSet;
         private static ImeReturnKeyStateSetCb _imeReturnKeyStateSetDelegate;
         private static ImeProcessKeyEventCb _imeProcessKeyDelegate;
-        private static event EventHandler<DisplayLanaguageChangedEventArgs> _displayLanaguageChanged;
-        private static ImeDisplayLanguageChangedCb _imeDisplayLanaguageChangedDelegate;
+        private static event EventHandler<DisplayLanguageChangedEventArgs> _displayLanguageChanged;
+        private static ImeDisplayLanguageChangedCb _imeDisplayLanguageChangedDelegate;
         private static event EventHandler<RotationChangedEventArgs> _rotationDegreeChanged;
         private static ImeRotationChangedCb _imeRotationChangedDelegate;
         private static event EventHandler<AccessibilityStateChangedEventArgs> _accessibilityStateChanged;
@@ -1437,27 +1437,27 @@ namespace Tizen.Uix.InputMethod
         }
 
         /// <summary>
-        /// Called when the system display language is changed.
+        /// Called when the system display Language is changed.
         /// </summary>
-        public static event EventHandler<DisplayLanaguageChangedEventArgs> DisplayLanaguageChanged
+        public static event EventHandler<DisplayLanguageChangedEventArgs> DisplayLanguageChanged
         {
             add
             {
                 lock (thisLock)
                 {
-                    _imeDisplayLanaguageChangedDelegate = (IntPtr language, IntPtr userData) =>
+                    _imeDisplayLanguageChangedDelegate = (IntPtr language, IntPtr userData) =>
                     {
-                        DisplayLanaguageChangedEventArgs args = new DisplayLanaguageChangedEventArgs(Marshal.PtrToStringAnsi(language));
-                        _displayLanaguageChanged?.Invoke(null, args);
+                        DisplayLanguageChangedEventArgs args = new DisplayLanguageChangedEventArgs(Marshal.PtrToStringAnsi(language));
+                        _displayLanguageChanged?.Invoke(null, args);
                     };
-                    ErrorCode error = ImeEventSetDisplayLanguageChangedCb(_imeDisplayLanaguageChangedDelegate, IntPtr.Zero);
+                    ErrorCode error = ImeEventSetDisplayLanguageChangedCb(_imeDisplayLanguageChangedDelegate, IntPtr.Zero);
                     if (error != ErrorCode.None)
                     {
-                        Log.Error(LogTag, "Add DisplayLanaguageChanged Failed with error " + error);
+                        Log.Error(LogTag, "Add DisplayLanguageChanged Failed with error " + error);
                     }
                     else
                     {
-                        _displayLanaguageChanged += value;
+                        _displayLanguageChanged += value;
                     }
                 }
             }
@@ -1465,7 +1465,7 @@ namespace Tizen.Uix.InputMethod
             {
                 lock (thisLock)
                 {
-                    _displayLanaguageChanged -= value;
+                    _displayLanguageChanged -= value;
                 }
             }
         }
index f260b59..28489d4 100755 (executable)
@@ -34,7 +34,7 @@ namespace Tizen.Uix.InputMethodManager
         /// <privilege>
         /// http://tizen.org/privilege/imemanager
         /// </privilege>
-        /// <exception cref="InvalidOperationException">
+        /// <exception cref="T:System.InvalidOperationException">
         /// This exception can occur if:
         /// 1) The application does not have the privilege to call this function.
         /// 2) Operation failed.
@@ -56,7 +56,7 @@ namespace Tizen.Uix.InputMethodManager
         /// <privilege>
         /// http://tizen.org/privilege/imemanager
         /// </privilege>
-        /// <exception cref="InvalidOperationException">
+        /// <exception cref="T:System.InvalidOperationException">
         /// This exception can occur if:
         /// 1) The application does not have the privilege to call this function.
         /// 2) Operation failed.
@@ -80,10 +80,10 @@ namespace Tizen.Uix.InputMethodManager
         /// </privilege>
         /// <param name="appId">The application ID of the IME.</param>
         /// <returns>The On (enabled) and Off (disabled) state of the IME.</returns>
-        /// <exception cref="ArgumentException">
+        /// <exception cref="T:System.ArgumentException">
         /// This exception can occur if an invalid parameter is provided.
         /// </exception>
-        /// <exception cref="InvalidOperationException">
+        /// <exception cref="T:System.InvalidOperationException">
         /// This exception can occur if:
         /// 1) The application does not have the privilege to call this function.
         /// 2) Operation failed.
@@ -110,7 +110,7 @@ namespace Tizen.Uix.InputMethodManager
         /// <returns>
         /// The current activated (selected) IME.
         /// </returns>
-        /// <exception cref="InvalidOperationException">
+        /// <exception cref="T:System.InvalidOperationException">
         /// This exception can occur if:
         /// 1) The application does not have the privilege to call this function.
         /// 2) Operation failed.
@@ -137,7 +137,7 @@ namespace Tizen.Uix.InputMethodManager
         /// <returns>
         /// The number of enabled IMEs.
         /// </returns>
-        /// <exception cref="InvalidOperationException">
+        /// <exception cref="T:System.InvalidOperationException">
         /// This exception can occur if:
         /// 1) The application does not have the privilege to call this function.
         /// 2) Operation failed.