2 * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 using System.Runtime.InteropServices;
20 internal static partial class Interop
22 internal static partial class ChromiumEwk
24 [DllImport(Libraries.ChromiumEwk)]
25 internal static extern IntPtr ewk_view_add(IntPtr evas);
27 [DllImport(Libraries.ChromiumEwk)]
28 internal static extern IntPtr ewk_view_context_get(IntPtr obj);
30 [DllImport(Libraries.ChromiumEwk)]
31 internal static extern IntPtr ewk_view_settings_get(IntPtr obj);
33 [DllImport(Libraries.ChromiumEwk)]
34 internal static extern IntPtr ewk_view_back_forward_list_get(IntPtr obj);
36 [DllImport(Libraries.ChromiumEwk)]
37 internal static extern void ewk_view_back_forward_list_clear(IntPtr obj);
39 [DllImport(Libraries.ChromiumEwk)]
40 [return: MarshalAs(UnmanagedType.U1)]
41 internal static extern bool ewk_view_url_set(IntPtr obj, string url);
43 [DllImport(Libraries.ChromiumEwk, EntryPoint = "ewk_view_url_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
44 internal static extern IntPtr _ewk_view_url_get(IntPtr obj);
46 internal static string ewk_view_url_get(IntPtr obj)
48 IntPtr ptr = _ewk_view_url_get(obj);
49 return Marshal.PtrToStringAnsi(ptr);
52 [DllImport(Libraries.ChromiumEwk)]
53 [return: MarshalAs(UnmanagedType.U1)]
54 internal static extern bool ewk_view_html_string_load(IntPtr obj, string html, string baseUrl, string unreachableUrl);
56 [DllImport(Libraries.ChromiumEwk)]
57 [return: MarshalAs(UnmanagedType.U1)]
58 internal static extern bool ewk_view_reload(IntPtr obj);
60 [DllImport(Libraries.ChromiumEwk)]
61 [return: MarshalAs(UnmanagedType.U1)]
62 internal static extern bool ewk_view_stop(IntPtr obj);
64 [DllImport(Libraries.ChromiumEwk)]
65 [return: MarshalAs(UnmanagedType.U1)]
66 internal static extern bool ewk_view_back(IntPtr obj);
68 [DllImport(Libraries.ChromiumEwk)]
69 [return: MarshalAs(UnmanagedType.U1)]
70 internal static extern bool ewk_view_forward(IntPtr obj);
72 [DllImport(Libraries.ChromiumEwk)]
73 [return: MarshalAs(UnmanagedType.U1)]
74 internal static extern bool ewk_view_back_possible(IntPtr obj);
76 [DllImport(Libraries.ChromiumEwk)]
77 [return: MarshalAs(UnmanagedType.U1)]
78 internal static extern bool ewk_view_forward_possible(IntPtr obj);
80 internal delegate void ScriptExcuteCallback(IntPtr obj, IntPtr resultValue, IntPtr userData);
82 [DllImport(Libraries.ChromiumEwk)]
83 [return: MarshalAs(UnmanagedType.U1)]
84 internal static extern bool ewk_view_script_execute(IntPtr obj, string script, ScriptExcuteCallback callback, IntPtr userData);
86 [DllImport(Libraries.ChromiumEwk, EntryPoint = "ewk_view_title_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
87 internal static extern IntPtr _ewk_view_title_get(IntPtr obj);
89 internal static string ewk_view_title_get(IntPtr obj)
91 IntPtr ptr = _ewk_view_title_get(obj);
92 return Marshal.PtrToStringAnsi(ptr);
95 [DllImport(Libraries.ChromiumEwk, EntryPoint = "ewk_view_user_agent_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
96 internal static extern IntPtr _ewk_view_user_agent_get(IntPtr obj);
98 internal static string ewk_view_user_agent_get(IntPtr obj)
100 IntPtr ptr = _ewk_view_user_agent_get(obj);
101 return Marshal.PtrToStringAnsi(ptr);
104 [DllImport(Libraries.ChromiumEwk)]
105 [return: MarshalAs(UnmanagedType.U1)]
106 internal static extern bool ewk_view_user_agent_set(IntPtr obj, string userAgent);
108 [DllImport(Libraries.ChromiumEwk)]
109 [return: MarshalAs(UnmanagedType.U1)]
110 internal static extern bool ewk_view_focus_set(IntPtr obj, bool focused);
112 [DllImport(Libraries.ChromiumEwk)]
113 [return: MarshalAs(UnmanagedType.U1)]
114 internal static extern bool ewk_view_focus_get(IntPtr obj);
116 [StructLayout(LayoutKind.Sequential, CharSet =CharSet.Ansi)]
117 internal struct ScriptMessage
123 internal delegate void ScriptMessageCallback(IntPtr obj, ScriptMessage message);
125 [DllImport(Libraries.ChromiumEwk)]
126 [return: MarshalAs(UnmanagedType.U1)]
127 internal static extern bool ewk_view_javascript_message_handler_add(IntPtr obj, ScriptMessageCallback callback, string name);
129 [DllImport(Libraries.ChromiumEwk)]
130 [return: MarshalAs(UnmanagedType.U1)]
131 internal static extern bool ewk_view_evaluate_javascript(IntPtr obj, string name, string result);