0e2fbf2426ef455386430d089870500186f3e2ff
[profile/ivi/org.tizen.browser.git] / src / include / browser-config.h
1 /*\r
2   * Copyright 2012  Samsung Electronics Co., Ltd\r
3   *\r
4   * Licensed under the Flora License, Version 1.0 (the "License");\r
5   * you may not use this file except in compliance with the License.\r
6   * You may obtain a copy of the License at\r
7   *\r
8   *    http://www.tizenopensource.org/license\r
9   *\r
10   * Unless required by applicable law or agreed to in writing, software\r
11   * distributed under the License is distributed on an "AS IS" BASIS,\r
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13   * See the License for the specific language governing permissions and\r
14   * limitations under the License.\r
15   */\r
16 \r
17 #ifndef BROWSER_CONFIG_H\r
18 #define BROWSER_CONFIG_H\r
19 \r
20 #include <appcore-efl.h>\r
21 #include <appsvc.h>\r
22 #include <app_service.h>\r
23 #include <app_manager.h>\r
24 #include <aul.h>\r
25 #include <bundle.h>\r
26 #include <cairo.h>\r
27 #include <dirent.h>\r
28 #include <gio/gio.h>\r
29 #include <glib.h>\r
30 #include <glib-object.h>\r
31 #include <libsoup/soup.h>\r
32 #include <malloc.h>\r
33 #include <stdio.h>\r
34 #include <stdlib.h>\r
35 #include <ui-gadget.h>\r
36 #include <unistd.h>\r
37 #include <utilX.h>\r
38 #include <vconf.h>\r
39 #include <Elementary.h>\r
40 #include <Elementary_webview.h>\r
41 #include <Ecore.h>\r
42 #include <Ecore_IMF.h>\r
43 #include <Ecore_X.h>\r
44 #include <Evas.h>\r
45 #include <EWebKit.h>\r
46 #include <devman_haptic.h>\r
47 \r
48 #include <cstdio>\r
49 #include <ewk_main.h>\r
50 #include <fstream>\r
51 #include <sstream>\r
52 #include <iostream>\r
53 #include <map>\r
54 #include <set>\r
55 #include <string>\r
56 #include <vector>\r
57 \r
58 #include "browser-dlog.h"\r
59 #include "browser-string.h"\r
60 \r
61 #define BROWSER_PACKAGE_NAME "browser"\r
62 #define BROWSER_EDJE_DIR "/opt/apps/org.tizen.browser/res/edje"\r
63 #define BROWSER_LOCALE_DIR "/opt/apps/org.tizen.browser/res/locale"\r
64 #define BROWSER_IMAGE_DIR "/opt/apps/org.tizen.browser/res/images"\r
65 \r
66 #define BROWSER_URL_SCHEME_CHECK "://"\r
67 #define BROWSER_HTTP_SCHEME "http://"\r
68 #define BROWSER_HTTPS_SCHEME "https://"\r
69 #define BROWSER_FILE_SCHEME "file://"\r
70 #define BROWSER_RTSP_SCHEME "rtsp://"\r
71 #define BROWSER_MAIL_TO_SCHEME "mailto:"\r
72 #define BROWSER_TEL_SCHEME "tel:"\r
73 #define BROWSER_SMS_SCHEME "sms:"\r
74 #define BROWSER_VTEL_SCHEME "vtel:"\r
75 #define BROWSER_WTAI_SCHEME "wtai://"\r
76 #define BROWSER_DAUM_TV_SCHEME "daumtv://"\r
77 #define BROWSER_YOUTUBE_SCHEME "vnd.youtube"\r
78 \r
79 #define BROWSER_DEFAULT_USER_HOMEPAGE   "www.tizen.org"\r
80 \r
81 /* browser extension theme. */\r
82 #define BROWSER_BUTTON_THEME BROWSER_EDJE_DIR"/browser-define.edj"\r
83 #define BROWSER_NAVIFRAME_THEME BROWSER_EDJE_DIR"/browser-naviframe.edj"\r
84 #define BROWSER_CONTROLBAR_THEME BROWSER_EDJE_DIR"/browser-view-control-bar.edj"\r
85 #define BROWSER_URL_LAYOUT_THEME BROWSER_EDJE_DIR"/browser-view-url-layout.edj"\r
86 #define BROWSER_PROGRESSBAR_THEME BROWSER_EDJE_DIR"/browser-view-progressbar.edj"\r
87 #define BROWSER_PREDICTIVE_HISTORY_THEME BROWSER_EDJE_DIR"/browser-predictive-history.edj"\r
88 #define BROWSER_SETTINGS_THEME BROWSER_EDJE_DIR"/browser-settings.edj"\r
89 #define BROWSER_BOOKMARK_THEME BROWSER_EDJE_DIR"/browser-bookmark-view.edj"\r
90 #define BROWSER_MOST_VISITED_SITES_THEME BROWSER_EDJE_DIR"/most-visited-sites.edj"\r
91 #define BROWSER_MOST_VISITED_THEME BROWSER_EDJE_DIR"/browser-most-visited.edj"\r
92 #define BROWSER_FIND_WORD_LAYOUT_THEME BROWSER_EDJE_DIR"/browser-view-find-word-layout.edj"\r
93 \r
94 /* browser vconf path */\r
95 #define BROWSER_VCONF_PREFIX    "db/browser/"\r
96 #define BROWSER_SETTING_VCONF_PREFIX "db/browsersetting/"\r
97 #define SHOW_MY_SITES_GUIDE     BROWSER_VCONF_PREFIX"ShowMySitesGuide"\r
98 #define BROWSER_BRIGHTNESS_LEVEL_KEY    BROWSER_VCONF_PREFIX"BrowserBrightnessLevel"\r
99 #define LAST_VISITED_URL_KEY    BROWSER_SETTING_VCONF_PREFIX"LastVisitedUrl"\r
100 //#define USERAGENT_KEY BROWSER_VCONF_PREFIX"UserAgent"\r
101 \r
102 /* "db/browsersetting/UserAgent" should be installed in browser with Tizen open.\r
103   * Because the user agent ug is not available with Tizen open. */\r
104 #define USERAGENT_KEY   BROWSER_SETTING_VCONF_PREFIX"UserAgent"\r
105 \r
106 #define DEFAULT_USER_AGENT_STRING "Tizen"\r
107 \r
108 #define HOMEPAGE_KEY    BROWSER_SETTING_VCONF_PREFIX"HomepageMode"\r
109 #define USER_HOMEPAGE_KEY       BROWSER_SETTING_VCONF_PREFIX"UserHomepage"\r
110 #define SEARCHURL_KEY   BROWSER_VCONF_PREFIX"SearchUrl"\r
111 #define DEFAULT_VIEW_LEVEL_KEY  BROWSER_SETTING_VCONF_PREFIX"DefaultViewLevel"\r
112 #define RUN_JAVASCRIPT_KEY      BROWSER_SETTING_VCONF_PREFIX"RunJavaScript"\r
113 #define DISPLAY_IMAGES_KEY      BROWSER_SETTING_VCONF_PREFIX"DisplayImages"\r
114 #define BLOCK_POPUP_KEY BROWSER_SETTING_VCONF_PREFIX"BlockPopup"\r
115 #define ACCEPT_COOKIES_KEY      BROWSER_SETTING_VCONF_PREFIX"CookieOptionInt"\r
116 #define AUTO_SAVE_ID_PASSWORD_KEY       BROWSER_SETTING_VCONF_PREFIX"SaveIDPassword"\r
117 \r
118 #define RUN_READER_KEY  BROWSER_SETTING_VCONF_PREFIX"RunReader"\r
119 #define READER_FONT_SIZE_KEY    BROWSER_SETTING_VCONF_PREFIX"FontSize"\r
120 \r
121 #define RUN_PLUGINS_KEY BROWSER_SETTING_VCONF_PREFIX"RunPlugins"\r
122 #define RUN_FLASH_KEY   BROWSER_SETTING_VCONF_PREFIX"RunFlash"\r
123 #define PAUSE_FLASH_KEY BROWSER_SETTING_VCONF_PREFIX"PauseFlash"\r
124 #define ACCELERATED_COMPOSITION_KEY     BROWSER_SETTING_VCONF_PREFIX"AcceleratedComposition"\r
125 #define EXTERNAL_VIDEO_PLAYER_KEY       BROWSER_SETTING_VCONF_PREFIX"ExternalVideoPlayer"\r
126 #define BROWSER_FLASH_MIME_TYPE "application/x-shockwave-flash"\r
127 \r
128 #define BACKING_STORE_CACHE_SIZE        42000000 /* 42 MB */\r
129 \r
130 #define BROWSER_READER_DEFAULT_FONT_SIZE        16\r
131 #define BROWSER_READER_MIN_FONT_SIZE    10\r
132 #define BROWSER_READER_MAX_FONT_SIZE    30\r
133 \r
134 #define BROWSER_DEFAULT_BRIGHTNESS_LEVEL        7\r
135 \r
136 #define MODAL_MSG_MAX_BUFFER    1024\r
137 #define MODAL_LAUNCHER_BIN_PATH "/usr/bin/modal_launcher"\r
138 #define MODAL_LAUNCHER_BUNDLE_TYPE      "type"\r
139 #define MODAL_LAUNCHER_BUNDLE_MESSAGE   "message"\r
140 #define MODAL_LAUNCHER_RESULT_KEYWORD   "MODAL_RESULT"\r
141 \r
142 /* ID to save to vconf for browser settings */\r
143 #define MOST_VISITED_SITES "MOST_VISITED_SITES"\r
144 #define RECENTLY_VISITED_SITE "RECENTLY_VISITED_SITE"\r
145 #define USER_HOMEPAGE "USER_HOMEPAGE"\r
146 #define FIT_TO_WIDTH    "FIT_TO_WIDTH"\r
147 #define READABLE        "READABLE"\r
148 #define ALWAYS_ASK      "ALWAYS_ASK"\r
149 #define ALWAYS_ON       "ON"\r
150 #define ALWAYS_OFF      "OFF"\r
151 \r
152 #define GOOGLE_SEARCH_QUERY     "http://www.google.com/m/search?q="\r
153 \r
154 /* size definition */\r
155 #define BROWSER_MORE_CTX_POPUP_MARGIN   (10 * elm_scale_get())\r
156 \r
157 /* bookmark definition */\r
158 #define BROWSER_BOOKMARK_DB_PATH        "/opt/dbspace/.internet_bookmark.db"\r
159 #define BROWSER_BOOKMARK_GENLIST_BLOCK_COUNT    50\r
160 #define BROWSER_BOOKMARK_MAIN_FOLDER_ID 1\r
161 #define BROWSER_BOOKMARK_COUNT_LIMIT    1000\r
162 #define BROWSER_MAX_TITLE_LEN   1024\r
163 #define BROWSER_MAX_URL_LEN     2048\r
164 #define BROWSER_BOOKMARK_PROCESS_BLOCK_COUNT    100\r
165 \r
166 /* history definition */\r
167 #define BROWSER_HISTORY_DB_PATH "/opt/dbspace/.browser-history.db"\r
168 #define BROWSER_HISTORY_COUNT_LIMIT     1000\r
169 #define BROWSER_MAX_DATE_LEN    40\r
170 #define BROWSER_PREDICTIVE_HISTORY_COUNT        2\r
171 \r
172 /* personal data definition */\r
173 #define BROWSER_PERSONAL_DATA_DB_PATH   "/opt/apps/org.tizen.browser/data/db/.browser-credential.db"\r
174 \r
175 /* multi window definition */\r
176 #define BROWSER_MULTI_WINDOW_MAX_COUNT  9\r
177 #define BROWSER_MULTI_WINDOW_ITEM_RATIO 0.60f\r
178 \r
179 #define BROWSER_USER_AGENT_DB_PATH      "/opt/apps/org.tizen.browser/data/db/.browser.db"\r
180 #define BROWSER_DEFAULT_USER_AGENT_TITLE        "Tizen"\r
181 \r
182 #define BROWSER_NOTIFICATION_DB_PATH    "/opt/apps/org.tizen.browser/data/db/.browser-notification.db"\r
183 \r
184 /* Most visited definition */\r
185 #define BROWSER_MOST_VISITED_COUNT_TEXT "3"\r
186 \r
187 /* Speed dial definition */\r
188 #define BROWSER_MOST_VISITED_SITES_DB_PATH      "/opt/apps/org.tizen.browser/data/db/.browser-speeddial.db"\r
189 #define BROWSER_MOST_VISITED_SITES_SCREEN_SHOT_DIR      "/opt/apps/org.tizen.browser/data/screenshots/"\r
190 #define BROWSER_MOST_VISITED_SITES_ITEM_MAX     9\r
191 #define BROWSER_MOST_VISITED_SITES_URL  ""\r
192 #define DEFAULT_ICON_PREFIX "default_"\r
193 \r
194 #define BROWSER_FAVICON_DB_PATH "/opt/apps/org.tizen.browser/data/db/WebpageIcons.db"\r
195 \r
196 #define BROWSER_CLEAN_UP_WINDOWS_TIMEOUT        (60 * 30) // 30 min\r
197 \r
198 /* To do. */\r
199 #define BROWSER_SEARCH_URL_GOOGLE "http://www.google.com/m/search?q="\r
200 #define BROWSER_SEARCH_URL_YAHOO "http://search.yahoo.com/search?p="\r
201 #define BROWSER_SEARCH_URL_BING "http://www.bing.com/search?q="\r
202 #define BROWSER_SEARCH_ENGINE_KEY       BROWSER_SETTING_VCONF_PREFIX"SearchEngine"\r
203 #define BROWSER_GOOGLE  "Google"\r
204 #define BROWSER_YAHOO   "Yahoo"\r
205 #define BROWSER_BING    "Bing"\r
206 \r
207 #define SEC_DOWNLOAD_APP "org.tizen.download-provider"\r
208 #define SEC_STREAMING_PLAYER "org.tizen.video-player"\r
209 #define SEC_VIDEO_PLAYER SEC_STREAMING_PLAYER\r
210 #define SEC_MUSIC_PLAYER "org.tizen.music-player"\r
211 #define SEC_VT_CALL "org.tizen.vtmain"\r
212 #define SEC_MESSAGE "org.tizen.message"\r
213 #define SEC_EMAIL "org.tizen.email"\r
214 \r
215 #define ELM_NAVIFRAME_ITEM_CONTENT "default"\r
216 #define ELM_NAVIFRAME_ITEM_CONTROLBAR "controlbar"\r
217 #define ELM_NAVIFRAME_ITEM_ICON "icon"\r
218 #define ELM_NAVIFRAME_ITEM_OPTIONHEADER "optionheader"\r
219 #define ELM_NAVIFRAME_ITEM_OPTIONHEADER2 "optionheader2"\r
220 \r
221 #define ELM_NAVIFRAME_ITEM_SIGNAL_CONTROLBAR_CLOSE "elm,state,controlbar,close", ""\r
222 #define ELM_NAVIFRAME_ITEM_SIGNAL_OPTIONHEADER_CLOSE "elm,state,optionheader,close", ""\r
223 #define ELM_NAVIFRAME_ITEM_SIGNAL_OPTIONHEADER_INSTANT_CLOSE "elm,state,optionheader,instant_close", ""\r
224 #define ELM_NAVIFRAME_ITEM_SIGNAL_OPTIONHEADER_INSTANT_OPEN "elm,state,optionheader,instant_open", ""\r
225 #define ELM_NAVIFRAME_ITEM_SIGNAL_OPTIONHEADER_OPEN "elm,state,optionheader,open", ""\r
226 #define ELM_NAVIFRAME_ITEM_TITLE_LABEL "title"\r
227 #define ELM_NAVIFRAME_ITEM_TITLE_LEFT_BTN "title_left_btn"\r
228 #define ELM_NAVIFRAME_ITEM_TITLE_MORE_BTN "title_more_btn"\r
229 #define ELM_NAVIFRAME_ITEM_TITLE_RIGHT_BTN "title_right_btn"\r
230 #define ELM_NAVIFRAME_ITEM_PREV_BTN "prev_btn"\r
231 \r
232 #endif /* BROWSER_CONFIG_H */\r
233 \r