| Index: chrome/common/instant_messages.h
|
| diff --git a/chrome/common/instant_messages.h b/chrome/common/instant_messages.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e200116e2f07ed545b61375327181d9410ce16f3
|
| --- /dev/null
|
| +++ b/chrome/common/instant_messages.h
|
| @@ -0,0 +1,203 @@
|
| +// Copyright 2013 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// Multiply-included message file, hence no traditional include guard.
|
| +
|
| +#include <vector>
|
| +
|
| +#include "base/string16.h"
|
| +#include "chrome/common/instant_types.h"
|
| +#include "chrome/common/omnibox_types.h"
|
| +#include "content/public/common/page_transition_types.h"
|
| +#include "googleurl/src/gurl.h"
|
| +#include "ipc/ipc_message_macros.h"
|
| +#include "ui/base/window_open_disposition.h"
|
| +#include "ui/gfx/rect.h"
|
| +
|
| +#define IPC_MESSAGE_START InstantMsgStart
|
| +
|
| +IPC_ENUM_TRAITS(InstantCompleteBehavior)
|
| +IPC_ENUM_TRAITS(InstantSizeUnits)
|
| +IPC_ENUM_TRAITS(InstantSuggestionType)
|
| +IPC_ENUM_TRAITS(OmniboxFocusState)
|
| +IPC_ENUM_TRAITS(ThemeBackgroundImageAlignment)
|
| +IPC_ENUM_TRAITS(ThemeBackgroundImageTiling)
|
| +
|
| +IPC_STRUCT_TRAITS_BEGIN(InstantAutocompleteResult)
|
| + IPC_STRUCT_TRAITS_MEMBER(provider)
|
| + IPC_STRUCT_TRAITS_MEMBER(type)
|
| + IPC_STRUCT_TRAITS_MEMBER(description)
|
| + IPC_STRUCT_TRAITS_MEMBER(destination_url)
|
| + IPC_STRUCT_TRAITS_MEMBER(transition)
|
| + IPC_STRUCT_TRAITS_MEMBER(relevance)
|
| +IPC_STRUCT_TRAITS_END()
|
| +
|
| +IPC_STRUCT_TRAITS_BEGIN(InstantSuggestion)
|
| + IPC_STRUCT_TRAITS_MEMBER(text)
|
| + IPC_STRUCT_TRAITS_MEMBER(behavior)
|
| + IPC_STRUCT_TRAITS_MEMBER(type)
|
| +IPC_STRUCT_TRAITS_END()
|
| +
|
| +IPC_STRUCT_TRAITS_BEGIN(MostVisitedItem)
|
| + IPC_STRUCT_TRAITS_MEMBER(url)
|
| + IPC_STRUCT_TRAITS_MEMBER(title)
|
| +IPC_STRUCT_TRAITS_END()
|
| +
|
| +IPC_STRUCT_TRAITS_BEGIN(ThemeBackgroundInfo)
|
| + IPC_STRUCT_TRAITS_MEMBER(color_r)
|
| + IPC_STRUCT_TRAITS_MEMBER(color_g)
|
| + IPC_STRUCT_TRAITS_MEMBER(color_b)
|
| + IPC_STRUCT_TRAITS_MEMBER(color_a)
|
| + IPC_STRUCT_TRAITS_MEMBER(theme_id)
|
| + IPC_STRUCT_TRAITS_MEMBER(image_horizontal_alignment)
|
| + IPC_STRUCT_TRAITS_MEMBER(image_vertical_alignment)
|
| + IPC_STRUCT_TRAITS_MEMBER(image_tiling)
|
| + IPC_STRUCT_TRAITS_MEMBER(image_height)
|
| +IPC_STRUCT_TRAITS_END()
|
| +
|
| +// -----------------------------------------
|
| +// Messages from the browser to the renderer
|
| +// -----------------------------------------
|
| +
|
| +// Requests the renderer to determine if the page supports the searchbox API.
|
| +// Usually sent whenever the browser notices that the page has navigated. The
|
| +// reply is sent in ChromeViewHostMsg_SearchBoxInstantSupportDetermined. The
|
| +// browser uses the response to decide whether to continue using the page as
|
| +// an Instant preview.
|
| +IPC_MESSAGE_ROUTED0(ChromeViewMsg_SearchBoxDetermineInstantSupport)
|
| +
|
| +// Notifies the renderer that the omnibox contents have changed. The page uses
|
| +// this to fetch and show suggestions and/or preview results for the query.
|
| +// If verbatim is true, the page predicts the query the user meant to type and
|
| +// fetches results for the prediction. If verbatim is false, the query is taken
|
| +// literally (no prediction is made).
|
| +IPC_MESSAGE_ROUTED4(ChromeViewMsg_SearchBoxChange,
|
| + string16 /* query */,
|
| + bool /* verbatim */,
|
| + size_t /* selection_start */,
|
| + size_t /* selection_end */)
|
| +
|
| +// Notifies the renderer that the user hit Enter in the omnibox. The page uses
|
| +// this to know that the user "committed" the query.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxSubmit,
|
| + string16 /* query */)
|
| +
|
| +// Informs the renderer about newly available autocomplete results. The page
|
| +// takes these into account when presenting a list of suggestions.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxAutocompleteResults,
|
| + std::vector<InstantAutocompleteResult> /* results */)
|
| +
|
| +// Requests the page to select an entry in its suggestions list, |count| items
|
| +// away from the currently selected entry (positive to move down the list,
|
| +// negative to move up).
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxSelect,
|
| + int /* count */)
|
| +
|
| +// Notifies the renderer that the user hit Escape after having arrowed down in
|
| +// the suggestions list, thus cancelling the selection. The omnibox has
|
| +// reverted to the given query. The page should reset the selection to the
|
| +// first suggestion in its list.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxCancel,
|
| + string16 /* query */)
|
| +
|
| +// Notifies the renderer that the omnibox lost focus, because the user clicked
|
| +// on the Instant overlay. The page uses this to know that the user implicitly
|
| +// accepted the query by interacting with the overlay.
|
| +// TODO(sreeram): Only used in v1 API. Remove when v1 is no longer supported.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxBlur,
|
| + string16 /* query */)
|
| +
|
| +// Notifies the renderer that the size of the omnibox popup has changed. The
|
| +// page uses this to offset its results so that they don't overlap the popup.
|
| +// TODO(sreeram): Only used in v1 API. Remove when v1 is no longer supported.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxPopupBounds,
|
| + gfx::Rect /* bounds */)
|
| +
|
| +// Informs the renderer about the omnibox bounds. The page uses this to align
|
| +// its suggestions with the omnibox.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxOmniboxBounds,
|
| + gfx::Rect /* bounds */)
|
| +
|
| +// Notifies the renderer whether the omnibox is capturing key strokes (i.e.,
|
| +// even if it appears to not have focus).
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxKeyCaptureChanged,
|
| + bool /* is_key_capture_enabled */)
|
| +
|
| +// Informs the renderer whether the user prefers to see results preview or just
|
| +// suggestions. The page should respect this preference, but it isn't enforced.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxDisplayInstantResults,
|
| + bool /* display_instant_results */)
|
| +
|
| +// Informs the renderer about a custom theme the user has installed. The page
|
| +// uses this to match its background to the theme.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxThemeChanged,
|
| + ThemeBackgroundInfo /* theme_info */)
|
| +
|
| +// Informs the renderer of the font and size of the omnibox text. The page uses
|
| +// this to render its suggestions in the same font and size.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewMsg_SearchBoxFontChanged,
|
| + string16 /* font_name */,
|
| + size_t /* font_size */)
|
| +
|
| +// Informs the renderer about newly available most visited items. The page
|
| +// shows these when in NTP (New Tab Page) mode.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxMostVisitedItems,
|
| + std::vector<MostVisitedItem> /* items */)
|
| +
|
| +// Informs the renderer that the page should be allowed to access and request
|
| +// resources from the chrome-search:// scheme.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewMsg_SearchBoxGrantChromeSearchAccessFromOrigin,
|
| + GURL /* origin_url */)
|
| +
|
| +// -----------------------------------------
|
| +// Messages from the renderer to the browser
|
| +// -----------------------------------------
|
| +
|
| +// Informs the browser of whether the page supports the searchbox API.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_SearchBoxInstantSupportDetermined,
|
| + int /* page_id */,
|
| + bool /* supports_instant */)
|
| +
|
| +// Informs the browser of an available query completion.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_SearchBoxSetSuggestion,
|
| + int /* page_id */,
|
| + InstantSuggestion /* suggestion */)
|
| +
|
| +// Requests the browser to initiate a navigation to the given URL. This is
|
| +// required since the page can't navigate to privileged destinations (such as
|
| +// chrome:// URLs) or history URLs (which are hidden from the page using
|
| +// restricted IDs) on its own.
|
| +IPC_MESSAGE_ROUTED4(ChromeViewHostMsg_SearchBoxNavigateToURL,
|
| + int /* page_id */,
|
| + GURL /* url */,
|
| + content::PageTransition /* transition */,
|
| + WindowOpenDisposition /* disposition */)
|
| +
|
| +// Requests the browser to show the page as an Instant overlay.
|
| +IPC_MESSAGE_ROUTED3(ChromeViewHostMsg_SearchBoxShowOverlay,
|
| + int /* page_id */,
|
| + int /* height */,
|
| + InstantSizeUnits /* height_units */)
|
| +
|
| +// Requests the omnibox to be focused visibly, invisibly or not at all.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_SearchBoxSetFocusState,
|
| + int /* page_id */,
|
| + OmniboxFocusState /* focus_state */)
|
| +
|
| +// Requests the browser to delete a URL from the most visited list. The page
|
| +// sends this when the user clicks the "x" on a most visited item on the page.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_SearchBoxDeleteMostVisitedItem,
|
| + int /* page_id */,
|
| + GURL /* url */)
|
| +
|
| +// Requests the browser to undo deletion of a URL from the most visited list.
|
| +// The page sends this when the user changes their mind after deleting the URL
|
| +// from the most visited list.
|
| +IPC_MESSAGE_ROUTED2(ChromeViewHostMsg_SearchBoxUndoMostVisitedItemDeletion,
|
| + int /* page_id */,
|
| + GURL /* url */)
|
| +
|
| +// Requests the browser to undo all URL deletions from the most visited list.
|
| +IPC_MESSAGE_ROUTED1(ChromeViewHostMsg_SearchBoxUndoAllMostVisitedItemDeletions,
|
| + int /* page_id */)
|
|
|