diff options
author | WonYoung Choi <wy80.choi@samsung.com> | 2016-10-28 13:56:53 +0900 |
---|---|---|
committer | WonYoung Choi <wy80.choi@samsung.com> | 2016-10-28 14:39:35 +0900 |
commit | 7f15b8af3b17f40a28a43a96448ac6b92f456ceb (patch) | |
tree | 7697563704a7600e1df515aa1d674ccc38babd17 | |
parent | 5bc682ee2438cce6ac7c7d7ef4b76a7b8569e0ef (diff) | |
download | elm-sharp-7f15b8af3b17f40a28a43a96448ac6b92f456ceb.tar.gz elm-sharp-7f15b8af3b17f40a28a43a96448ac6b92f456ceb.tar.bz2 elm-sharp-7f15b8af3b17f40a28a43a96448ac6b92f456ceb.zip |
Add EcoreMainLoop.IsMainThread to check the main loop thread
EcoreMainLoop.IsMainThread returns true when the main loop is running
in current thread.
Change-Id: I1a189c6fa233fc7be4f14b8a2c4091852ddbe172
-rw-r--r-- | ElmSharp/ElmSharp.Net45.csproj | 1 | ||||
-rw-r--r-- | ElmSharp/ElmSharp.csproj | 1 | ||||
-rw-r--r-- | ElmSharp/ElmSharp/EcoreMainloop.cs | 3 | ||||
-rw-r--r-- | ElmSharp/Interop/Interop.Eina.cs | 19 | ||||
-rw-r--r-- | packaging/elm-sharp.spec | 2 |
5 files changed, 24 insertions, 2 deletions
diff --git a/ElmSharp/ElmSharp.Net45.csproj b/ElmSharp/ElmSharp.Net45.csproj index 4da7745..6bc1650 100644 --- a/ElmSharp/ElmSharp.Net45.csproj +++ b/ElmSharp/ElmSharp.Net45.csproj @@ -113,6 +113,7 @@ <Compile Include="ElmSharp\Window.cs" /> <Compile Include="ElmSharp\WrapType.cs" /> <Compile Include="Interop\Interop.Ecore.cs" /> + <Compile Include="Interop\Interop.Eina.cs" /> <Compile Include="Interop\Interop.Elementary.Bg.cs" /> <Compile Include="Interop\Interop.Elementary.Box.cs" /> <Compile Include="Interop\Interop.Elementary.Button.cs" /> diff --git a/ElmSharp/ElmSharp.csproj b/ElmSharp/ElmSharp.csproj index 848a2e1..df61891 100644 --- a/ElmSharp/ElmSharp.csproj +++ b/ElmSharp/ElmSharp.csproj @@ -109,6 +109,7 @@ <Compile Include="ElmSharp\Widget.cs" /> <Compile Include="ElmSharp\Window.cs" /> <Compile Include="ElmSharp\WrapType.cs" /> + <Compile Include="Interop\Interop.Eina.cs" /> <Compile Include="Interop\Interop.Eo.cs" /> <Compile Include="Interop\Interop.Ecore.cs" /> <Compile Include="Interop\Interop.Elementary.Bg.cs" /> diff --git a/ElmSharp/ElmSharp/EcoreMainloop.cs b/ElmSharp/ElmSharp/EcoreMainloop.cs index 048442d..1aabdcb 100644 --- a/ElmSharp/ElmSharp/EcoreMainloop.cs +++ b/ElmSharp/ElmSharp/EcoreMainloop.cs @@ -9,7 +9,6 @@ namespace ElmSharp static readonly Object _taskLock = new Object(); static int _newTaskId = 0; - static Interop.Ecore.EcoreTaskCallback _nativeHandler; static EcoreMainloop() @@ -19,6 +18,8 @@ namespace ElmSharp _nativeHandler = NativeHandler; } + public static bool IsMainThread => Interop.Eina.eina_main_loop_is(); + public static void Begin() { Interop.Ecore.ecore_main_loop_begin(); diff --git a/ElmSharp/Interop/Interop.Eina.cs b/ElmSharp/Interop/Interop.Eina.cs new file mode 100644 index 0000000..107d4c3 --- /dev/null +++ b/ElmSharp/Interop/Interop.Eina.cs @@ -0,0 +1,19 @@ +// Copyright 2016 by Samsung Electronics, Inc., +// +// This software is the confidential and proprietary information +// of Samsung Electronics, Inc. ("Confidential Information"). You +// shall not disclose such Confidential Information and shall use +// it only in accordance with the terms of the license agreement +// you entered into with Samsung. + +using System; +using System.Runtime.InteropServices; + +internal static partial class Interop +{ + internal static partial class Eina + { + [DllImport(Libraries.Eina)] + internal static extern bool eina_main_loop_is(); + } +} diff --git a/packaging/elm-sharp.spec b/packaging/elm-sharp.spec index 34587e6..e05a391 100644 --- a/packaging/elm-sharp.spec +++ b/packaging/elm-sharp.spec @@ -8,7 +8,7 @@ Name: elm-sharp Summary: C# Binding for Elementary -Version: 1.0.9 +Version: 1.0.10 Release: 1 Group: Development/Libraries License: Apache-2.0 |