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

Side by Side Diff: chrome/browser/ui/search/instant_page.h

Issue 12851023: Refactor omnibox focus API into a single method. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 8 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 2013 The Chromium Authors. All rights reserved. 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 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_BROWSER_UI_SEARCH_INSTANT_PAGE_H_ 5 #ifndef CHROME_BROWSER_UI_SEARCH_INSTANT_PAGE_H_
6 #define CHROME_BROWSER_UI_SEARCH_INSTANT_PAGE_H_ 6 #define CHROME_BROWSER_UI_SEARCH_INSTANT_PAGE_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
11 #include "base/compiler_specific.h" 11 #include "base/compiler_specific.h"
12 #include "base/string16.h" 12 #include "base/string16.h"
13 #include "chrome/common/instant_types.h" 13 #include "chrome/common/instant_types.h"
14 #include "chrome/common/omnibox_focus_state.h"
14 #include "content/public/browser/web_contents_observer.h" 15 #include "content/public/browser/web_contents_observer.h"
15 #include "content/public/common/page_transition_types.h" 16 #include "content/public/common/page_transition_types.h"
16 17
17 class GURL; 18 class GURL;
18 19
19 namespace content { 20 namespace content {
20 class WebContents; 21 class WebContents;
21 } 22 }
22 23
23 namespace gfx { 24 namespace gfx {
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 virtual void SetSuggestions( 59 virtual void SetSuggestions(
59 const content::WebContents* contents, 60 const content::WebContents* contents,
60 const std::vector<InstantSuggestion>& suggestions) = 0; 61 const std::vector<InstantSuggestion>& suggestions) = 0;
61 62
62 // Called when the page wants to be shown. Usually in response to Update() 63 // Called when the page wants to be shown. Usually in response to Update()
63 // or SendAutocompleteResults(). 64 // or SendAutocompleteResults().
64 virtual void ShowInstantOverlay(const content::WebContents* contents, 65 virtual void ShowInstantOverlay(const content::WebContents* contents,
65 int height, 66 int height,
66 InstantSizeUnits units) = 0; 67 InstantSizeUnits units) = 0;
67 68
68 // Called when the page wants the omnibox to be focused. 69 // Called when the page wants the omnibox to be focused. |state| specifies
69 virtual void FocusOmnibox(const content::WebContents* contents) = 0; 70 // the omnibox focus state.
70 71 virtual void FocusOmnibox(const content::WebContents* contents,
71 // Called when the page wants the omnibox to start capturing user key 72 OmniboxFocusState state) = 0;
72 // strokes. If this call is processed successfully, the omnibox will not
73 // look focused visibly but any user key strokes will go to the omnibox.
74 // Currently, this is implemented by focusing the omnibox invisibly.
75 virtual void StartCapturingKeyStrokes(
76 const content::WebContents* contents) = 0;
77
78 // Called when the page wants the omnibox to stop capturing user key
79 // strokes.
80 virtual void StopCapturingKeyStrokes(content::WebContents* contents) = 0;
81 73
82 // Called when the page wants to navigate to |url|. Usually used by the 74 // Called when the page wants to navigate to |url|. Usually used by the
83 // page to navigate to privileged destinations (e.g. chrome:// URLs) or to 75 // page to navigate to privileged destinations (e.g. chrome:// URLs) or to
84 // navigate to URLs that are hidden from the page using Restricted IDs (rid 76 // navigate to URLs that are hidden from the page using Restricted IDs (rid
85 // in the API). 77 // in the API).
86 virtual void NavigateToURL(const content::WebContents* contents, 78 virtual void NavigateToURL(const content::WebContents* contents,
87 const GURL& url, 79 const GURL& url,
88 content::PageTransition transition, 80 content::PageTransition transition,
89 WindowOpenDisposition disposition) = 0; 81 WindowOpenDisposition disposition) = 0;
90 82
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 // These functions are called before processing messages received from the 189 // These functions are called before processing messages received from the
198 // page. By default, all messages are handled, but any derived classes may 190 // page. By default, all messages are handled, but any derived classes may
199 // choose to ingore some or all of the received messages by overriding these 191 // choose to ingore some or all of the received messages by overriding these
200 // methods. 192 // methods.
201 virtual bool ShouldProcessRenderViewCreated(); 193 virtual bool ShouldProcessRenderViewCreated();
202 virtual bool ShouldProcessRenderViewGone(); 194 virtual bool ShouldProcessRenderViewGone();
203 virtual bool ShouldProcessAboutToNavigateMainFrame(); 195 virtual bool ShouldProcessAboutToNavigateMainFrame();
204 virtual bool ShouldProcessSetSuggestions(); 196 virtual bool ShouldProcessSetSuggestions();
205 virtual bool ShouldProcessShowInstantOverlay(); 197 virtual bool ShouldProcessShowInstantOverlay();
206 virtual bool ShouldProcessFocusOmnibox(); 198 virtual bool ShouldProcessFocusOmnibox();
207 virtual bool ShouldProcessStartCapturingKeyStrokes();
208 virtual bool ShouldProcessStopCapturingKeyStrokes();
209 virtual bool ShouldProcessNavigateToURL(); 199 virtual bool ShouldProcessNavigateToURL();
210 200
211 private: 201 private:
212 // Overridden from content::WebContentsObserver: 202 // Overridden from content::WebContentsObserver:
213 virtual void RenderViewCreated( 203 virtual void RenderViewCreated(
214 content::RenderViewHost* render_view_host) OVERRIDE; 204 content::RenderViewHost* render_view_host) OVERRIDE;
215 virtual void DidFinishLoad( 205 virtual void DidFinishLoad(
216 int64 frame_id, 206 int64 frame_id,
217 const GURL& validated_url, 207 const GURL& validated_url,
218 bool is_main_frame, 208 bool is_main_frame,
219 content::RenderViewHost* render_view_host) OVERRIDE; 209 content::RenderViewHost* render_view_host) OVERRIDE;
220 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; 210 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
221 virtual void RenderViewGone(base::TerminationStatus status) OVERRIDE; 211 virtual void RenderViewGone(base::TerminationStatus status) OVERRIDE;
222 virtual void DidCommitProvisionalLoadForFrame( 212 virtual void DidCommitProvisionalLoadForFrame(
223 int64 frame_id, 213 int64 frame_id,
224 bool is_main_frame, 214 bool is_main_frame,
225 const GURL& url, 215 const GURL& url,
226 content::PageTransition transition_type, 216 content::PageTransition transition_type,
227 content::RenderViewHost* render_view_host) OVERRIDE; 217 content::RenderViewHost* render_view_host) OVERRIDE;
228 218
229 void OnSetSuggestions(int page_id, 219 void OnSetSuggestions(int page_id,
230 const std::vector<InstantSuggestion>& suggestions); 220 const std::vector<InstantSuggestion>& suggestions);
231 void OnInstantSupportDetermined(int page_id, bool supports_instant); 221 void OnInstantSupportDetermined(int page_id, bool supports_instant);
232 void OnShowInstantOverlay(int page_id, 222 void OnShowInstantOverlay(int page_id,
233 int height, 223 int height,
234 InstantSizeUnits units); 224 InstantSizeUnits units);
235 void OnFocusOmnibox(int page_id); 225 void OnFocusOmnibox(int page_id, OmniboxFocusState state);
236 void OnStartCapturingKeyStrokes(int page_id);
237 void OnStopCapturingKeyStrokes(int page_id);
238 void OnSearchBoxNavigate(int page_id, 226 void OnSearchBoxNavigate(int page_id,
239 const GURL& url, 227 const GURL& url,
240 content::PageTransition transition, 228 content::PageTransition transition,
241 WindowOpenDisposition disposition); 229 WindowOpenDisposition disposition);
242 void OnDeleteMostVisitedItem(InstantRestrictedID most_visited_item_id); 230 void OnDeleteMostVisitedItem(InstantRestrictedID most_visited_item_id);
243 void OnUndoMostVisitedDeletion(InstantRestrictedID most_visited_item_id); 231 void OnUndoMostVisitedDeletion(InstantRestrictedID most_visited_item_id);
244 void OnUndoAllMostVisitedDeletions(); 232 void OnUndoAllMostVisitedDeletions();
245 233
246 Delegate* const delegate_; 234 Delegate* const delegate_;
247 bool supports_instant_; 235 bool supports_instant_;
248 236
249 DISALLOW_COPY_AND_ASSIGN(InstantPage); 237 DISALLOW_COPY_AND_ASSIGN(InstantPage);
250 }; 238 };
251 239
252 #endif // CHROME_BROWSER_UI_SEARCH_INSTANT_PAGE_H_ 240 #endif // CHROME_BROWSER_UI_SEARCH_INSTANT_PAGE_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/search/instant_controller.cc ('k') | chrome/browser/ui/search/instant_page.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698