158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// found in the LICENSE file.
458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#ifndef CHROME_BROWSER_UI_COCOA_MEDIA_PICKER_DESKTOP_MEDIA_PICKER_COCOA_H_
658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#define CHROME_BROWSER_UI_COCOA_MEDIA_PICKER_DESKTOP_MEDIA_PICKER_COCOA_H_
758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#import "base/mac/scoped_nsobject.h"
958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "chrome/browser/media/desktop_media_picker.h"
1058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)@class DesktopMediaPickerController;
1258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)// Cocoa's DesktopMediaPicker implementation.
1458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class DesktopMediaPickerCocoa : public DesktopMediaPicker {
1558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) public:
1658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  DesktopMediaPickerCocoa();
1758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  virtual ~DesktopMediaPickerCocoa();
1858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  // Overridden from DesktopMediaPicker:
20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  virtual void Show(content::WebContents* web_contents,
21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                    gfx::NativeWindow context,
2258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)                    gfx::NativeWindow parent,
23a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    const base::string16& app_name,
24a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)                    const base::string16& target_name,
25a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)                    scoped_ptr<DesktopMediaList> media_list,
2658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)                    const DoneCallback& done_callback) OVERRIDE;
2758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
2858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles) private:
2958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  base::scoped_nsobject<DesktopMediaPickerController> controller_;
3058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)};
3158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
3258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#endif  // CHROME_BROWSER_UI_COCOA_MEDIA_PICKER_DESKTOP_MEDIA_PICKER_COCOA_H_
33