| Index: chrome/browser/instant/instant_tab.h | 
| diff --git a/chrome/browser/instant/instant_tab.h b/chrome/browser/instant/instant_tab.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..7302e9e2f892d65196983c932f645518eadbd646 | 
| --- /dev/null | 
| +++ b/chrome/browser/instant/instant_tab.h | 
| @@ -0,0 +1,57 @@ | 
| +// Copyright 2012 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. | 
| + | 
| +#ifndef CHROME_BROWSER_INSTANT_INSTANT_TAB_H_ | 
| +#define CHROME_BROWSER_INSTANT_INSTANT_TAB_H_ | 
| + | 
| +#include <vector> | 
| + | 
| +#include "base/basictypes.h" | 
| +#include "base/compiler_specific.h" | 
| +#include "base/string16.h" | 
| +#include "chrome/browser/instant/instant_client.h" | 
| + | 
| +struct InstantAutocompleteResult; | 
| +class InstantController; | 
| + | 
| +namespace content { | 
| +class WebContents; | 
| +} | 
| + | 
| +// InstantTab is used to communicate with a committed search results page, i.e., | 
| +// an actual tab on the tab strip (compare: InstantLoader, which has a preview | 
| +// page that appears and disappears as the user types in the omnibox). | 
| +class InstantTab : public InstantClient::Delegate { | 
| + public: | 
| +  // Doesn't take ownership of either |controller| or |contents|. | 
| +  InstantTab(InstantController* controller, content::WebContents* contents); | 
| +  virtual ~InstantTab(); | 
| + | 
| +  content::WebContents* contents() const { return contents_; } | 
| + | 
| +  // Calls through to methods of the same name on InstantClient. | 
| +  void Update(const string16& text, bool verbatim); | 
| +  void Submit(const string16& text); | 
| +  void SendAutocompleteResults( | 
| +      const std::vector<InstantAutocompleteResult>& results); | 
| +  void UpOrDownKeyPressed(int count); | 
| + | 
| + private: | 
| +  // Overridden from InstantClient::Delegate: | 
| +  virtual void SetSuggestions( | 
| +      const std::vector<InstantSuggestion>& suggestions) OVERRIDE; | 
| +  virtual void InstantSupportDetermined(bool supports_instant) OVERRIDE; | 
| +  virtual void ShowInstantPreview(InstantShownReason reason, | 
| +                                  int height, | 
| +                                  InstantSizeUnits units) OVERRIDE; | 
| + | 
| +  InstantClient client_; | 
| +  InstantController* const controller_; | 
| +  content::WebContents* const contents_; | 
| +  bool supports_instant_; | 
| + | 
| +  DISALLOW_COPY_AND_ASSIGN(InstantTab); | 
| +}; | 
| + | 
| +#endif  // CHROME_BROWSER_INSTANT_INSTANT_TAB_H_ | 
|  |