gecko-dev/gfx/vr/FxRWindowManager.h
Daosheng Mu 183d99c002 Bug 1587942 - Forwarding keyboard show/hide events to VR host API. r=thomasmo,PhilipLamb,masayuki,imanol
Forwarding keyboard focus/blur events to VR browser that runs at another process. We will need to set these events in VR shmem, then VR host can receive these states from other process.

Differential Revision: https://phabricator.services.mozilla.com/D48903

--HG--
extra : moz-landing-system : lando
2019-10-18 01:24:56 +00:00

31 lines
1.0 KiB
C++

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#pragma once
#include <cstdint>
class nsPIDOMWindowOuter;
class nsWindow;
// FxRWindowManager is a singleton that is responsible for tracking all of
// the top-level windows created for Firefox Reality on Desktop. Only a
// single window is initially supported.
class FxRWindowManager final {
public:
static FxRWindowManager* GetInstance();
void AddWindow(nsPIDOMWindowOuter* aWindow);
bool IsFxRWindow(uint64_t aOuterWindowID);
bool IsFxRWindow(const nsWindow* aWindow) const;
uint64_t GetWindowID() const;
private:
FxRWindowManager();
// Only a single window is supported for tracking. Support for multiple
// windows will require a data structure to collect windows as they are
// created.
nsPIDOMWindowOuter* mWindow;
};