зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1665357 - Ensure DPI_AWARENESS_CONTEXT is defined r=mhowell
This is currently failing the tier 2 MinGW-Clang builds, complaining that DPI_AWARENESS_CONTEXT is not defined. Accordingly I pulled out the logic from WinUtils.h which ensures it is defined into a shared header. Differential Revision: https://phabricator.services.mozilla.com/D90467
This commit is contained in:
Родитель
3c2bf508d6
Коммит
37cb06da7e
|
@ -11,6 +11,7 @@
|
|||
#include "mozilla/Assertions.h"
|
||||
#include "mozilla/Attributes.h"
|
||||
#include "mozilla/glue/Debug.h"
|
||||
#include "mozilla/WindowsDpiAwareness.h"
|
||||
#include "mozilla/WindowsVersion.h"
|
||||
|
||||
namespace mozilla {
|
||||
|
@ -59,12 +60,6 @@ StretchDIBitsProc sStretchDIBits = NULL;
|
|||
typedef HBRUSH(WINAPI* CreateSolidBrushProc)(COLORREF);
|
||||
CreateSolidBrushProc sCreateSolidBrush = NULL;
|
||||
|
||||
#if WINVER < 0x0605
|
||||
WINUSERAPI DPI_AWARENESS_CONTEXT WINAPI GetThreadDpiAwarenessContext();
|
||||
WINUSERAPI BOOL WINAPI AreDpiAwarenessContextsEqual(DPI_AWARENESS_CONTEXT,
|
||||
DPI_AWARENESS_CONTEXT);
|
||||
#endif /* WINVER < 0x0605 */
|
||||
|
||||
static uint32_t sWindowWidth;
|
||||
static uint32_t sWindowHeight;
|
||||
static double sCSSToDevPixelScaling;
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
|
||||
/* 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 https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#ifndef WindowsDpiAwareness_h_
|
||||
#define WindowsDpiAwareness_h_
|
||||
|
||||
#include <windows.h>
|
||||
|
||||
#if !defined(DPI_AWARENESS_CONTEXT_DECLARED) && \
|
||||
!defined(DPI_AWARENESS_CONTEXT_UNAWARE)
|
||||
|
||||
DECLARE_HANDLE(DPI_AWARENESS_CONTEXT);
|
||||
|
||||
typedef enum DPI_AWARENESS {
|
||||
DPI_AWARENESS_INVALID = -1,
|
||||
DPI_AWARENESS_UNAWARE = 0,
|
||||
DPI_AWARENESS_SYSTEM_AWARE = 1,
|
||||
DPI_AWARENESS_PER_MONITOR_AWARE = 2
|
||||
} DPI_AWARENESS;
|
||||
|
||||
# define DPI_AWARENESS_CONTEXT_UNAWARE ((DPI_AWARENESS_CONTEXT)-1)
|
||||
# define DPI_AWARENESS_CONTEXT_SYSTEM_AWARE ((DPI_AWARENESS_CONTEXT)-2)
|
||||
# define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE ((DPI_AWARENESS_CONTEXT)-3)
|
||||
|
||||
# define DPI_AWARENESS_CONTEXT_DECLARED
|
||||
#endif // (DPI_AWARENESS_CONTEXT_DECLARED)
|
||||
|
||||
#if WINVER < 0x0605
|
||||
WINUSERAPI DPI_AWARENESS_CONTEXT WINAPI GetThreadDpiAwarenessContext();
|
||||
WINUSERAPI BOOL WINAPI AreDpiAwarenessContextsEqual(DPI_AWARENESS_CONTEXT,
|
||||
DPI_AWARENESS_CONTEXT);
|
||||
#endif /* WINVER < 0x0605 */
|
||||
typedef DPI_AWARENESS_CONTEXT(WINAPI* SetThreadDpiAwarenessContextProc)(
|
||||
DPI_AWARENESS_CONTEXT);
|
||||
typedef BOOL(WINAPI* EnableNonClientDpiScalingProc)(HWND);
|
||||
typedef int(WINAPI* GetSystemMetricsForDpiProc)(int, UINT);
|
||||
|
||||
#endif
|
|
@ -28,6 +28,7 @@ if CONFIG['OS_ARCH'] == 'WINNT':
|
|||
'EarlyBlankWindow.h',
|
||||
'StackWalk_windows.h',
|
||||
'TimeStamp_windows.h',
|
||||
'WindowsDpiAwareness.h',
|
||||
]
|
||||
|
||||
SOURCES += [
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include "mozilla/Attributes.h"
|
||||
#include "mozilla/EventForwards.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
#include "mozilla/WindowsDpiAwareness.h"
|
||||
|
||||
/**
|
||||
* NS_INLINE_DECL_IUNKNOWN_REFCOUNTING should be used for defining and
|
||||
|
@ -77,35 +78,6 @@ class nsWindow;
|
|||
class nsWindowBase;
|
||||
struct KeyPair;
|
||||
|
||||
#if !defined(DPI_AWARENESS_CONTEXT_DECLARED) && \
|
||||
!defined(DPI_AWARENESS_CONTEXT_UNAWARE)
|
||||
|
||||
DECLARE_HANDLE(DPI_AWARENESS_CONTEXT);
|
||||
|
||||
typedef enum DPI_AWARENESS {
|
||||
DPI_AWARENESS_INVALID = -1,
|
||||
DPI_AWARENESS_UNAWARE = 0,
|
||||
DPI_AWARENESS_SYSTEM_AWARE = 1,
|
||||
DPI_AWARENESS_PER_MONITOR_AWARE = 2
|
||||
} DPI_AWARENESS;
|
||||
|
||||
# define DPI_AWARENESS_CONTEXT_UNAWARE ((DPI_AWARENESS_CONTEXT)-1)
|
||||
# define DPI_AWARENESS_CONTEXT_SYSTEM_AWARE ((DPI_AWARENESS_CONTEXT)-2)
|
||||
# define DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE ((DPI_AWARENESS_CONTEXT)-3)
|
||||
|
||||
# define DPI_AWARENESS_CONTEXT_DECLARED
|
||||
#endif // (DPI_AWARENESS_CONTEXT_DECLARED)
|
||||
|
||||
#if WINVER < 0x0605
|
||||
WINUSERAPI DPI_AWARENESS_CONTEXT WINAPI GetThreadDpiAwarenessContext();
|
||||
WINUSERAPI BOOL WINAPI AreDpiAwarenessContextsEqual(DPI_AWARENESS_CONTEXT,
|
||||
DPI_AWARENESS_CONTEXT);
|
||||
#endif /* WINVER < 0x0605 */
|
||||
typedef DPI_AWARENESS_CONTEXT(WINAPI* SetThreadDpiAwarenessContextProc)(
|
||||
DPI_AWARENESS_CONTEXT);
|
||||
typedef BOOL(WINAPI* EnableNonClientDpiScalingProc)(HWND);
|
||||
typedef int(WINAPI* GetSystemMetricsForDpiProc)(int, UINT);
|
||||
|
||||
namespace mozilla {
|
||||
enum class PointerCapabilities : uint8_t;
|
||||
#if defined(ACCESSIBILITY)
|
||||
|
|
Загрузка…
Ссылка в новой задаче