mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 22:00:47 +01:00

This reverts commit0098a441e3
. Reason for revert: Fix chromium build break Original change's description: > Revert "Add plumbing to control PipeWire picker visibility" > > This reverts commitfbea8c5196
. > > Reason for revert: Breaks WebRTC import into Chromium, e.g: > https://chromium-review.googlesource.com/c/chromium/src/+/3863998/ > > Original change's description: > > Add plumbing to control PipeWire picker visibility > > > > Introduces the notion of a "delegated source list" and corresponding > > controller. This is used by desktop capturers (currently just the > > PipeWire capturer), who control selecting the source through their own > > (often system-level) UI, rather than returning a source list with all > > available options that can then be selected by the embedder. > > > > Adds a method to get the controller which serves to also tell embedders > > if the capturer makes use of a delegated source list. The controller > > currently allows the embedder to request that the delegated source list > > be shown or hidden, and will in the future be used to expose events > > from the source list (e.g. selection, dismissal, error). > > > > Bug: chromium:1351572 > > Change-Id: Ie1d36ed654013f59b8d9095deef01a4705fd5bde > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/272621 > > Reviewed-by: Mark Foltz <mfoltz@chromium.org> > > Commit-Queue: Alexander Cooper <alcooper@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#37956} > > Bug: chromium:1351572 > Change-Id: I06f76ab9c8bc1aa303dae177d48698951fdc5ecd > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/273703 > Auto-Submit: Henrik Boström <hbos@webrtc.org> > Reviewed-by: Henrik Andreassson <henrika@webrtc.org> > Bot-Commit: rubber-stamper@appspot.gserviceaccount.com <rubber-stamper@appspot.gserviceaccount.com> > Reviewed-by: Henrik Boström <hbos@webrtc.org> > Commit-Queue: Henrik Andreassson <henrika@webrtc.org> > Cr-Commit-Position: refs/heads/main@{#37964} Bug: chromium:1351572 Change-Id: I9e5e691746b81517bf0e211d0ad5a23371ab29ba Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/273685 Reviewed-by: Mark Foltz <mfoltz@chromium.org> Auto-Submit: Alexander Cooper <alcooper@chromium.org> Commit-Queue: Mark Foltz <mfoltz@chromium.org> Cr-Commit-Position: refs/heads/main@{#37972}
46 lines
1.4 KiB
C++
46 lines
1.4 KiB
C++
/*
|
|
* Copyright 2022 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#ifndef MODULES_DESKTOP_CAPTURE_LINUX_WAYLAND_RESTORE_TOKEN_MANAGER_H_
|
|
#define MODULES_DESKTOP_CAPTURE_LINUX_WAYLAND_RESTORE_TOKEN_MANAGER_H_
|
|
|
|
#include <mutex>
|
|
#include <string>
|
|
#include <unordered_map>
|
|
|
|
#include "modules/desktop_capture/desktop_capturer.h"
|
|
|
|
namespace webrtc {
|
|
|
|
class RestoreTokenManager {
|
|
public:
|
|
RestoreTokenManager(const RestoreTokenManager& manager) = delete;
|
|
RestoreTokenManager& operator=(const RestoreTokenManager& manager) = delete;
|
|
|
|
static RestoreTokenManager& GetInstance();
|
|
|
|
void AddToken(DesktopCapturer::SourceId id, const std::string& token);
|
|
std::string TakeToken(DesktopCapturer::SourceId id);
|
|
|
|
// Returns a source ID which does not have any token associated with it yet.
|
|
DesktopCapturer::SourceId GetUnusedId();
|
|
|
|
private:
|
|
RestoreTokenManager() = default;
|
|
~RestoreTokenManager() = default;
|
|
|
|
DesktopCapturer::SourceId last_source_id_ = 0;
|
|
|
|
std::unordered_map<DesktopCapturer::SourceId, std::string> restore_tokens_;
|
|
};
|
|
|
|
} // namespace webrtc
|
|
|
|
#endif // MODULES_DESKTOP_CAPTURE_LINUX_WAYLAND_RESTORE_TOKEN_MANAGER_H_
|