widget/windows/nsWindowDefs.h
author Mozilla Releng Treescript <release+treescript@mozilla.org>
Mon, 31 May 2021 17:00:15 +0000
changeset 581452 bbb448a557b48a5e843f9a35f5dd74ea667326e5
parent 448947 6f3709b3878117466168c40affa7bca0b60cf75b
permissions -rw-r--r--
Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
     1
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
94475
Gervase Markham <gerv@gerv.net>
parents: 92968
diff changeset
     2
/* This Source Code Form is subject to the terms of the Mozilla Public
Gervase Markham <gerv@gerv.net>
parents: 92968
diff changeset
     3
 * License, v. 2.0. If a copy of the MPL was not distributed with this
Gervase Markham <gerv@gerv.net>
parents: 92968
diff changeset
     4
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
     5
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
     6
#ifndef WindowDefs_h__
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
     7
#define WindowDefs_h__
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
     8
29841
9f0e541d6656a3f314c90beb99f33bb499406ecd Leak fix for change set 1aecdc720018 plus comment updates. r=jimm.
Jim Mathies <jmathies@mozilla.com>
parents: 29835
diff changeset
     9
/*
9f0e541d6656a3f314c90beb99f33bb499406ecd Leak fix for change set 1aecdc720018 plus comment updates. r=jimm.
Jim Mathies <jmathies@mozilla.com>
parents: 29835
diff changeset
    10
 * nsWindowDefs - nsWindow related definitions, consts, and macros.
9f0e541d6656a3f314c90beb99f33bb499406ecd Leak fix for change set 1aecdc720018 plus comment updates. r=jimm.
Jim Mathies <jmathies@mozilla.com>
parents: 29835
diff changeset
    11
 */
9f0e541d6656a3f314c90beb99f33bb499406ecd Leak fix for change set 1aecdc720018 plus comment updates. r=jimm.
Jim Mathies <jmathies@mozilla.com>
parents: 29835
diff changeset
    12
294635
b7a49478bfcb151d3adfa3b37e92abff29ac3d94 Bug 1257759 part.2 Separate Windows' message and related definitions from nsWindowDefs.h to mozilla/widget/WinMessages.h r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 281850
diff changeset
    13
#include "mozilla/widget/WinMessages.h"
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    14
#include "nsBaseWidget.h"
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    15
#include "nsdefs.h"
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    16
#include "resource.h"
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    17
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    18
/**************************************************************
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    19
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    20
 * SECTION: defines
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    21
 *
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    22
 **************************************************************/
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    23
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    24
// ConstrainPosition window positioning slop value
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    25
#define kWindowPositionSlop 20
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    26
56383
a361ff26822459dd8a661e5e4b988c3a97d04e9d Bug 580599 - Fix for alt+space in full screen mode, selecting 'Restore' results in a window without chrome if the previous window state was maximized. r=neil, a=final.
Jim Mathies <jmathies@mozilla.com>
parents: 54355
diff changeset
    27
// Origin of the system context menu when displayed in full screen mode
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    28
#define MOZ_SYSCONTEXT_X_POS 20
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    29
#define MOZ_SYSCONTEXT_Y_POS 20
56383
a361ff26822459dd8a661e5e4b988c3a97d04e9d Bug 580599 - Fix for alt+space in full screen mode, selecting 'Restore' results in a window without chrome if the previous window state was maximized. r=neil, a=final.
Jim Mathies <jmathies@mozilla.com>
parents: 54355
diff changeset
    30
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    31
// Don't put more than this many rects in the dirty region, just fluff
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    32
// out to the bounding-box if there are more
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    33
#define MAX_RECTS_IN_REGION 100
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    34
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    35
// Tablet PC Mouse Input Source
40485
13cfdaebbd40a3550173b7e32ae8d7abfdf38048 Bug 547996 - Be able to tell when a click was generated by a tap on the screen, r=smaug,jimm, sr=jst
felipc@gmail.com
parents: 37550
diff changeset
    36
#define TABLET_INK_SIGNATURE 0xFFFFFF00
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    37
#define TABLET_INK_CHECK 0xFF515700
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    38
#define TABLET_INK_TOUCH 0x00000080
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    39
#define TABLET_INK_ID_MASK 0x0000007F
83750
43f76a0051889e5c07dac4dab2e090e03ce2be16 Bug 712483 Implement mozilla::widget::WinUtils r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 83726
diff changeset
    40
#define MOUSE_INPUT_SOURCE() WinUtils::GetMouseInputSource()
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    41
#define MOUSE_POINTERID() WinUtils::GetMousePointerID()
40485
13cfdaebbd40a3550173b7e32ae8d7abfdf38048 Bug 547996 - Be able to tell when a click was generated by a tap on the screen, r=smaug,jimm, sr=jst
felipc@gmail.com
parents: 37550
diff changeset
    42
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    43
/**************************************************************
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    44
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    45
 * SECTION: enums
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    46
 *
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    47
 **************************************************************/
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    48
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    49
// nsWindow::sCanQuit
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    50
typedef enum { TRI_UNKNOWN = -1, TRI_FALSE = 0, TRI_TRUE = 1 } TriStateBool;
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    51
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    52
/**************************************************************
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    53
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    54
 * SECTION: constants
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    55
 *
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    56
 **************************************************************/
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    57
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    58
/*
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    59
 * Native windows class names
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    60
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    61
 * ::: IMPORTANT :::
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    62
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    63
 * External apps and drivers depend on window class names.
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    64
 * For example, changing the window classes could break
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    65
 * touchpad scrolling or screen readers.
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    66
 */
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    67
const uint32_t kMaxClassNameLength = 40;
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    68
const wchar_t kClassNameHidden[] = L"MozillaHiddenWindowClass";
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    69
const wchar_t kClassNameGeneral[] = L"MozillaWindowClass";
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    70
const wchar_t kClassNameDialog[] = L"MozillaDialogClass";
251971
64077f01ac1650c87831986897ac6c13057405e3 Bug 1181395 - Avoid runtime conversion or copy of names of window classes on Windows. r=jimm
Xidorn Quan <quanxunzhen@gmail.com>
parents: 213754
diff changeset
    71
const wchar_t kClassNameDropShadow[] = L"MozillaDropShadowWindowClass";
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    72
const wchar_t kClassNameTemp[] = L"MozillaTempWindowClass";
252607
b867bb9c50ee758113bf288a2baca283226382e1 Bug 1160014 part 4 - Implement fullscreen transition on Windows. r=jimm
Xidorn Quan <quanxunzhen@gmail.com>
parents: 252477
diff changeset
    73
const wchar_t kClassNameTransition[] = L"MozillaTransitionWindowClass";
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    74
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    75
/**************************************************************
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    76
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    77
 * SECTION: structs
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    78
 *
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    79
 **************************************************************/
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    80
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    81
// Used for synthesizing events
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    82
struct KeyPair {
102997
a16372ce30b5f6b747246b01fcd215a4bf3b6342 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
Ehsan Akhgari <ehsan@mozilla.com>
parents: 102841
diff changeset
    83
  uint8_t mGeneral;
a16372ce30b5f6b747246b01fcd215a4bf3b6342 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
Ehsan Akhgari <ehsan@mozilla.com>
parents: 102841
diff changeset
    84
  uint8_t mSpecific;
314474
a1f7f2079792d629ddb6bcb26a4cafb8b3815464 Bug 1300937 part.2 Automated tests which synthesize native key events on Windows should specify scan code value explicitly r=smaug
Masayuki Nakano <masayuki@d-toybox.com>
parents: 314012
diff changeset
    85
  uint16_t mScanCode;
102997
a16372ce30b5f6b747246b01fcd215a4bf3b6342 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
Ehsan Akhgari <ehsan@mozilla.com>
parents: 102841
diff changeset
    86
  KeyPair(uint32_t aGeneral, uint32_t aSpecific)
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    87
      : mGeneral(aGeneral & 0xFF),
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    88
        mSpecific(aSpecific & 0xFF),
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    89
        mScanCode((aGeneral & 0xFFFF0000) >> 16) {}
423599
c2e17337f8b84e8c921007347698d49fb4290bf6 Bug 900750 - part 2: Make ModifierKeyState and VirtualKey treat AltGraph as new modifier and won't set Control and Alt state while AltGraph is active r=m_kato,smaug
Masayuki Nakano <masayuki@d-toybox.com>
parents: 326880
diff changeset
    90
  KeyPair(uint8_t aGeneral, uint8_t aSpecific, uint16_t aScanCode)
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    91
      : mGeneral(aGeneral), mSpecific(aSpecific), mScanCode(aScanCode) {}
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    92
};
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
    93
90041
06a882a59dee35d4554268ebba532f1a13434c11 Bug 737984 - win8 dev kit fixup for win widget gesture input headers, r=bbondy.
Jim Mathies <jmathies@mozilla.com>
parents: 89993
diff changeset
    94
#if (WINVER < 0x0600)
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    95
struct TITLEBARINFOEX {
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    96
  DWORD cbSize;
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    97
  RECT rcTitleBar;
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    98
  DWORD rgstate[CCHILDREN_TITLEBAR + 1];
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
    99
  RECT rgrect[CCHILDREN_TITLEBAR + 1];
49249
ff19c2e8669545c99eefd70d4315c2f36928cd7e Bug 574454 - Implement frame rendering and metrics in native themeing. r=vlad.
Jim Mathies <jmathies@mozilla.com>
parents: 40485
diff changeset
   100
};
ff19c2e8669545c99eefd70d4315c2f36928cd7e Bug 574454 - Implement frame rendering and metrics in native themeing. r=vlad.
Jim Mathies <jmathies@mozilla.com>
parents: 40485
diff changeset
   101
#endif
ff19c2e8669545c99eefd70d4315c2f36928cd7e Bug 574454 - Implement frame rendering and metrics in native themeing. r=vlad.
Jim Mathies <jmathies@mozilla.com>
parents: 40485
diff changeset
   102
139029
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   103
namespace mozilla {
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   104
namespace widget {
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   105
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   106
struct MSGResult {
139029
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   107
  // Result for the message.
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   108
  LRESULT& mResult;
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   109
  // If mConsumed is true, the caller shouldn't call next wndproc.
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   110
  bool mConsumed;
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   111
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   112
  explicit MSGResult(LRESULT* aResult = nullptr)
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   113
      : mResult(aResult ? *aResult : mDefaultResult), mConsumed(false) {}
139029
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   114
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   115
 private:
139029
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   116
  LRESULT mDefaultResult;
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   117
};
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   118
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   119
}  // namespace widget
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   120
}  // namespace mozilla
139029
012a553952ae8b18e3ee2c7b3e678ccdc1f1e72e Bug 891316 part.1 Make widget::MSGResult struct and use it in nsWindow r=jimm
Masayuki Nakano <masayuki@d-toybox.com>
parents: 133259
diff changeset
   121
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   122
/**************************************************************
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   123
 *
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   124
 * SECTION: macros
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   125
 *
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   126
 **************************************************************/
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   127
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   128
#define NSRGB_2_COLOREF(color) \
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   129
  RGB(NS_GET_R(color), NS_GET_G(color), NS_GET_B(color))
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   130
#define COLOREF_2_NSRGB(color) \
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   131
  NS_RGB(GetRValue(color), GetGValue(color), GetBValue(color))
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   132
448947
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   133
#define VERIFY_WINDOW_STYLE(s)                                         \
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   134
  NS_ASSERTION(((s) & (WS_CHILD | WS_POPUP)) != (WS_CHILD | WS_POPUP), \
6f3709b3878117466168c40affa7bca0b60cf75b Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
Sylvestre Ledru <sledru@mozilla.com>
parents: 423599
diff changeset
   135
               "WS_POPUP and WS_CHILD are mutually exclusive")
29835
1aecdc720018877cf1d9130cb39730a65e8b0e9c Bug 487245 - Cleanup and better organize code in widget/src/windows/nsWindow. r=emaijala.
Jim Mathies <jmathies@mozilla.com>
parents:
diff changeset
   136
30087
9369c15603da78d234e997fb225e331813eecf2b b=494438; add optional OpenGL acceleration to ddraw surface for CE: better integration with rest of system; r=vlad
Vladimir Vukicevic <vladimir@pobox.com>
parents: 29841
diff changeset
   137
#endif /* WindowDefs_h__ */