Views Omnibox: tolerate minor click-to-select-all dragging.
[chromium-blink-merge.git] / ui / app_list / views / search_result_list_view_delegate.h
blob405094b31a500071b5b2c3be00cde1c2a3693b0f
1 // Copyright 2013 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.
5 #ifndef UI_APP_LIST_VIEWS_SEARCH_RESULT_LIST_VIEW_DELEGATE_H_
6 #define UI_APP_LIST_VIEWS_SEARCH_RESULT_LIST_VIEW_DELEGATE_H_
8 #include "ui/app_list/app_list_export.h"
10 namespace app_list {
12 class SearchResult;
14 class APP_LIST_EXPORT SearchResultListViewDelegate {
15 public:
16 // Invoked to open given |result|. |event_flags| contains the flags of the
17 // keyboard/mouse event that triggers the "open" request. Delegate could use
18 // the |event_flags| information to choose different ways to open the result.
19 virtual void OpenResult(SearchResult* result,
20 int event_flags) = 0;
22 // Called to invoke a custom action on |result|. |action_index| corresponds
23 // to the index of the icon in |result.action_icons()| that was activated.
24 virtual void InvokeResultAction(SearchResult* result,
25 int action_index,
26 int event_flags) = 0;
28 // Called when the app represented by |result| is installed.
29 virtual void OnResultInstalled(SearchResult* result) = 0;
31 // Called when the app represented by |result| is uninstalled.
32 virtual void OnResultUninstalled(SearchResult* result) = 0;
34 protected:
35 virtual ~SearchResultListViewDelegate() {}
38 } // namespace app_list
40 #endif // UI_APP_LIST_VIEWS_SEARCH_RESULT_LIST_VIEW_DELEGATE_H_