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_WEBRTC_DESKTOP_MEDIA_LIST_OBSERVER_H_
6 #define CHROME_BROWSER_MEDIA_WEBRTC_DESKTOP_MEDIA_LIST_OBSERVER_H_
7 
8 class DesktopMediaList;
9 
10 // Interface implemented by the desktop media picker dialog to receive
11 // notifications about changes in DesktopMediaList.
12 class DesktopMediaListObserver {
13  public:
14   // TODO(jrw): None of the |list| parameters below seem to be used.  Consider
15   // removing them.
16   virtual void OnSourceAdded(DesktopMediaList* list, int index) = 0;
17   virtual void OnSourceRemoved(DesktopMediaList* list, int index) = 0;
18   virtual void OnSourceMoved(DesktopMediaList* list,
19                              int old_index,
20                              int new_index) = 0;
21   virtual void OnSourceNameChanged(DesktopMediaList* list, int index) = 0;
22   virtual void OnSourceThumbnailChanged(DesktopMediaList* list, int index) = 0;
23 
24  protected:
~DesktopMediaListObserver()25   virtual ~DesktopMediaListObserver() {}
26 };
27 
28 #endif  // CHROME_BROWSER_MEDIA_WEBRTC_DESKTOP_MEDIA_LIST_OBSERVER_H_
29