6b5634ea72e8446bedb8e97b5234188d1f1af1db
[platform/framework/web/crosswalk.git] / src / xwalk / application / common / application_manifest_constants.cc
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "xwalk/application/common/application_manifest_constants.h"
6
7 namespace xwalk {
8
9 namespace application_manifest_keys {
10 const char kAppKey[] = "app";
11 const char kCSPKey[] = "csp";
12 const char kCSPKeyLegacy[] = "content_security_policy";
13 const char kDescriptionKey[] = "description";
14 const char kDisplay[] = "display";
15 const char kLaunchLocalPathKey[] = "app.launch.local_path";
16 const char kLaunchScreen[] = "launch_screen";
17 const char kLaunchScreenDefault[] = "launch_screen.default";
18 const char kLaunchScreenImageBorderDefault[] =
19     "launch_screen.default.image_border";
20 const char kLaunchScreenImageBorderLandscape[] =
21     "launch_screen.landscape.image_border";
22 const char kLaunchScreenImageBorderPortrait[] =
23     "launch_screen.portrait.image_border";
24 const char kLaunchScreenLandscape[] = "launch_screen.landscape";
25 const char kLaunchScreenPortrait[] = "launch_screen.portrait";
26 const char kLaunchScreenReadyWhen[] = "launch_screen.ready_when";
27 const char kLaunchWebURLKey[] = "app.launch.web_url";
28 const char kManifestVersionKey[] = "manifest_version";
29 const char kNameKey[] = "name";
30 const char kPermissionsKey[] = "permissions";
31 const char kStartURLKey[] = "start_url";
32 const char kURLKey[] = "url";
33 const char kVersionKey[] = "version";
34 const char kWebURLsKey[] = "app.urls";
35 const char kXWalkHostsKey[] = "xwalk_hosts";
36 const char kXWalkLaunchScreen[] = "xwalk_launch_screen";
37 const char kXWalkLaunchScreenDefault[] = "xwalk_launch_screen.default";
38 const char kXWalkLaunchScreenImageBorderDefault[] =
39     "xwalk_launch_screen.default.image_border";
40 const char kXWalkLaunchScreenImageBorderLandscape[] =
41     "xwalk_launch_screen.landscape.image_border";
42 const char kXWalkLaunchScreenImageBorderPortrait[] =
43     "xwalk_launch_screen.portrait.image_border";
44 const char kXWalkLaunchScreenLandscape[] = "xwalk_launch_screen.landscape";
45 const char kXWalkLaunchScreenPortrait[] = "xwalk_launch_screen.portrait";
46 const char kXWalkLaunchScreenReadyWhen[] = "xwalk_launch_screen.ready_when";
47
48 #if defined(OS_TIZEN)
49 const char kTizenAppIdKey[] = "tizen_app_id";
50 const char kIcon128Key[] = "icons.128";
51 #endif
52
53 }  // namespace application_manifest_keys
54
55 // manifest keys for widget applications.
56 namespace application_widget_keys {
57 const char kNamespaceKey[] = "@namespace";
58 const char kXmlLangKey[] = "@lang";
59 const char kDefaultLocaleKey[] = "widget.@defaultlocale";
60 const char kNameKey[] = "widget.name.#text";
61 const char kVersionKey[] = "widget.@version";
62 const char kViewModesKey[] = "widget.@viewmodes";
63 const char kWidgetKey[] = "widget";
64 const char kLaunchLocalPathKey[] = "widget.content.@src";
65 const char kWebURLsKey[] = "widget.@id";
66 const char kAuthorKey[] = "widget.author.#text";
67 const char kDescriptionKey[] = "widget.description.#text";
68 const char kShortNameKey[] = "widget.name.@short";
69 const char kIDKey[] = "widget.@id";
70 const char kAuthorEmailKey[] = "widget.author.@email";
71 const char kAuthorHrefKey[] = "widget.author.@href";
72 const char kHeightKey[] = "widget.@height";
73 const char kWidthKey[] = "widget.@width";
74 const char kPreferencesKey[] = "widget.preference";
75 const char kCSPKey[] = "widget.content-security-policy.#text";
76 const char kAccessKey[] = "widget.access";
77
78 // Child keys inside 'kPreferencesKey'.
79 const char kPreferencesNameKey[] = "@name";
80 const char kPreferencesValueKey[] = "@value";
81 const char kPreferencesReadonlyKey[] = "@readonly";
82
83 // Child keys inside 'kAccessKey'.
84 const char kAccessOriginKey[] = "@origin";
85 const char kAccessSubdomainsKey[] = "@subdomains";
86
87 #if defined(OS_TIZEN)
88 const char kIcon128Key[] = "widget.icon.@src";
89 const char kTizenApplicationKey[] = "widget.application";
90 // Child keys inside 'kTizenApplicationKey'
91 const char kTizenApplicationIdKey[] = "@id";
92 const char kTizenApplicationPackageKey[] = "@package";
93 const char kTizenApplicationRequiredVersionKey[] = "@required_version";
94
95 const char kTizenAppIdKey[] = "widget.application.@package";
96 const char kAllowNavigationKey[] = "widget.allow-navigation.#text";
97 const char kCSPReportOnlyKey[] =
98     "widget.content-security-policy-report-only.#text";
99 const char kTizenSettingKey[] = "widget.setting";
100 const char kTizenHardwareKey[] = "widget.setting.@hwkey-event";
101 const char kTizenMetaDataKey[] = "widget.metadata";
102 // Child keys inside 'kTizenMetaDataKey'
103 const char kTizenMetaDataNameKey[] = "@key";
104 const char kTizenMetaDataValueKey[] = "@value";
105 const char kTizenSplashScreenKey[] = "widget.splash-screen";
106 const char kTizenSplashScreenSrcKey[] = "@src";
107 #endif
108 }  // namespace application_widget_keys
109
110 #if defined(OS_TIZEN)
111 const char kTizenNamespacePrefix[] = "http://tizen.org/ns/widgets";
112 #endif
113
114 namespace application_manifest_errors {
115 const char kInvalidDescription[] =
116     "Invalid value for 'description'.";
117 const char kInvalidKey[] =
118     "Value 'key' is missing or invalid.";
119 const char kInvalidManifestVersion[] =
120     "Invalid value for 'manifest_version'. Must be an integer greater than "
121     "zero.";
122 const char kInvalidName[] =
123     "Required value 'name' is missing or invalid.";
124 const char kInvalidVersion[] =
125     "Required value 'version' is missing or invalid. It must be between 1-4 "
126     "dot-separated integers each between 0 and 65536.";
127 const char kManifestParseError[] =
128     "Manifest is not valid JSON.";
129 const char kManifestUnreadable[] =
130     "Manifest file is missing or unreadable.";
131 const char kPlatformAppNeedsManifestVersion2[] =
132     "Packaged apps need manifest_version set to >= 2";
133 }  // namespace application_manifest_errors
134
135 namespace application {
136
137 const char* GetNameKey(Package::Type package_type) {
138   if (package_type == Package::WGT)
139     return application_widget_keys::kNameKey;
140
141   return application_manifest_keys::kNameKey;
142 }
143
144 const char* GetVersionKey(Package::Type package_type) {
145   if (package_type == Package::WGT)
146     return application_widget_keys::kVersionKey;
147
148   return application_manifest_keys::kVersionKey;
149 }
150
151 const char* GetWebURLsKey(Package::Type package_type) {
152   if (package_type == Package::WGT)
153     return application_widget_keys::kWebURLsKey;
154
155   return application_manifest_keys::kWebURLsKey;
156 }
157
158 const char* GetLaunchLocalPathKey(Package::Type package_type) {
159   if (package_type == Package::WGT)
160     return application_widget_keys::kLaunchLocalPathKey;
161
162   return application_manifest_keys::kLaunchLocalPathKey;
163 }
164
165 const char* GetCSPKey(Package::Type package_type) {
166   if (package_type == Package::WGT)
167     return application_widget_keys::kCSPKey;
168
169   return application_manifest_keys::kCSPKey;
170 }
171
172 #if defined(OS_TIZEN)
173 const char* GetTizenAppIdKey(Package::Type package_type) {
174   if (package_type == Package::WGT)
175     return application_widget_keys::kTizenAppIdKey;
176
177   return application_manifest_keys::kTizenAppIdKey;
178 }
179
180 const char* GetIcon128Key(Package::Type package_type) {
181   if (package_type == Package::WGT)
182     return application_widget_keys::kIcon128Key;
183
184   return application_manifest_keys::kIcon128Key;
185 }
186 #endif
187 }  // namespace application
188 }  // namespace xwalk