| // Copyright 2024 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = 'proto2'; |
| |
| option optimize_for = LITE_RUNTIME; |
| option java_package = 'org.chromium.components.omnibox'; |
| option java_outer_classname = 'AnswerDataProto'; |
| |
| package omnibox; |
| |
| // Data to render an individual answer block. |
| // Next ID: 7 |
| message AnswerData { |
| optional FormattedString headline = 1; |
| optional FormattedString subhead = 2; |
| optional Image image = 5; |
| |
| reserved 3, 4; |
| } |
| |
| message FormattedString { |
| // The full text to show. The formatting and indices used are all based off |
| // UTF-16 code units. |
| optional string text = 1; |
| |
| // The readaloud text for accessibility. Only filled out if it is different |
| // than the text (i.e. for cases with unicode chars like stars). |
| optional string a11y_text = 3; |
| |
| // A list of fragments with the styling data. Each platform can choose to |
| // concatenate the fragments or use the full text above for simplicity. |
| repeated FormattedStringFragment fragments = 2; |
| |
| // A substring of the full text with styling data. The concatenation of |
| // all these fragments will be the full string. |
| message FormattedStringFragment { |
| // The start index of the fragment within the full text. The index is |
| // based off UTF-16 code units. |
| optional uint32 start_index = 1; |
| // The text of the fragment. |
| optional string text = 2; |
| optional ColorType color = 3; |
| |
| reserved 4 to 9; |
| } |
| enum ColorType { |
| COLOR_UNKNOWN = 0; |
| COLOR_CANVAS = 1; |
| COLOR_SURFACE = 2; |
| COLOR_PRIMARY = 3; |
| COLOR_TERTIARY = 4; |
| COLOR_ON_TERTIARY = 5; |
| COLOR_ON_SURFACE_LINK_VISITED = 6; |
| COLOR_ON_SURFACE_DEFAULT = 7; |
| COLOR_ON_SURFACE_POSITIVE = 8; |
| COLOR_ON_SURFACE_NEGATIVE = 9; |
| COLOR_ON_SURFACE_EMPHASIS = 10; |
| COLOR_ON_SURFACE_DEEMPHASIS = 11; |
| COLOR_OUTLINE_DEFAULT = 12; |
| COLOR_SUBTITLE_TEXT = 13; |
| } |
| } |
| |
| message Image { |
| optional string url = 1; |
| optional ImageType type = 2; |
| |
| enum ImageType { |
| TYPE_UNKNOWN = 0; |
| TYPE_LARGE = 1; |
| TYPE_SMALL = 2; |
| } |
| |
| reserved 3, 4; |
| } |