• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2018 The Android Open Source Project
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 package com.google.android.setupcompat.partnerconfig;
18 
19 import androidx.annotation.StringDef;
20 import androidx.annotation.VisibleForTesting;
21 import java.lang.annotation.Retention;
22 import java.lang.annotation.RetentionPolicy;
23 
24 /** Resource names that can be customized by partner overlay APK. */
25 @Retention(RetentionPolicy.SOURCE)
26 @StringDef({
27   PartnerConfigKey.KEY_STATUS_BAR_BACKGROUND,
28   PartnerConfigKey.KEY_LIGHT_STATUS_BAR,
29   PartnerConfigKey.KEY_NAVIGATION_BAR_BG_COLOR,
30   PartnerConfigKey.KEY_LIGHT_NAVIGATION_BAR,
31   PartnerConfigKey.KEY_NAVIGATION_BAR_DIVIDER_COLOR,
32   PartnerConfigKey.KEY_FOOTER_BAR_BG_COLOR,
33   PartnerConfigKey.KEY_FOOTER_BAR_MIN_HEIGHT,
34   PartnerConfigKey.KEY_FOOTER_BAR_PADDING_START,
35   PartnerConfigKey.KEY_FOOTER_BAR_PADDING_END,
36   PartnerConfigKey.KEY_FOOTER_BUTTON_FONT_FAMILY,
37   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_ADD_ANOTHER,
38   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_CANCEL,
39   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_CLEAR,
40   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_DONE,
41   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_NEXT,
42   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_OPT_IN,
43   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_SKIP,
44   PartnerConfigKey.KEY_FOOTER_BUTTON_ICON_STOP,
45   PartnerConfigKey.KEY_FOOTER_BUTTON_PADDING_TOP,
46   PartnerConfigKey.KEY_FOOTER_BUTTON_PADDING_BOTTOM,
47   PartnerConfigKey.KEY_FOOTER_BUTTON_RADIUS,
48   PartnerConfigKey.KEY_FOOTER_BUTTON_RIPPLE_ALPHA,
49   PartnerConfigKey.KEY_FOOTER_BUTTON_TEXT_SIZE,
50   PartnerConfigKey.KEY_FOOTER_BUTTON_TEXT_STYLE,
51   PartnerConfigKey.KEY_FOOTER_BUTTON_MIN_HEIGHT,
52   PartnerConfigKey.KEY_FOOTER_BUTTON_ALIGNED_END,
53   PartnerConfigKey.KEY_FOOTER_BUTTON_DISABLED_ALPHA,
54   PartnerConfigKey.KEY_FOOTER_BUTTON_DISABLED_BG_COLOR,
55   PartnerConfigKey.KEY_FOOTER_PRIMARY_BUTTON_BG_COLOR,
56   PartnerConfigKey.KEY_FOOTER_PRIMARY_BUTTON_TEXT_COLOR,
57   PartnerConfigKey.KEY_FOOTER_PRIMARY_BUTTON_MARGIN_START,
58   PartnerConfigKey.KEY_PRIMARY_BUTTON_DISABLED_TEXT_COLOR,
59   PartnerConfigKey.KEY_FOOTER_SECONDARY_BUTTON_BG_COLOR,
60   PartnerConfigKey.KEY_FOOTER_SECONDARY_BUTTON_TEXT_COLOR,
61   PartnerConfigKey.KEY_FOOTER_SECONDARY_BUTTON_MARGIN_START,
62   PartnerConfigKey.KEY_SECONDARY_BUTTON_DISABLED_TEXT_COLOR,
63   PartnerConfigKey.KEY_LAYOUT_BACKGROUND_COLOR,
64   PartnerConfigKey.KEY_LAYOUT_MARGIN_START,
65   PartnerConfigKey.KEY_LAYOUT_MARGIN_END,
66   PartnerConfigKey.KEY_LAND_MIDDLE_HORIZONTAL_SPACING,
67   PartnerConfigKey.KEY_HEADER_TEXT_SIZE,
68   PartnerConfigKey.KEY_HEADER_TEXT_COLOR,
69   PartnerConfigKey.KEY_HEADER_FONT_FAMILY,
70   PartnerConfigKey.KEY_HEADER_AREA_BACKGROUND_COLOR,
71   PartnerConfigKey.KEY_HEADER_TEXT_MARGIN_TOP,
72   PartnerConfigKey.KEY_HEADER_TEXT_MARGIN_BOTTOM,
73   PartnerConfigKey.KEY_HEADER_CONTAINER_MARGIN_BOTTOM,
74   PartnerConfigKey.KEY_HEADER_AUTO_SIZE_ENABLED,
75   PartnerConfigKey.KEY_HEADER_AUTO_SIZE_MAX_TEXT_SIZE,
76   PartnerConfigKey.KEY_HEADER_AUTO_SIZE_MIN_TEXT_SIZE,
77   PartnerConfigKey.KEY_HEADER_AUTO_SIZE_MAX_LINE_OF_MAX_SIZE,
78   PartnerConfigKey.KEY_HEADER_AUTO_SIZE_LINE_SPACING_EXTRA,
79   PartnerConfigKey.KEY_LAYOUT_GRAVITY,
80   PartnerConfigKey.KEY_ICON_MARGIN_TOP,
81   PartnerConfigKey.KEY_ICON_SIZE,
82   PartnerConfigKey.KEY_DESCRIPTION_TEXT_SIZE,
83   PartnerConfigKey.KEY_DESCRIPTION_TEXT_COLOR,
84   PartnerConfigKey.KEY_DESCRIPTION_LINK_TEXT_COLOR,
85   PartnerConfigKey.KEY_DESCRIPTION_FONT_FAMILY,
86   PartnerConfigKey.KEY_DESCRIPTION_LINK_FONT_FAMILY,
87   PartnerConfigKey.KEY_DESCRIPTION_TEXT_MARGIN_TOP,
88   PartnerConfigKey.KEY_DESCRIPTION_TEXT_MARGIN_BOTTOM,
89   PartnerConfigKey.KEY_ACCOUNT_NAME_TEXT_SIZE,
90   PartnerConfigKey.KEY_ACCOUNT_NAME_FONT_FAMILY,
91   PartnerConfigKey.KEY_ACCOUNT_AVATAR_MARGIN_END,
92   PartnerConfigKey.KEY_ACCOUNT_AVATAR_MAX_SIZE,
93   PartnerConfigKey.KEY_CONTENT_TEXT_SIZE,
94   PartnerConfigKey.KEY_CONTENT_TEXT_COLOR,
95   PartnerConfigKey.KEY_CONTENT_LINK_TEXT_COLOR,
96   PartnerConfigKey.KEY_CONTENT_FONT_FAMILY,
97   PartnerConfigKey.KEY_CONTENT_LAYOUT_GRAVITY,
98   PartnerConfigKey.KEY_CONTENT_PADDING_TOP,
99   PartnerConfigKey.KEY_CONTENT_INFO_TEXT_SIZE,
100   PartnerConfigKey.KEY_CONTENT_INFO_FONT_FAMILY,
101   PartnerConfigKey.KEY_CONTENT_INFO_LINE_SPACING_EXTRA,
102   PartnerConfigKey.KEY_CONTENT_INFO_ICON_SIZE,
103   PartnerConfigKey.KEY_CONTENT_INFO_ICON_MARGIN_END,
104   PartnerConfigKey.KEY_CONTENT_INFO_PADDING_TOP,
105   PartnerConfigKey.KEY_CONTENT_INFO_PADDING_BOTTOM,
106   PartnerConfigKey.KEY_CARD_VIEW_INTRINSIC_WIDTH,
107   PartnerConfigKey.KEY_CARD_VIEW_INTRINSIC_HEIGHT,
108   PartnerConfigKey.KEY_ITEMS_TITLE_TEXT_SIZE,
109   PartnerConfigKey.KEY_ITEMS_SUMMARY_TEXT_SIZE,
110   PartnerConfigKey.KEY_ITEMS_SUMMARY_MARGIN_TOP,
111   PartnerConfigKey.KEY_ITEMS_TITLE_FONT_FAMILY,
112   PartnerConfigKey.KEY_ITEMS_SUMMARY_FONT_FAMILY,
113   PartnerConfigKey.KEY_ITEMS_PADDING_TOP,
114   PartnerConfigKey.KEY_ITEMS_PADDING_BOTTOM,
115   PartnerConfigKey.KEY_ITEMS_MIN_HEIGHT,
116   PartnerConfigKey.KEY_ITEMS_DIVIDER_SHOWN,
117   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_DEFAULT,
118   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_ACCOUNT,
119   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_CONNECTION,
120   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_UPDATE,
121   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_FINAL_HOLD,
122   PartnerConfigKey.KEY_PROGRESS_ILLUSTRATION_DISPLAY_MINIMUM_MS,
123   PartnerConfigKey.KEY_LOADING_LOTTIE_ACCOUNT,
124   PartnerConfigKey.KEY_LOADING_LOTTIE_CONNECTION,
125   PartnerConfigKey.KEY_LOADING_LOTTIE_DEFAULT,
126   PartnerConfigKey.KEY_LOADING_LOTTIE_UPDATE,
127   PartnerConfigKey.KEY_LOADING_LOTTIE_FINAL_HOLD,
128   PartnerConfigKey.KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_DEFAULT,
129   PartnerConfigKey.KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_ACCOUNT,
130   PartnerConfigKey.KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_CONNECTION,
131   PartnerConfigKey.KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_UPDATE,
132   PartnerConfigKey.KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_FINAL_HOLD,
133   PartnerConfigKey.KEY_LOADING_DARK_THEME_CUSTOMIZATION_DEFAULT,
134   PartnerConfigKey.KEY_LOADING_DARK_THEME_CUSTOMIZATION_ACCOUNT,
135   PartnerConfigKey.KEY_LOADING_DARK_THEME_CUSTOMIZATION_CONNECTION,
136   PartnerConfigKey.KEY_LOADING_DARK_THEME_CUSTOMIZATION_UPDATE,
137   PartnerConfigKey.KEY_LOADING_DARK_THEME_CUSTOMIZATION_FINAL_HOLD,
138   PartnerConfigKey.KEY_TRANSITION_TYPE,
139   PartnerConfigKey.KEY_LOADING_LAYOUT_CONTENT_PADDING_TOP,
140   PartnerConfigKey.KEY_LOADING_LAYOUT_CONTENT_PADDING_START,
141   PartnerConfigKey.KEY_LOADING_LAYOUT_CONTENT_PADDING_END,
142   PartnerConfigKey.KEY_LOADING_LAYOUT_CONTENT_PADDING_BOTTOM,
143   PartnerConfigKey.KEY_LOADING_LAYOUT_HEADER_HEIGHT,
144   PartnerConfigKey.KEY_LOADING_LAYOUT_FULL_SCREEN_ILLUSTRATION_ENABLED,
145   PartnerConfigKey.KEY_LOADING_LAYOUT_WAIT_FOR_ANIMATION_FINISHED,
146   PartnerConfigKey.KEY_PROGRESS_BAR_MARGIN_TOP,
147   PartnerConfigKey.KEY_PROGRESS_BAR_MARGIN_BOTTOM,
148 })
149 // TODO: can be removed and always reference PartnerConfig.getResourceName()?
150 @VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
151 public @interface PartnerConfigKey {
152   // Status bar background color or illustration.
153   String KEY_STATUS_BAR_BACKGROUND = "setup_compat_status_bar_background";
154 
155   // The same as "WindowLightStatusBar". If set true, the status bar icons will be drawn such
156   // that it is compatible with a light status bar background
157   String KEY_LIGHT_STATUS_BAR = "setup_compat_light_status_bar";
158 
159   // Navigation bar background color
160   String KEY_NAVIGATION_BAR_BG_COLOR = "setup_compat_navigation_bar_bg_color";
161 
162   // The same as "windowLightNavigationBar". If set true, the navigation bar icons will be drawn
163   // such that it is compatible with a light navigation bar background.
164   String KEY_LIGHT_NAVIGATION_BAR = "setup_compat_light_navigation_bar";
165 
166   // Navigation bar divider color
167   String KEY_NAVIGATION_BAR_DIVIDER_COLOR = "setup_compat_navigation_bar_divider_color";
168 
169   // Background color of the footer bar.
170   String KEY_FOOTER_BAR_BG_COLOR = "setup_compat_footer_bar_bg_color";
171 
172   // The min height of the footer bar
173   String KEY_FOOTER_BAR_MIN_HEIGHT = "setup_compat_footer_bar_min_height";
174 
175   // The padding start of the footer bar
176   String KEY_FOOTER_BAR_PADDING_START = "setup_compat_footer_bar_padding_start";
177 
178   // The padding end of the footer bar
179   String KEY_FOOTER_BAR_PADDING_END = "setup_compat_footer_bar_padding_end";
180 
181   // The font face used in footer buttons. This must be a string reference to a font that is
182   // available in the system. Font references (@font or @xml) are not allowed.
183   String KEY_FOOTER_BUTTON_FONT_FAMILY = "setup_compat_footer_button_font_family";
184 
185   // The icon for "add another" action. Can be "@null" for no icon.
186   String KEY_FOOTER_BUTTON_ICON_ADD_ANOTHER = "setup_compat_footer_button_icon_add_another";
187 
188   // The icon for "cancel" action. Can be "@null" for no icon.
189   String KEY_FOOTER_BUTTON_ICON_CANCEL = "setup_compat_footer_button_icon_cancel";
190 
191   // The icon for "clear" action. Can be "@null" for no icon.
192   String KEY_FOOTER_BUTTON_ICON_CLEAR = "setup_compat_footer_button_icon_clear";
193 
194   // The icon for "done" action. Can be "@null" for no icon.
195   String KEY_FOOTER_BUTTON_ICON_DONE = "setup_compat_footer_button_icon_done";
196 
197   // The icon for "next" action. Can be "@null" for no icon.
198   String KEY_FOOTER_BUTTON_ICON_NEXT = "setup_compat_footer_button_icon_next";
199 
200   // The icon for "opt-in" action. Can be "@null" for no icon.
201   String KEY_FOOTER_BUTTON_ICON_OPT_IN = "setup_compat_footer_button_icon_opt_in";
202 
203   // The icon for "skip" action. Can be "@null" for no icon.
204   String KEY_FOOTER_BUTTON_ICON_SKIP = "setup_compat_footer_button_icon_skip";
205 
206   // The icon for "stop" action. Can be "@null" for no icon.
207   String KEY_FOOTER_BUTTON_ICON_STOP = "setup_compat_footer_button_icon_stop";
208 
209   // Top padding of the footer buttons
210   String KEY_FOOTER_BUTTON_PADDING_TOP = "setup_compat_footer_button_padding_top";
211 
212   // Bottom padding of the footer buttons
213   String KEY_FOOTER_BUTTON_PADDING_BOTTOM = "setup_compat_footer_button_padding_bottom";
214 
215   // Corner radius of the footer buttons
216   String KEY_FOOTER_BUTTON_RADIUS = "setup_compat_footer_button_radius";
217 
218   // Ripple color alpha of the footer buttons
219   String KEY_FOOTER_BUTTON_RIPPLE_ALPHA = "setup_compat_footer_button_ripple_alpha";
220 
221   // Text size of the footer buttons
222   String KEY_FOOTER_BUTTON_TEXT_SIZE = "setup_compat_footer_button_text_size";
223 
224   // The font face used in footer buttons {0 = NORMAL}, {1 = BOLD}, {2 = ITALIC}, {3 = BOLD_ITALIC}
225   String KEY_FOOTER_BUTTON_TEXT_STYLE = "setup_compat_footer_button_text_style";
226 
227   // The min height of the footer buttons
228   String KEY_FOOTER_BUTTON_MIN_HEIGHT = "setup_compat_footer_button_min_height";
229 
230   // Make the footer buttons all aligned the end
231   String KEY_FOOTER_BUTTON_ALIGNED_END = "setup_compat_footer_button_aligned_end";
232 
233   // Disabled background alpha of the footer buttons
234   String KEY_FOOTER_BUTTON_DISABLED_ALPHA = "setup_compat_footer_button_disabled_alpha";
235 
236   // Disabled background color of the footer buttons
237   String KEY_FOOTER_BUTTON_DISABLED_BG_COLOR = "setup_compat_footer_button_disabled_bg_color";
238 
239   // Background color of the primary footer button
240   String KEY_FOOTER_PRIMARY_BUTTON_BG_COLOR = "setup_compat_footer_primary_button_bg_color";
241 
242   // Text color of the primary footer button
243   String KEY_FOOTER_PRIMARY_BUTTON_TEXT_COLOR = "setup_compat_footer_primary_button_text_color";
244 
245   // Margin start of the primary footer button
246   String KEY_FOOTER_PRIMARY_BUTTON_MARGIN_START = "setup_compat_footer_primary_button_margin_start";
247 
248   // Disabled text color of the primary footer button
249   String KEY_PRIMARY_BUTTON_DISABLED_TEXT_COLOR = "setup_compat_primary_button_disabled_text_color";
250 
251   // Background color of the secondary footer button
252   String KEY_FOOTER_SECONDARY_BUTTON_BG_COLOR = "setup_compat_footer_secondary_button_bg_color";
253 
254   // Text color of the secondary footer button
255   String KEY_FOOTER_SECONDARY_BUTTON_TEXT_COLOR = "setup_compat_footer_secondary_button_text_color";
256 
257   // Margin start of the secondary footer button
258   String KEY_FOOTER_SECONDARY_BUTTON_MARGIN_START =
259       "setup_compat_footer_secondary_button_margin_start";
260 
261   // Disabled text color of the secondary footer button
262   String KEY_SECONDARY_BUTTON_DISABLED_TEXT_COLOR =
263       "setup_compat_secondary_button_disabled_text_color";
264 
265   // Background color of layout
266   String KEY_LAYOUT_BACKGROUND_COLOR = "setup_design_layout_bg_color";
267 
268   // Margin start of the layout
269   String KEY_LAYOUT_MARGIN_START = "setup_design_layout_margin_start";
270 
271   // Margin end of the layout
272   String KEY_LAYOUT_MARGIN_END = "setup_design_layout_margin_end";
273 
274   // Middle horizontal spacing of the landscape layout
275   String KEY_LAND_MIDDLE_HORIZONTAL_SPACING = "setup_design_land_middle_horizontal_spacing";
276 
277   // Text size of the header
278   String KEY_HEADER_TEXT_SIZE = "setup_design_header_text_size";
279 
280   // Text color of the header
281   String KEY_HEADER_TEXT_COLOR = "setup_design_header_text_color";
282 
283   // Font family of the header
284   String KEY_HEADER_FONT_FAMILY = "setup_design_header_font_family";
285 
286   // Margin top of the header text
287   String KEY_HEADER_TEXT_MARGIN_TOP = "setup_design_header_text_margin_top";
288 
289   // Margin bottom of the header text
290   String KEY_HEADER_TEXT_MARGIN_BOTTOM = "setup_design_header_text_margin_bottom";
291 
292   // Gravity of the header, icon and description
293   String KEY_LAYOUT_GRAVITY = "setup_design_layout_gravity";
294 
295   // Margin top of the icon
296   String KEY_ICON_MARGIN_TOP = "setup_design_icon_margin_top";
297 
298   // Size of the icon
299   String KEY_ICON_SIZE = "setup_design_icon_size";
300 
301   // Background color of the header area
302   String KEY_HEADER_AREA_BACKGROUND_COLOR = "setup_design_header_area_background_color";
303 
304   // Margin bottom of the header container
305   String KEY_HEADER_CONTAINER_MARGIN_BOTTOM = "setup_design_header_container_margin_bottom";
306 
307   // Auto text size enabled status
308   String KEY_HEADER_AUTO_SIZE_ENABLED = "setup_design_header_auto_size_enabled";
309 
310   // Max text size of header when auto size enabled. Ignored if auto size is false.
311   String KEY_HEADER_AUTO_SIZE_MAX_TEXT_SIZE = "setup_design_header_auto_size_max_text_size";
312 
313   // Min text size of header when auto size enabled. Ignored if auto size is false.
314   String KEY_HEADER_AUTO_SIZE_MIN_TEXT_SIZE = "setup_design_header_auto_size_min_text_size";
315 
316   // The max lines of the max text size when auto size enabled. Ignored if auto size is false.
317   String KEY_HEADER_AUTO_SIZE_MAX_LINE_OF_MAX_SIZE =
318       "setup_design_header_auto_size_max_line_of_max_size";
319 
320   // Extra line spacing of header when auto size enabled. Ignored if auto size is false.
321   String KEY_HEADER_AUTO_SIZE_LINE_SPACING_EXTRA =
322       "setup_design_header_auto_size_line_spacing_extra";
323 
324   // Text size of the description
325   String KEY_DESCRIPTION_TEXT_SIZE = "setup_design_description_text_size";
326 
327   // Text color of the description
328   String KEY_DESCRIPTION_TEXT_COLOR = "setup_design_description_text_color";
329 
330   // Link text color of the description
331   String KEY_DESCRIPTION_LINK_TEXT_COLOR = "setup_design_description_link_text_color";
332 
333   // Font family of the description
334   String KEY_DESCRIPTION_FONT_FAMILY = "setup_design_description_font_family";
335 
336   // Font family of the link text
337   String KEY_DESCRIPTION_LINK_FONT_FAMILY = "setup_design_description_link_font_family";
338 
339   // Margin top of the header text
340   String KEY_DESCRIPTION_TEXT_MARGIN_TOP = "setup_design_description_text_margin_top";
341 
342   // Margin bottom of the header text
343   String KEY_DESCRIPTION_TEXT_MARGIN_BOTTOM = "setup_design_description_text_margin_bottom";
344 
345   // Font size of the account name
346   String KEY_ACCOUNT_NAME_TEXT_SIZE = "setup_design_account_name_text_size";
347 
348   // Font family of the account name
349   String KEY_ACCOUNT_NAME_FONT_FAMILY = "setup_design_account_name_font_family";
350 
351   // Margin end of the account avatar
352   String KEY_ACCOUNT_AVATAR_MARGIN_END = "setup_design_account_avatar_margin_end";
353 
354   // Size of the account avatar
355   String KEY_ACCOUNT_AVATAR_MAX_SIZE = "setup_design_account_avatar_size";
356 
357   // Text size of the body content text
358   String KEY_CONTENT_TEXT_SIZE = "setup_design_content_text_size";
359 
360   // Text color of the body content text
361   String KEY_CONTENT_TEXT_COLOR = "setup_design_content_text_color";
362 
363   // Link text color of the body content text
364   String KEY_CONTENT_LINK_TEXT_COLOR = "setup_design_content_link_text_color";
365 
366   // Font family of the body content text
367   String KEY_CONTENT_FONT_FAMILY = "setup_design_content_font_family";
368 
369   // Gravity of the body content text
370   String KEY_CONTENT_LAYOUT_GRAVITY = "setup_design_content_layout_gravity";
371 
372   // The padding top of the content
373   String KEY_CONTENT_PADDING_TOP = "setup_design_content_padding_top";
374 
375   // The text size of the content info.
376   String KEY_CONTENT_INFO_TEXT_SIZE = "setup_design_content_info_text_size";
377 
378   // The font family of the content info.
379   String KEY_CONTENT_INFO_FONT_FAMILY = "setup_design_content_info_font_family";
380 
381   // The text line spacing extra of the content info.
382   String KEY_CONTENT_INFO_LINE_SPACING_EXTRA = "setup_design_content_info_line_spacing_extra";
383 
384   // The icon size of the content info.
385   String KEY_CONTENT_INFO_ICON_SIZE = "setup_design_content_info_icon_size";
386 
387   // The icon margin end of the content info.
388   String KEY_CONTENT_INFO_ICON_MARGIN_END = "setup_design_content_info_icon_margin_end";
389 
390   // The padding top of the content info.
391   String KEY_CONTENT_INFO_PADDING_TOP = "setup_design_content_info_padding_top";
392 
393   // The padding bottom of the content info.
394   String KEY_CONTENT_INFO_PADDING_BOTTOM = "setup_design_content_info_padding_bottom";
395 
396   // The title text size of list items.
397   String KEY_ITEMS_TITLE_TEXT_SIZE = "setup_design_items_title_text_size";
398 
399   // The summary text size of list items.
400   String KEY_ITEMS_SUMMARY_TEXT_SIZE = "setup_design_items_summary_text_size";
401 
402   // The summary margin top of list items.
403   String KEY_ITEMS_SUMMARY_MARGIN_TOP = "setup_design_items_summary_margin_top";
404 
405   // The title font family of list items.
406   String KEY_ITEMS_TITLE_FONT_FAMILY = "setup_design_items_title_font_family";
407 
408   // The summary font family of list items.
409   String KEY_ITEMS_SUMMARY_FONT_FAMILY = "setup_design_items_summary_font_family";
410 
411   // The padding top of list items.
412   String KEY_ITEMS_PADDING_TOP = "setup_design_items_padding_top";
413 
414   // The padding bottom of list items.
415   String KEY_ITEMS_PADDING_BOTTOM = "setup_design_items_padding_bottom";
416 
417   // The minimum height of list items.
418   String KEY_ITEMS_MIN_HEIGHT = "setup_design_items_min_height";
419 
420   // The divider of list items are showing.
421   String KEY_ITEMS_DIVIDER_SHOWN = "setup_design_items_divider_shown";
422 
423   // The intrinsic width of the card view for foldable/tablet.
424   String KEY_CARD_VIEW_INTRINSIC_WIDTH = "setup_design_card_view_intrinsic_width";
425 
426   // The intrinsic height of the card view for foldable/tablet.
427   String KEY_CARD_VIEW_INTRINSIC_HEIGHT = "setup_design_card_view_intrinsic_height";
428 
429   // The animation of loading screen used in those activities which is non of below type.
430   String KEY_PROGRESS_ILLUSTRATION_DEFAULT = "progress_illustration_custom_default";
431 
432   // The animation of loading screen used in those activity which is processing account info or
433   // related functions.
434   // For example:com.google.android.setupwizard.LOAD_ADD_ACCOUNT_INTENT
435   String KEY_PROGRESS_ILLUSTRATION_ACCOUNT = "progress_illustration_custom_account";
436 
437   // The animation of loading screen used in those activity which is processing data connection.
438   // For example:com.android.setupwizard.CAPTIVE_PORTAL
439   String KEY_PROGRESS_ILLUSTRATION_CONNECTION = "progress_illustration_custom_connection";
440 
441   // The animation of loading screen used in those activities which is updating device.
442   // For example:com.google.android.setupwizard.COMPAT_EARLY_UPDATE
443   String KEY_PROGRESS_ILLUSTRATION_UPDATE = "progress_illustration_custom_update";
444 
445   // The animation of loading screen used in those activities which is updating device.
446   // For example:com.google.android.setupwizard.FINAL_HOLD
447   String KEY_PROGRESS_ILLUSTRATION_FINAL_HOLD = "final_hold_custom_illustration";
448 
449   // The minimum illustration display time, set to 0 may cause the illustration stuck
450   String KEY_PROGRESS_ILLUSTRATION_DISPLAY_MINIMUM_MS = "progress_illustration_display_minimum_ms";
451 
452   // The animation for S+ devices used in those screens waiting for non of below type.
453   String KEY_LOADING_LOTTIE_DEFAULT = "loading_animation_custom_default";
454 
455   // The animation for S+ devices used in those screens which is processing account info or related
456   // functions.
457   // For example:com.google.android.setupwizard.LOAD_ADD_ACCOUNT_INTENT
458   String KEY_LOADING_LOTTIE_ACCOUNT = "loading_animation_custom_account";
459 
460   // The animation for S+ devices used in those screens which is processing data connection.
461   // For example:com.android.setupwizard.CAPTIVE_PORTAL
462   String KEY_LOADING_LOTTIE_CONNECTION = "loading_animation_custom_connection";
463 
464   // The animation for S+ devices used in those screens which is updating devices.
465   // For example:com.google.android.setupwizard.COMPAT_EARLY_UPDATE
466   String KEY_LOADING_LOTTIE_UPDATE = "loading_animation_custom_update";
467 
468   // The animation for S+ devices used in those screens which is updating devices.
469   // For example:com.google.android.setupwizard.FINAL_HOLD
470   String KEY_LOADING_LOTTIE_FINAL_HOLD = "loading_animation_custom_final_hold";
471 
472   // A string-array to list all the key path and color map for default animation for light theme.
473   // For example: background:#FFFFFF
474   String KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_DEFAULT =
475       "loading_light_theme_customization_default";
476 
477   // A string-array to list all the key path and color map for account animation for light theme.
478   // For example: background:#FFFFFF
479   String KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_ACCOUNT =
480       "loading_light_theme_customization_account";
481 
482   // A string-array to list all the key path and color map for connection animation for light theme.
483   // For example: background:#FFFFFF
484   String KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_CONNECTION =
485       "loading_light_theme_customization_connection";
486 
487   // A string-array to list all the key path and color map for update animation for light theme.
488   // For example: background:#FFFFFF
489   String KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_UPDATE = "loading_light_theme_customization_update";
490 
491   // A string-array to list all the key path and color map for final hold animation for light theme.
492   // For example: background:#FFFFFF
493   String KEY_LOADING_LIGHT_THEME_CUSTOMIZATION_FINAL_HOLD =
494       "loading_light_theme_customization_final_hold";
495 
496   // A string-array to list all the key path and color map for default animation for dark theme.
497   // For example: background:#000000
498   String KEY_LOADING_DARK_THEME_CUSTOMIZATION_DEFAULT = "loading_dark_theme_customization_default";
499 
500   // A string-array to list all the key path and color map for account animation for dark theme.
501   // For example: background:#000000
502   String KEY_LOADING_DARK_THEME_CUSTOMIZATION_ACCOUNT = "loading_dark_theme_customization_account";
503 
504   // A string-array to list all the key path and color map for connection animation for dark theme.
505   // For example: background:#000000
506   String KEY_LOADING_DARK_THEME_CUSTOMIZATION_CONNECTION =
507       "loading_dark_theme_customization_connection";
508 
509   // A string-array to list all the key path and color map for update animation for dark theme.
510   // For example: background:#000000
511   String KEY_LOADING_DARK_THEME_CUSTOMIZATION_UPDATE = "loading_dark_theme_customization_update";
512 
513   // A string-array to list all the key path and color map for final hold animation for dark theme.
514   // For example: background:#000000
515   String KEY_LOADING_DARK_THEME_CUSTOMIZATION_FINAL_HOLD =
516       "loading_dark_theme_customization_final_hold";
517 
518   // The transition type between activities
519   String KEY_TRANSITION_TYPE = "setup_design_transition_type";
520 
521   // A padding top of the content frame of loading layout.
522   String KEY_LOADING_LAYOUT_CONTENT_PADDING_TOP = "loading_layout_content_padding_top";
523 
524   // A padding start of the content frame of loading layout.
525   String KEY_LOADING_LAYOUT_CONTENT_PADDING_START = "loading_layout_content_padding_start";
526 
527   // A padding end of the content frame of loading layout.
528   String KEY_LOADING_LAYOUT_CONTENT_PADDING_END = "loading_layout_content_padding_end";
529 
530   // A padding bottom of the content frame of loading layout.
531   String KEY_LOADING_LAYOUT_CONTENT_PADDING_BOTTOM = "loading_layout_content_padding_bottom";
532 
533   // A height of the header of loading layout.
534   String KEY_LOADING_LAYOUT_HEADER_HEIGHT = "loading_layout_header_height";
535 
536   // Use the fullscreen style lottie animation.
537   String KEY_LOADING_LAYOUT_FULL_SCREEN_ILLUSTRATION_ENABLED =
538       "loading_layout_full_screen_illustration_enabled";
539 
540   // Waiting the animation finished before process to the next page/action.
541   String KEY_LOADING_LAYOUT_WAIT_FOR_ANIMATION_FINISHED =
542       "loading_layout_wait_for_animation_finished";
543 
544   // A margin top of the content frame of progress bar.
545   String KEY_PROGRESS_BAR_MARGIN_TOP = "setup_design_progress_bar_margin_top";
546 
547   // A margin bottom of the content frame of progress bar.
548   String KEY_PROGRESS_BAR_MARGIN_BOTTOM = "setup_design_progress_bar_margin_bottom";
549 }
550