123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
- /* vim:expandtab:shiftwidth=2:tabstop=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/. */
- #ifndef nsWinUtils_h_
- #define nsWinUtils_h_
- #include <windows.h>
- #include "nsIDOMCSSStyleDeclaration.h"
- #include "nsCOMPtr.h"
- class nsIContent;
- namespace mozilla {
- namespace a11y {
- class DocAccessible;
- const LPCWSTR kClassNameRoot = L"MozillaUIWindowClass";
- const LPCWSTR kClassNameTabContent = L"MozillaContentWindowClass";
- const LPCWSTR kPropNameDocAcc = L"MozDocAccessible";
- class nsWinUtils
- {
- public:
- /**
- * Return computed styles declaration for the given node.
- *
- * @note Please use it carefully since it can shutdown the accessible tree
- * you operate on.
- */
- static already_AddRefed<nsIDOMCSSStyleDeclaration>
- GetComputedStyleDeclaration(nsIContent* aContent);
- /**
- * Start window emulation if presence of specific AT is detected.
- */
- static bool MaybeStartWindowEmulation();
- /**
- * Free resources used for window emulation.
- */
- static void ShutdownWindowEmulation();
- /**
- * Return true if window emulation is started.
- */
- static bool IsWindowEmulationStarted() { return sWindowEmulationStarted; }
- /**
- * Helper to register window class.
- */
- static void RegisterNativeWindow(LPCWSTR aWindowClass);
- /**
- * Helper to create a window.
- */
- static HWND CreateNativeWindow(LPCWSTR aWindowClass, HWND aParentWnd,
- int aX, int aY, int aWidth, int aHeight,
- bool aIsActive);
- /**
- * Helper to show window.
- */
- static void ShowNativeWindow(HWND aWnd);
- /**
- * Helper to hide window.
- */
- static void HideNativeWindow(HWND aWnd);
- private:
- /**
- * Flag that indicates if window emulation is started.
- */
- static bool sWindowEmulationStarted;
- };
- } // namespace a11y
- } // namespace mozilla
- #endif
|