1 // Copyright 2014 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 // The structures here roughly mirror those from autocomplete. 6 7 struct AutocompleteAdditionalInfo { 8 string key; 9 string value; 10 }; 11 12 struct AutocompleteMatchMojo { 13 string? provider_name; 14 // Only meaningful if |provider_name| is valid. 15 bool provider_done; 16 int32 relevance; 17 bool deletable; 18 string fill_into_edit; 19 string inline_autocompletion; 20 string destination_url; 21 string contents; 22 string description; 23 int32 transition; 24 bool is_history_what_you_typed_match; 25 bool allowed_to_be_default_match; 26 string type; 27 string? associated_keyword; 28 string keyword; 29 bool starred; 30 int32 duplicates; 31 bool from_previous; 32 AutocompleteAdditionalInfo[] additional_info; 33 }; 34 35 struct AutocompleteResultsForProviderMojo { 36 string provider_name; 37 AutocompleteMatchMojo[] results; 38 }; 39 40 struct OmniboxResultMojo { 41 bool done; 42 // Time delta since the request was started, in milliseconds. 43 int32 time_since_omnibox_started_ms; 44 string host; 45 bool is_typed_host; 46 AutocompleteMatchMojo[] combined_results; 47 AutocompleteResultsForProviderMojo[] results_by_provider; 48 }; 49 50 [Client=OmniboxPage] 51 interface OmniboxUIHandlerMojo { 52 StartOmniboxQuery(string input_string, 53 int32 cursor_position, 54 bool prevent_inline_autocomplete, 55 bool prefer_keyword, 56 int32 page_classification); 57 }; 58 59 interface OmniboxPage { 60 HandleNewAutocompleteResult(OmniboxResultMojo result); 61 }; 62