[WebView][TCSACR-219] Add WebView Settings API (#610)
[platform/core/csapi/tizenfx.git] / src / Tizen.WebView / Interop / Interop.ChromiumEwk.Settings.cs
1 /*
2  * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 using System;
18 using System.Runtime.InteropServices;
19
20 internal static partial class Interop
21 {
22     internal static partial class ChromiumEwk
23     {
24         [DllImport(Libraries.ChromiumEwk)]
25         [return: MarshalAs(UnmanagedType.U1)]
26         internal static extern bool ewk_settings_javascript_enabled_set(IntPtr settings, bool enable);
27
28         [DllImport(Libraries.ChromiumEwk)]
29         [return: MarshalAs(UnmanagedType.U1)]
30         internal static extern bool ewk_settings_javascript_enabled_get(IntPtr settings);
31
32         [DllImport(Libraries.ChromiumEwk)]
33         [return: MarshalAs(UnmanagedType.U1)]
34         internal static extern bool ewk_settings_loads_images_automatically_set(IntPtr settings, bool enable);
35
36         [DllImport(Libraries.ChromiumEwk)]
37         [return: MarshalAs(UnmanagedType.U1)]
38         internal static extern bool ewk_settings_loads_images_automatically_get(IntPtr settings);
39
40         [DllImport(Libraries.ChromiumEwk)]
41         [return: MarshalAs(UnmanagedType.U1)]
42         internal static extern bool ewk_settings_default_text_encoding_name_set(IntPtr settings, string encoding);
43
44         [DllImport(Libraries.ChromiumEwk, EntryPoint = "ewk_settings_default_text_encoding_name_get", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true, CharSet = CharSet.Ansi)]
45         internal static extern IntPtr _ewk_settings_default_text_encoding_name_get(IntPtr settings);
46
47         internal static string ewk_settings_default_text_encoding_name_get(IntPtr settings)
48         {
49             IntPtr ptr = _ewk_settings_default_text_encoding_name_get(settings);
50             return Marshal.PtrToStringAnsi(ptr);
51         }
52
53         [DllImport(Libraries.ChromiumEwk)]
54         [return: MarshalAs(UnmanagedType.U1)]
55         internal static extern bool ewk_settings_default_font_size_set(IntPtr settings, int size);
56
57         [DllImport(Libraries.ChromiumEwk)]
58         internal static extern int ewk_settings_default_font_size_get(IntPtr settings);
59
60         [DllImport(Libraries.ChromiumEwk)]
61         [return: MarshalAs(UnmanagedType.U1)]
62         internal static extern bool ewk_settings_scripts_can_open_windows_set(IntPtr settings, bool enable);
63
64         [DllImport(Libraries.ChromiumEwk)]
65         [return: MarshalAs(UnmanagedType.U1)]
66         internal static extern bool ewk_settings_scripts_can_open_windows_get(IntPtr settings);
67
68         [DllImport(Libraries.ChromiumEwk)]
69         [return: MarshalAs(UnmanagedType.U1)]
70         internal static extern bool ewk_settings_force_zoom_set(IntPtr settings, bool enable);
71
72         [DllImport(Libraries.ChromiumEwk)]
73         [return: MarshalAs(UnmanagedType.U1)]
74         internal static extern bool ewk_settings_force_zoom_get(IntPtr settings);
75
76         [DllImport(Libraries.ChromiumEwk)]
77         [return: MarshalAs(UnmanagedType.U1)]
78         internal static extern bool ewk_settings_text_autosizing_enabled_set(IntPtr settings, bool enable);
79
80         [DllImport(Libraries.ChromiumEwk)]
81         [return: MarshalAs(UnmanagedType.U1)]
82         internal static extern bool ewk_settings_text_autosizing_enabled_get(IntPtr settings);
83
84         [DllImport(Libraries.ChromiumEwk)]
85         [return: MarshalAs(UnmanagedType.U1)]
86         internal static extern bool ewk_settings_text_zoom_enabled_set(IntPtr settings, bool enable);
87
88         [DllImport(Libraries.ChromiumEwk)]
89         [return: MarshalAs(UnmanagedType.U1)]
90         internal static extern bool ewk_settings_text_zoom_enabled_get(IntPtr settings);
91
92         [DllImport(Libraries.ChromiumEwk)]
93         [return: MarshalAs(UnmanagedType.U1)]
94         internal static extern bool ewk_settings_uses_keypad_without_user_action_set(IntPtr settings, bool enable);
95
96         [DllImport(Libraries.ChromiumEwk)]
97         [return: MarshalAs(UnmanagedType.U1)]
98         internal static extern bool ewk_settings_uses_keypad_without_user_action_get(IntPtr settings);
99
100         [DllImport(Libraries.ChromiumEwk)]
101         [return: MarshalAs(UnmanagedType.U1)]
102         internal static extern bool ewk_settings_extra_feature_set(IntPtr settings, string name, bool enable);
103
104         [DllImport(Libraries.ChromiumEwk)]
105         [return: MarshalAs(UnmanagedType.U1)]
106         internal static extern bool ewk_settings_extra_feature_get(IntPtr settings, string name);
107     }
108 }