1/*
2 *  Copyright 2010 The WebRTC Project Authors. All rights reserved.
3 *
4 *  Use of this source code is governed by a BSD-style license
5 *  that can be found in the LICENSE file in the root of the source
6 *  tree. An additional intellectual property rights grant can be found
7 *  in the file PATENTS.  All contributing project authors may
8 *  be found in the AUTHORS file in the root of the source tree.
9 */
10#ifndef WEBRTC_BASE_MACWINDOWPICKER_H_
11#define WEBRTC_BASE_MACWINDOWPICKER_H_
12
13#include "webrtc/base/windowpicker.h"
14
15namespace rtc {
16
17class MacWindowPicker : public WindowPicker {
18 public:
19  MacWindowPicker();
20  ~MacWindowPicker() override;
21  bool Init() override;
22  bool IsVisible(const WindowId& id) override;
23  bool MoveToFront(const WindowId& id) override;
24  bool GetWindowList(WindowDescriptionList* descriptions) override;
25  bool GetDesktopList(DesktopDescriptionList* descriptions) override;
26  bool GetDesktopDimensions(const DesktopId& id,
27                            int* width,
28                            int* height) override;
29
30 private:
31  void* lib_handle_;
32  void* get_window_list_;
33  void* get_window_list_desc_;
34};
35
36}  // namespace rtc
37
38#endif  // WEBRTC_BASE_MACWINDOWPICKER_H_
39