Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Side by Side Diff: webrtc/modules/desktop_capture/window_capturer.h

Issue 2202883003: Icon Capture For Window Capturer (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Fix windows crash Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 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 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 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #ifndef WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_ 11 #ifndef WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_
12 #define WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_ 12 #define WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_
13 13
14 #include <string> 14 #include <string>
15 #include <vector> 15 #include <vector>
16 16
17 #include "webrtc/base/constructormagic.h" 17 #include "webrtc/base/constructormagic.h"
18 #include "webrtc/modules/desktop_capture/desktop_capture_types.h" 18 #include "webrtc/modules/desktop_capture/desktop_capture_types.h"
19 #include "webrtc/modules/desktop_capture/desktop_capturer.h" 19 #include "webrtc/modules/desktop_capture/desktop_capturer.h"
20 #include "webrtc/typedefs.h" 20 #include "webrtc/typedefs.h"
21 21
22 namespace webrtc { 22 namespace webrtc {
23 23
24 class DesktopCaptureOptions; 24 class DesktopCaptureOptions;
25 // class DesktopFrame;
25 26
26 class WindowCapturer : public DesktopCapturer { 27 class WindowCapturer : public DesktopCapturer {
27 public: 28 public:
28 typedef webrtc::WindowId WindowId; 29 typedef webrtc::WindowId WindowId;
29 30
30 struct Window { 31 struct Window {
31 WindowId id; 32 WindowId id;
32 33
33 // Title of the window in UTF-8 encoding. 34 // Title of the window in UTF-8 encoding.
34 std::string title; 35 std::string title;
36
37 // Icon of the window
38 std::unique_ptr<DesktopFrame> icon;
35 }; 39 };
36 40
37 typedef std::vector<Window> WindowList; 41 typedef std::vector<Window> WindowList;
38 42
39 static WindowCapturer* Create(const DesktopCaptureOptions& options); 43 static WindowCapturer* Create(const DesktopCaptureOptions& options);
40 44
41 virtual ~WindowCapturer() {} 45 virtual ~WindowCapturer() {}
42 46
43 // Get list of windows. Returns false in case of a failure. 47 // Get list of windows. Returns false in case of a failure.
44 virtual bool GetWindowList(WindowList* windows) = 0; 48 virtual bool GetWindowList(WindowList* windows) = 0;
45 49
46 // Select window to be captured. Returns false in case of a failure (e.g. if 50 // Select window to be captured. Returns false in case of a failure (e.g. if
47 // there is no window with the specified id). 51 // there is no window with the specified id).
48 virtual bool SelectWindow(WindowId id) = 0; 52 virtual bool SelectWindow(WindowId id) = 0;
49 53
50 // Bring the selected window to the front. Returns false in case of a 54 // Bring the selected window to the front. Returns false in case of a
51 // failure or no window selected. 55 // failure or no window selected.
52 virtual bool BringSelectedWindowToFront() = 0; 56 virtual bool BringSelectedWindowToFront() = 0;
53 }; 57 };
54 58
55 } // namespace webrtc 59 } // namespace webrtc
56 60
57 #endif // WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_ 61 #endif // WEBRTC_MODULES_DESKTOP_CAPTURE_WINDOW_CAPTURER_H_
58 62
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698