Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / media / fake_desktop_media_list.h
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
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_MEDIA_FAKE_DESKTOP_MEDIA_LIST_H_
6 #define CHROME_BROWSER_MEDIA_FAKE_DESKTOP_MEDIA_LIST_H_
7
8 #include <vector>
9
10 #include "chrome/browser/media/desktop_media_list.h"
11
12 class FakeDesktopMediaList : public DesktopMediaList {
13  public:
14   FakeDesktopMediaList();
15   virtual ~FakeDesktopMediaList();
16
17   void AddSource(int id);
18   void RemoveSource(int index);
19   void MoveSource(int old_index, int new_index);
20   void SetSourceThumbnail(int index);
21   void SetSourceName(int index, base::string16 name);
22
23   // DesktopMediaList implementation:
24   virtual void SetUpdatePeriod(base::TimeDelta period) OVERRIDE;
25   virtual void SetThumbnailSize(const gfx::Size& thumbnail_size) OVERRIDE;
26   virtual void SetViewDialogWindowId(
27       content::DesktopMediaID::Id dialog_id) OVERRIDE;
28   virtual void StartUpdating(DesktopMediaListObserver* observer) OVERRIDE;
29   virtual int GetSourceCount() const OVERRIDE;
30   virtual const Source& GetSource(int index) const OVERRIDE;
31
32  private:
33   std::vector<Source> sources_;
34   DesktopMediaListObserver* observer_;
35   gfx::ImageSkia thumbnail_;
36 };
37
38 #endif  // CHROME_BROWSER_MEDIA_FAKE_DESKTOP_MEDIA_LIST_H_