1// Copyright (c) 2011 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.
4
5#ifndef CHROME_BROWSER_UI_TAB_CONTENTS_TAB_CONTENTS_WRAPPER_DELEGATE_H_
6#define CHROME_BROWSER_UI_TAB_CONTENTS_TAB_CONTENTS_WRAPPER_DELEGATE_H_
7#pragma once
8
9#include "base/basictypes.h"
10
11class TabContentsWrapper;
12struct WebApplicationInfo;
13
14// Objects implement this interface to get notified about changes in the
15// TabContentsWrapper and to provide necessary functionality.
16class TabContentsWrapperDelegate {
17 public:
18  // Notification that the starredness of the current URL changed.
19  virtual void URLStarredChanged(TabContentsWrapper* source, bool starred) = 0;
20
21  // Notification that a user's request to install an application has completed.
22  virtual void OnDidGetApplicationInfo(TabContentsWrapper* source,
23                                       int32 page_id);
24
25  // Notification when an application programmatically requests installation.
26  virtual void OnInstallApplication(TabContentsWrapper* source,
27                                    const WebApplicationInfo& app_info);
28
29 protected:
30  virtual ~TabContentsWrapperDelegate();
31};
32
33#endif  // CHROME_BROWSER_UI_TAB_CONTENTS_TAB_CONTENTS_WRAPPER_DELEGATE_H_
34