#include "remoting/host/it2me_desktop_environment.h"
#include <memory>
#include <utility>
#include "base/check.h"
#include "base/functional/bind.h"
#include "base/memory/ptr_util.h"
#include "base/memory/weak_ptr.h"
#include "base/task/single_thread_task_runner.h"
#include "build/build_config.h"
#include "remoting/host/basic_desktop_environment.h"
#include "remoting/host/client_session_control.h"
#include "remoting/host/host_window.h"
#include "remoting/host/host_window_proxy.h"
#include "remoting/host/input_monitor/local_input_monitor.h"
#include "remoting/protocol/capability_names.h"
#include "remoting/protocol/errors.h"
#if BUILDFLAG(IS_POSIX)
#include <sys/types.h>
#include <unistd.h>
#endif
#if BUILDFLAG(IS_CHROMEOS)
#include "base/feature_list.h"
#include "components/user_manager/user_manager.h"
#include "remoting/host/chromeos/features.h"
#include "remoting/host/curtain_mode_chromeos.h"
#endif
namespace remoting {
It2MeDesktopEnvironment::~It2MeDesktopEnvironment() { … }
It2MeDesktopEnvironment::It2MeDesktopEnvironment(
scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> input_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner,
base::WeakPtr<ClientSessionControl> client_session_control,
const DesktopEnvironmentOptions& options)
: … { … }
std::string It2MeDesktopEnvironment::GetCapabilities() const { … }
It2MeDesktopEnvironmentFactory::It2MeDesktopEnvironmentFactory(
scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> video_capture_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> input_task_runner,
scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner)
: … { … }
It2MeDesktopEnvironmentFactory::~It2MeDesktopEnvironmentFactory() = default;
std::unique_ptr<DesktopEnvironment> It2MeDesktopEnvironmentFactory::Create(
base::WeakPtr<ClientSessionControl> client_session_control,
base::WeakPtr<ClientSessionEvents> client_session_events,
const DesktopEnvironmentOptions& options) { … }
}