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

Side by Side Diff: chrome/browser/instant/instant_loader.h

Issue 12001002: InstantExtended: Transient naventry for preview. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Save old transient entry; update URL. Created 7 years, 11 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_BROWSER_INSTANT_INSTANT_LOADER_H_ 5 #ifndef CHROME_BROWSER_INSTANT_INSTANT_LOADER_H_
6 #define CHROME_BROWSER_INSTANT_INSTANT_LOADER_H_ 6 #define CHROME_BROWSER_INSTANT_INSTANT_LOADER_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 10 matching lines...) Expand all
21 class InstantController; 21 class InstantController;
22 struct ThemeBackgroundInfo; 22 struct ThemeBackgroundInfo;
23 23
24 namespace chrome { 24 namespace chrome {
25 namespace search { 25 namespace search {
26 struct Mode; 26 struct Mode;
27 } 27 }
28 } 28 }
29 29
30 namespace content { 30 namespace content {
31 class NavigationEntry;
31 class WebContents; 32 class WebContents;
32 } 33 }
33 34
34 namespace gfx { 35 namespace gfx {
35 class Rect; 36 class Rect;
36 } 37 }
37 38
38 // InstantLoader is used to communicate with a preview WebContents that it owns 39 // InstantLoader is used to communicate with a preview WebContents that it owns
39 // and loads the "Instant URL" into. This preview can appear and disappear at 40 // and loads the "Instant URL" into. This preview can appear and disappear at
40 // will as the user types in the omnibox (compare: InstantTab, which talks to a 41 // will as the user types in the omnibox (compare: InstantTab, which talks to a
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 } 84 }
84 85
85 // Called by the history tab helper with information that it would have added 86 // Called by the history tab helper with information that it would have added
86 // to the history service had this WebContents not been used for Instant. 87 // to the history service had this WebContents not been used for Instant.
87 void DidNavigate(const history::HistoryAddPageArgs& add_page_args); 88 void DidNavigate(const history::HistoryAddPageArgs& add_page_args);
88 89
89 // Returns true if the loader is using 90 // Returns true if the loader is using
90 // InstantController::kLocalOmniboxPopupURL as the |instant_url_|. 91 // InstantController::kLocalOmniboxPopupURL as the |instant_url_|.
91 bool IsUsingLocalPreview() const; 92 bool IsUsingLocalPreview() const;
92 93
94 const content::NavigationEntry* base_navigation_entry() const {
95 return base_navigation_entry_.get();
96 }
97
93 // Calls through to methods of the same name on InstantClient. 98 // Calls through to methods of the same name on InstantClient.
94 void Update(const string16& text, 99 void Update(const string16& text,
95 size_t selection_start, 100 size_t selection_start,
96 size_t selection_end, 101 size_t selection_end,
97 bool verbatim); 102 bool verbatim);
98 void Submit(const string16& text); 103 void Submit(const string16& text);
99 void Cancel(const string16& text); 104 void Cancel(const string16& text);
100 void SetPopupBounds(const gfx::Rect& bounds); 105 void SetPopupBounds(const gfx::Rect& bounds);
101 void SetMarginSize(int start, int end); 106 void SetMarginSize(int start, int end);
102 void SendAutocompleteResults( 107 void SendAutocompleteResults(
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 void ReplacePreviewContents(content::WebContents* old_contents, 140 void ReplacePreviewContents(content::WebContents* old_contents,
136 content::WebContents* new_contents); 141 content::WebContents* new_contents);
137 142
138 InstantClient client_; 143 InstantClient client_;
139 InstantController* const controller_; 144 InstantController* const controller_;
140 145
141 // Delegate of the preview WebContents. Used when the user does some gesture 146 // Delegate of the preview WebContents. Used when the user does some gesture
142 // on the preview and it needs to be activated. 147 // on the preview and it needs to be activated.
143 scoped_ptr<WebContentsDelegateImpl> delegate_; 148 scoped_ptr<WebContentsDelegateImpl> delegate_;
144 scoped_ptr<content::WebContents> contents_; 149 scoped_ptr<content::WebContents> contents_;
150 scoped_ptr<const content::NavigationEntry> base_navigation_entry_;
145 151
146 const std::string instant_url_; 152 const std::string instant_url_;
147 bool supports_instant_; 153 bool supports_instant_;
148 bool is_pointer_down_from_activate_; 154 bool is_pointer_down_from_activate_;
149 history::HistoryAddPageArgs last_navigation_; 155 history::HistoryAddPageArgs last_navigation_;
150 156
151 // Used to get notifications about renderers coming and going. 157 // Used to get notifications about renderers coming and going.
152 content::NotificationRegistrar registrar_; 158 content::NotificationRegistrar registrar_;
153 159
154 DISALLOW_COPY_AND_ASSIGN(InstantLoader); 160 DISALLOW_COPY_AND_ASSIGN(InstantLoader);
155 }; 161 };
156 162
157 #endif // CHROME_BROWSER_INSTANT_INSTANT_LOADER_H_ 163 #endif // CHROME_BROWSER_INSTANT_INSTANT_LOADER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698