Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(231)

Side by Side Diff: chrome/renderer/searchbox/searchbox.h

Issue 12498002: InstantExtended: Adding InstantRestrictedIDCache. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merging conflicts. Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_ 5 #ifndef CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_
6 #define CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_ 6 #define CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/string16.h" 11 #include "base/string16.h"
12 #include "chrome/common/instant_restricted_id_cache.h"
12 #include "chrome/common/instant_types.h" 13 #include "chrome/common/instant_types.h"
13 #include "chrome/common/search_types.h" 14 #include "chrome/common/search_types.h"
14 #include "content/public/common/page_transition_types.h" 15 #include "content/public/common/page_transition_types.h"
15 #include "content/public/renderer/render_view_observer.h" 16 #include "content/public/renderer/render_view_observer.h"
16 #include "content/public/renderer/render_view_observer_tracker.h" 17 #include "content/public/renderer/render_view_observer_tracker.h"
17 #include "ui/base/window_open_disposition.h" 18 #include "ui/base/window_open_disposition.h"
18 #include "ui/gfx/rect.h" 19 #include "ui/gfx/rect.h"
19 20
20 namespace content { 21 namespace content {
21 class RenderView; 22 class RenderView;
(...skipping 22 matching lines...) Expand all
44 void StartCapturingKeyStrokes(); 45 void StartCapturingKeyStrokes();
45 46
46 // Sends ChromeViewHostMsg_StopCapturingKeyStrokes to the browser. 47 // Sends ChromeViewHostMsg_StopCapturingKeyStrokes to the browser.
47 void StopCapturingKeyStrokes(); 48 void StopCapturingKeyStrokes();
48 49
49 // Sends ChromeViewHostMsg_SearchBoxNavigate to the browser. 50 // Sends ChromeViewHostMsg_SearchBoxNavigate to the browser.
50 void NavigateToURL(const GURL& url, 51 void NavigateToURL(const GURL& url,
51 content::PageTransition transition, 52 content::PageTransition transition,
52 WindowOpenDisposition disposition); 53 WindowOpenDisposition disposition);
53 54
54 // Sends ChromeViewHostMsg_SearchBoxDeleteMostVisitedItem to the browser.
55 void DeleteMostVisitedItem(uint64 most_visited_item_id);
56
57 // Sends ChromeViewHostMsg_SearchBoxUndoMostVisitedDeletion to the browser.
58 void UndoMostVisitedDeletion(uint64 most_visited_item_id);
59
60 // Sends ChromeViewHostMsg_SearchBoxUndoAllMostVisitedDeletions to the
61 // browser.
62 void UndoAllMostVisitedDeletions();
63
64 const string16& query() const { return query_; } 55 const string16& query() const { return query_; }
65 bool verbatim() const { return verbatim_; } 56 bool verbatim() const { return verbatim_; }
66 size_t selection_start() const { return selection_start_; } 57 size_t selection_start() const { return selection_start_; }
67 size_t selection_end() const { return selection_end_; } 58 size_t selection_end() const { return selection_end_; }
68 int results_base() const { return results_base_; }
69 bool is_key_capture_enabled() const { return is_key_capture_enabled_; } 59 bool is_key_capture_enabled() const { return is_key_capture_enabled_; }
70 bool display_instant_results() const { return display_instant_results_; } 60 bool display_instant_results() const { return display_instant_results_; }
71 const string16& omnibox_font() const { return omnibox_font_; } 61 const string16& omnibox_font() const { return omnibox_font_; }
72 size_t omnibox_font_size() const { return omnibox_font_size_; } 62 size_t omnibox_font_size() const { return omnibox_font_size_; }
73 63
74 // In extended Instant, returns the start-edge margin of the location bar in 64 // In extended Instant, returns the start-edge margin of the location bar in
75 // screen pixels. 65 // screen pixels.
76 int GetStartMargin() const; 66 int GetStartMargin() const;
77 67
78 // Returns the bounds of the omnibox popup in screen coordinates. 68 // Returns the bounds of the omnibox popup in screen coordinates.
79 gfx::Rect GetPopupBounds() const; 69 gfx::Rect GetPopupBounds() const;
80 70
81 const std::vector<InstantAutocompleteResult>& GetAutocompleteResults();
82 // Searchbox retains ownership of this object.
83 const InstantAutocompleteResult*
84 GetAutocompleteResultWithId(size_t autocomplete_result_id) const;
85 const ThemeBackgroundInfo& GetThemeBackgroundInfo(); 71 const ThemeBackgroundInfo& GetThemeBackgroundInfo();
86 72
87 // Most Visited items. 73 // --- Autocomplete result APIs.
88 const std::vector<InstantMostVisitedItem>& GetMostVisitedItems() const; 74
75 // Returns the most recent InstantAutocompleteResults sent by the browser.
76 void GetAutocompleteResults(
77 std::vector<InstantAutocompleteResultIDPair>* results) const;
78
79 // If the |autocomplete_result_id| is found in the cache, sets |item| to it
80 // and returns true.
81 bool GetAutocompleteResultWithId(InstantRestrictedID autocomplete_result_id,
sreeram 2013/03/19 21:36:17 GetAutocompleteResultWithId -> GetAutocompleteRes
Shishir 2013/03/19 22:20:20 Done.
82 InstantAutocompleteResult* result) const;
83
84 // --- Most Visited items APIs.
85
86 // Returns the latest most visited items sent by the browser.
87 void GetMostVisitedItems(
88 std::vector<InstantMostVisitedItemIDPair>* items) const;
89
90 // If the |most_visited_item_id| is found in the cache, sets |item| to it
91 // and returns true.
92 bool GetMostVisitedItemWithID(InstantRestrictedID most_visited_item_id,
93 InstantMostVisitedItem* item) const;
94
95 // Sends ChromeViewHostMsg_SearchBoxDeleteMostVisitedItem to the browser.
96 void DeleteMostVisitedItem(InstantRestrictedID most_visited_item_id);
97
98 // Sends ChromeViewHostMsg_SearchBoxUndoMostVisitedDeletion to the browser.
99 void UndoMostVisitedDeletion(InstantRestrictedID most_visited_item_id);
100
101 // Sends ChromeViewHostMsg_SearchBoxUndoAllMostVisitedDeletions to the
102 // browser.
103 void UndoAllMostVisitedDeletions();
89 104
90 private: 105 private:
91 // Overridden from content::RenderViewObserver: 106 // Overridden from content::RenderViewObserver:
92 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 107 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
93 virtual void DidClearWindowObject(WebKit::WebFrame* frame) OVERRIDE; 108 virtual void DidClearWindowObject(WebKit::WebFrame* frame) OVERRIDE;
94 109
95 void OnChange(const string16& query, 110 void OnChange(const string16& query,
96 bool verbatim, 111 bool verbatim,
97 size_t selection_start, 112 size_t selection_start,
98 size_t selection_end); 113 size_t selection_end);
99 void OnSubmit(const string16& query); 114 void OnSubmit(const string16& query);
100 void OnCancel(const string16& query); 115 void OnCancel(const string16& query);
101 void OnPopupResize(const gfx::Rect& bounds); 116 void OnPopupResize(const gfx::Rect& bounds);
102 void OnMarginChange(int margin, int width); 117 void OnMarginChange(int margin, int width);
103 void OnDetermineIfPageSupportsInstant(); 118 void OnDetermineIfPageSupportsInstant();
104 void OnAutocompleteResults( 119 void OnAutocompleteResults(
105 const std::vector<InstantAutocompleteResult>& results); 120 const std::vector<InstantAutocompleteResult>& results);
106 void OnUpOrDownKeyPressed(int count); 121 void OnUpOrDownKeyPressed(int count);
107 void OnCancelSelection(const string16& query); 122 void OnCancelSelection(const string16& query);
108 void OnKeyCaptureChange(bool is_key_capture_enabled); 123 void OnKeyCaptureChange(bool is_key_capture_enabled);
109 void OnSetDisplayInstantResults(bool display_instant_results); 124 void OnSetDisplayInstantResults(bool display_instant_results);
110 void OnThemeChanged(const ThemeBackgroundInfo& theme_info); 125 void OnThemeChanged(const ThemeBackgroundInfo& theme_info);
111 void OnThemeAreaHeightChanged(int height); 126 void OnThemeAreaHeightChanged(int height);
112 void OnFontInformationReceived(const string16& omnibox_font, 127 void OnFontInformationReceived(const string16& omnibox_font,
113 size_t omnibox_font_size); 128 size_t omnibox_font_size);
114 void OnGrantChromeSearchAccessFromOrigin(const GURL& origin_url); 129 void OnGrantChromeSearchAccessFromOrigin(const GURL& origin_url);
115 void OnMostVisitedChanged(const std::vector<InstantMostVisitedItem>& items); 130 void OnMostVisitedChanged(
131 const std::vector<InstantMostVisitedItemIDPair>& items);
116 132
117 // Returns the current zoom factor of the render view or 1 on failure. 133 // Returns the current zoom factor of the render view or 1 on failure.
118 double GetZoom() const; 134 double GetZoom() const;
119 135
120 // Sets the searchbox values to their initial value. 136 // Sets the searchbox values to their initial value.
121 void Reset(); 137 void Reset();
122 138
123 string16 query_; 139 string16 query_;
124 bool verbatim_; 140 bool verbatim_;
125 size_t selection_start_; 141 size_t selection_start_;
126 size_t selection_end_; 142 size_t selection_end_;
127 size_t results_base_;
128 int start_margin_; 143 int start_margin_;
129 gfx::Rect popup_bounds_; 144 gfx::Rect popup_bounds_;
130 std::vector<InstantAutocompleteResult> autocomplete_results_;
131 size_t last_results_base_;
132 std::vector<InstantAutocompleteResult> last_autocomplete_results_;
133 bool is_key_capture_enabled_; 145 bool is_key_capture_enabled_;
134 ThemeBackgroundInfo theme_info_; 146 ThemeBackgroundInfo theme_info_;
135 bool display_instant_results_; 147 bool display_instant_results_;
136 string16 omnibox_font_; 148 string16 omnibox_font_;
137 size_t omnibox_font_size_; 149 size_t omnibox_font_size_;
138 std::vector<InstantMostVisitedItem> most_visited_items_; 150 InstantRestrictedIDCache<InstantAutocompleteResult>
151 autocomplete_results_cache_;
152 InstantRestrictedIDCache<InstantMostVisitedItem> most_visited_items_cache_;
139 153
140 DISALLOW_COPY_AND_ASSIGN(SearchBox); 154 DISALLOW_COPY_AND_ASSIGN(SearchBox);
141 }; 155 };
142 156
143 #endif // CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_ 157 #endif // CHROME_RENDERER_SEARCHBOX_SEARCHBOX_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698