widget/windows/nsWindowDbg.cpp

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/widget/windows/nsWindowDbg.cpp	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,411 @@
     1.4 +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     1.5 +/* This Source Code Form is subject to the terms of the Mozilla Public
     1.6 + * License, v. 2.0. If a copy of the MPL was not distributed with this
     1.7 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     1.8 +
     1.9 +/*
    1.10 + * nsWindowDbg - Debug related utilities for nsWindow.
    1.11 + */
    1.12 +
    1.13 +#include "nsWindowDbg.h"
    1.14 +
    1.15 +#ifdef PR_LOGGING
    1.16 +extern PRLogModuleInfo* gWindowsLog;
    1.17 +#endif
    1.18 +
    1.19 +#if defined(POPUP_ROLLUP_DEBUG_OUTPUT) || defined(EVENT_DEBUG_OUTPUT) || 1
    1.20 +
    1.21 +typedef struct {
    1.22 +  const char * mStr;
    1.23 +  long         mId;
    1.24 +} EventMsgInfo;
    1.25 +
    1.26 +#if defined(POPUP_ROLLUP_DEBUG_OUTPUT)
    1.27 +MSGFEventMsgInfo gMSGFEvents[] = {
    1.28 +  "MSGF_DIALOGBOX",      0,
    1.29 +  "MSGF_MESSAGEBOX",     1,
    1.30 +  "MSGF_MENU",           2,
    1.31 +  "MSGF_SCROLLBAR",      5,
    1.32 +  "MSGF_NEXTWINDOW",     6,
    1.33 +  "MSGF_MAX",            8,
    1.34 +  "MSGF_USER",           4096,
    1.35 +  nullptr, 0};
    1.36 +#endif
    1.37 +
    1.38 +EventMsgInfo gAllEvents[] = {
    1.39 +  {"WM_NULL",                             0x0000},
    1.40 +  {"WM_CREATE",                           0x0001},
    1.41 +  {"WM_DESTROY",                          0x0002},
    1.42 +  {"WM_MOVE",                             0x0003},
    1.43 +  {"WM_SIZE",                             0x0005},
    1.44 +  {"WM_ACTIVATE",                         0x0006},
    1.45 +  {"WM_SETFOCUS",                         0x0007},
    1.46 +  {"WM_KILLFOCUS",                        0x0008},
    1.47 +  {"WM_ENABLE",                           0x000A},
    1.48 +  {"WM_SETREDRAW",                        0x000B},
    1.49 +  {"WM_SETTEXT",                          0x000C},
    1.50 +  {"WM_GETTEXT",                          0x000D},
    1.51 +  {"WM_GETTEXTLENGTH",                    0x000E},
    1.52 +  {"WM_PAINT",                            0x000F},
    1.53 +  {"WM_CLOSE",                            0x0010},
    1.54 +  {"WM_QUERYENDSESSION",                  0x0011},
    1.55 +  {"WM_QUIT",                             0x0012},
    1.56 +  {"WM_QUERYOPEN",                        0x0013},
    1.57 +  {"WM_ERASEBKGND",                       0x0014},
    1.58 +  {"WM_SYSCOLORCHANGE",                   0x0015},
    1.59 +  {"WM_ENDSESSION",                       0x0016},
    1.60 +  {"WM_SHOWWINDOW",                       0x0018},
    1.61 +  {"WM_SETTINGCHANGE",                    0x001A},
    1.62 +  {"WM_DEVMODECHANGE",                    0x001B},
    1.63 +  {"WM_ACTIVATEAPP",                      0x001C},
    1.64 +  {"WM_FONTCHANGE",                       0x001D},
    1.65 +  {"WM_TIMECHANGE",                       0x001E},
    1.66 +  {"WM_CANCELMODE",                       0x001F},
    1.67 +  {"WM_SETCURSOR",                        0x0020},
    1.68 +  {"WM_MOUSEACTIVATE",                    0x0021},
    1.69 +  {"WM_CHILDACTIVATE",                    0x0022},
    1.70 +  {"WM_QUEUESYNC",                        0x0023},
    1.71 +  {"WM_GETMINMAXINFO",                    0x0024},
    1.72 +  {"WM_PAINTICON",                        0x0026},
    1.73 +  {"WM_ICONERASEBKGND",                   0x0027},
    1.74 +  {"WM_NEXTDLGCTL",                       0x0028},
    1.75 +  {"WM_SPOOLERSTATUS",                    0x002A},
    1.76 +  {"WM_DRAWITEM",                         0x002B},
    1.77 +  {"WM_MEASUREITEM",                      0x002C},
    1.78 +  {"WM_DELETEITEM",                       0x002D},
    1.79 +  {"WM_VKEYTOITEM",                       0x002E},
    1.80 +  {"WM_CHARTOITEM",                       0x002F},
    1.81 +  {"WM_SETFONT",                          0x0030},
    1.82 +  {"WM_GETFONT",                          0x0031},
    1.83 +  {"WM_SETHOTKEY",                        0x0032},
    1.84 +  {"WM_GETHOTKEY",                        0x0033},
    1.85 +  {"WM_QUERYDRAGICON",                    0x0037},
    1.86 +  {"WM_COMPAREITEM",                      0x0039},
    1.87 +  {"WM_GETOBJECT",                        0x003D},
    1.88 +  {"WM_COMPACTING",                       0x0041},
    1.89 +  {"WM_COMMNOTIFY",                       0x0044},
    1.90 +  {"WM_WINDOWPOSCHANGING",                0x0046},
    1.91 +  {"WM_WINDOWPOSCHANGED",                 0x0047},
    1.92 +  {"WM_POWER",                            0x0048},
    1.93 +  {"WM_COPYDATA",                         0x004A},
    1.94 +  {"WM_CANCELJOURNAL",                    0x004B},
    1.95 +  {"WM_NOTIFY",                           0x004E},
    1.96 +  {"WM_INPUTLANGCHANGEREQUEST",           0x0050},
    1.97 +  {"WM_INPUTLANGCHANGE",                  0x0051},
    1.98 +  {"WM_TCARD",                            0x0052},
    1.99 +  {"WM_HELP",                             0x0053},
   1.100 +  {"WM_USERCHANGED",                      0x0054},
   1.101 +  {"WM_NOTIFYFORMAT",                     0x0055},
   1.102 +  {"WM_CONTEXTMENU",                      0x007B},
   1.103 +  {"WM_STYLECHANGING",                    0x007C},
   1.104 +  {"WM_STYLECHANGED",                     0x007D},
   1.105 +  {"WM_DISPLAYCHANGE",                    0x007E},
   1.106 +  {"WM_GETICON",                          0x007F},
   1.107 +  {"WM_SETICON",                          0x0080},
   1.108 +  {"WM_NCCREATE",                         0x0081},
   1.109 +  {"WM_NCDESTROY",                        0x0082},
   1.110 +  {"WM_NCCALCSIZE",                       0x0083},
   1.111 +  {"WM_NCHITTEST",                        0x0084},
   1.112 +  {"WM_NCPAINT",                          0x0085},
   1.113 +  {"WM_NCACTIVATE",                       0x0086},
   1.114 +  {"WM_GETDLGCODE",                       0x0087},
   1.115 +  {"WM_SYNCPAINT",                        0x0088},
   1.116 +  {"WM_NCMOUSEMOVE",                      0x00A0},
   1.117 +  {"WM_NCLBUTTONDOWN",                    0x00A1},
   1.118 +  {"WM_NCLBUTTONUP",                      0x00A2},
   1.119 +  {"WM_NCLBUTTONDBLCLK",                  0x00A3},
   1.120 +  {"WM_NCRBUTTONDOWN",                    0x00A4},
   1.121 +  {"WM_NCRBUTTONUP",                      0x00A5},
   1.122 +  {"WM_NCRBUTTONDBLCLK",                  0x00A6},
   1.123 +  {"WM_NCMBUTTONDOWN",                    0x00A7},
   1.124 +  {"WM_NCMBUTTONUP",                      0x00A8},
   1.125 +  {"WM_NCMBUTTONDBLCLK",                  0x00A9},
   1.126 +  {"EM_GETSEL",                           0x00B0},
   1.127 +  {"EM_SETSEL",                           0x00B1},
   1.128 +  {"EM_GETRECT",                          0x00B2},
   1.129 +  {"EM_SETRECT",                          0x00B3},
   1.130 +  {"EM_SETRECTNP",                        0x00B4},
   1.131 +  {"EM_SCROLL",                           0x00B5},
   1.132 +  {"EM_LINESCROLL",                       0x00B6},
   1.133 +  {"EM_SCROLLCARET",                      0x00B7},
   1.134 +  {"EM_GETMODIFY",                        0x00B8},
   1.135 +  {"EM_SETMODIFY",                        0x00B9},
   1.136 +  {"EM_GETLINECOUNT",                     0x00BA},
   1.137 +  {"EM_LINEINDEX",                        0x00BB},
   1.138 +  {"EM_SETHANDLE",                        0x00BC},
   1.139 +  {"EM_GETHANDLE",                        0x00BD},
   1.140 +  {"EM_GETTHUMB",                         0x00BE},
   1.141 +  {"EM_LINELENGTH",                       0x00C1},
   1.142 +  {"EM_REPLACESEL",                       0x00C2},
   1.143 +  {"EM_GETLINE",                          0x00C4},
   1.144 +  {"EM_LIMITTEXT",                        0x00C5},
   1.145 +  {"EM_CANUNDO",                          0x00C6},
   1.146 +  {"EM_UNDO",                             0x00C7},
   1.147 +  {"EM_FMTLINES",                         0x00C8},
   1.148 +  {"EM_LINEFROMCHAR",                     0x00C9},
   1.149 +  {"EM_SETTABSTOPS",                      0x00CB},
   1.150 +  {"EM_SETPASSWORDCHAR",                  0x00CC},
   1.151 +  {"EM_EMPTYUNDOBUFFER",                  0x00CD},
   1.152 +  {"EM_GETFIRSTVISIBLELINE",              0x00CE},
   1.153 +  {"EM_SETREADONLY",                      0x00CF},
   1.154 +  {"EM_SETWORDBREAKPROC",                 0x00D0},
   1.155 +  {"EM_GETWORDBREAKPROC",                 0x00D1},
   1.156 +  {"EM_GETPASSWORDCHAR",                  0x00D2},
   1.157 +  {"EM_SETMARGINS",                       0x00D3},
   1.158 +  {"EM_GETMARGINS",                       0x00D4},
   1.159 +  {"EM_GETLIMITTEXT",                     0x00D5},
   1.160 +  {"EM_POSFROMCHAR",                      0x00D6},
   1.161 +  {"EM_CHARFROMPOS",                      0x00D7},
   1.162 +  {"EM_SETIMESTATUS",                     0x00D8},
   1.163 +  {"EM_GETIMESTATUS",                     0x00D9},
   1.164 +  {"SBM_SETPOS",                          0x00E0},
   1.165 +  {"SBM_GETPOS",                          0x00E1},
   1.166 +  {"SBM_SETRANGE",                        0x00E2},
   1.167 +  {"SBM_SETRANGEREDRAW",                  0x00E6},
   1.168 +  {"SBM_GETRANGE",                        0x00E3},
   1.169 +  {"SBM_ENABLE_ARROWS",                   0x00E4},
   1.170 +  {"SBM_SETSCROLLINFO",                   0x00E9},
   1.171 +  {"SBM_GETSCROLLINFO",                   0x00EA},
   1.172 +  {"WM_KEYDOWN",                          0x0100},
   1.173 +  {"WM_KEYUP",                            0x0101},
   1.174 +  {"WM_CHAR",                             0x0102},
   1.175 +  {"WM_DEADCHAR",                         0x0103},
   1.176 +  {"WM_SYSKEYDOWN",                       0x0104},
   1.177 +  {"WM_SYSKEYUP",                         0x0105},
   1.178 +  {"WM_SYSCHAR",                          0x0106},
   1.179 +  {"WM_SYSDEADCHAR",                      0x0107},
   1.180 +  {"WM_KEYLAST",                          0x0108},
   1.181 +  {"WM_IME_STARTCOMPOSITION",             0x010D},
   1.182 +  {"WM_IME_ENDCOMPOSITION",               0x010E},
   1.183 +  {"WM_IME_COMPOSITION",                  0x010F},
   1.184 +  {"WM_INITDIALOG",                       0x0110},
   1.185 +  {"WM_COMMAND",                          0x0111},
   1.186 +  {"WM_SYSCOMMAND",                       0x0112},
   1.187 +  {"WM_TIMER",                            0x0113},
   1.188 +  {"WM_HSCROLL",                          0x0114},
   1.189 +  {"WM_VSCROLL",                          0x0115},
   1.190 +  {"WM_INITMENU",                         0x0116},
   1.191 +  {"WM_INITMENUPOPUP",                    0x0117},
   1.192 +  {"WM_MENUSELECT",                       0x011F},
   1.193 +  {"WM_MENUCHAR",                         0x0120},
   1.194 +  {"WM_ENTERIDLE",                        0x0121},
   1.195 +  {"WM_MENURBUTTONUP",                    0x0122},
   1.196 +  {"WM_MENUDRAG",                         0x0123},
   1.197 +  {"WM_MENUGETOBJECT",                    0x0124},
   1.198 +  {"WM_UNINITMENUPOPUP",                  0x0125},
   1.199 +  {"WM_MENUCOMMAND",                      0x0126},
   1.200 +  {"WM_CHANGEUISTATE",                    0x0127},
   1.201 +  {"WM_UPDATEUISTATE",                    0x0128},
   1.202 +  {"WM_CTLCOLORMSGBOX",                   0x0132},
   1.203 +  {"WM_CTLCOLOREDIT",                     0x0133},
   1.204 +  {"WM_CTLCOLORLISTBOX",                  0x0134},
   1.205 +  {"WM_CTLCOLORBTN",                      0x0135},
   1.206 +  {"WM_CTLCOLORDLG",                      0x0136},
   1.207 +  {"WM_CTLCOLORSCROLLBAR",                0x0137},
   1.208 +  {"WM_CTLCOLORSTATIC",                   0x0138},
   1.209 +  {"CB_GETEDITSEL",                       0x0140},
   1.210 +  {"CB_LIMITTEXT",                        0x0141},
   1.211 +  {"CB_SETEDITSEL",                       0x0142},
   1.212 +  {"CB_ADDSTRING",                        0x0143},
   1.213 +  {"CB_DELETESTRING",                     0x0144},
   1.214 +  {"CB_DIR",                              0x0145},
   1.215 +  {"CB_GETCOUNT",                         0x0146},
   1.216 +  {"CB_GETCURSEL",                        0x0147},
   1.217 +  {"CB_GETLBTEXT",                        0x0148},
   1.218 +  {"CB_GETLBTEXTLEN",                     0x0149},
   1.219 +  {"CB_INSERTSTRING",                     0x014A},
   1.220 +  {"CB_RESETCONTENT",                     0x014B},
   1.221 +  {"CB_FINDSTRING",                       0x014C},
   1.222 +  {"CB_SELECTSTRING",                     0x014D},
   1.223 +  {"CB_SETCURSEL",                        0x014E},
   1.224 +  {"CB_SHOWDROPDOWN",                     0x014F},
   1.225 +  {"CB_GETITEMDATA",                      0x0150},
   1.226 +  {"CB_SETITEMDATA",                      0x0151},
   1.227 +  {"CB_GETDROPPEDCONTROLRECT",            0x0152},
   1.228 +  {"CB_SETITEMHEIGHT",                    0x0153},
   1.229 +  {"CB_GETITEMHEIGHT",                    0x0154},
   1.230 +  {"CB_SETEXTENDEDUI",                    0x0155},
   1.231 +  {"CB_GETEXTENDEDUI",                    0x0156},
   1.232 +  {"CB_GETDROPPEDSTATE",                  0x0157},
   1.233 +  {"CB_FINDSTRINGEXACT",                  0x0158},
   1.234 +  {"CB_SETLOCALE",                        0x0159},
   1.235 +  {"CB_GETLOCALE",                        0x015A},
   1.236 +  {"CB_GETTOPINDEX",                      0x015b},
   1.237 +  {"CB_SETTOPINDEX",                      0x015c},
   1.238 +  {"CB_GETHORIZONTALEXTENT",              0x015d},
   1.239 +  {"CB_SETHORIZONTALEXTENT",              0x015e},
   1.240 +  {"CB_GETDROPPEDWIDTH",                  0x015f},
   1.241 +  {"CB_SETDROPPEDWIDTH",                  0x0160},
   1.242 +  {"CB_INITSTORAGE",                      0x0161},
   1.243 +  {"CB_MSGMAX",                           0x0162},
   1.244 +  {"LB_ADDSTRING",                        0x0180},
   1.245 +  {"LB_INSERTSTRING",                     0x0181},
   1.246 +  {"LB_DELETESTRING",                     0x0182},
   1.247 +  {"LB_SELITEMRANGEEX",                   0x0183},
   1.248 +  {"LB_RESETCONTENT",                     0x0184},
   1.249 +  {"LB_SETSEL",                           0x0185},
   1.250 +  {"LB_SETCURSEL",                        0x0186},
   1.251 +  {"LB_GETSEL",                           0x0187},
   1.252 +  {"LB_GETCURSEL",                        0x0188},
   1.253 +  {"LB_GETTEXT",                          0x0189},
   1.254 +  {"LB_GETTEXTLEN",                       0x018A},
   1.255 +  {"LB_GETCOUNT",                         0x018B},
   1.256 +  {"LB_SELECTSTRING",                     0x018C},
   1.257 +  {"LB_DIR",                              0x018D},
   1.258 +  {"LB_GETTOPINDEX",                      0x018E},
   1.259 +  {"LB_FINDSTRING",                       0x018F},
   1.260 +  {"LB_GETSELCOUNT",                      0x0190},
   1.261 +  {"LB_GETSELITEMS",                      0x0191},
   1.262 +  {"LB_SETTABSTOPS",                      0x0192},
   1.263 +  {"LB_GETHORIZONTALEXTENT",              0x0193},
   1.264 +  {"LB_SETHORIZONTALEXTENT",              0x0194},
   1.265 +  {"LB_SETCOLUMNWIDTH",                   0x0195},
   1.266 +  {"LB_ADDFILE",                          0x0196},
   1.267 +  {"LB_SETTOPINDEX",                      0x0197},
   1.268 +  {"LB_GETITEMRECT",                      0x0198},
   1.269 +  {"LB_GETITEMDATA",                      0x0199},
   1.270 +  {"LB_SETITEMDATA",                      0x019A},
   1.271 +  {"LB_SELITEMRANGE",                     0x019B},
   1.272 +  {"LB_SETANCHORINDEX",                   0x019C},
   1.273 +  {"LB_GETANCHORINDEX",                   0x019D},
   1.274 +  {"LB_SETCARETINDEX",                    0x019E},
   1.275 +  {"LB_GETCARETINDEX",                    0x019F},
   1.276 +  {"LB_SETITEMHEIGHT",                    0x01A0},
   1.277 +  {"LB_GETITEMHEIGHT",                    0x01A1},
   1.278 +  {"LB_FINDSTRINGEXACT",                  0x01A2},
   1.279 +  {"LB_SETLOCALE",                        0x01A5},
   1.280 +  {"LB_GETLOCALE",                        0x01A6},
   1.281 +  {"LB_SETCOUNT",                         0x01A7},
   1.282 +  {"LB_INITSTORAGE",                      0x01A8},
   1.283 +  {"LB_ITEMFROMPOINT",                    0x01A9},
   1.284 +  {"LB_MSGMAX",                           0x01B0},
   1.285 +  {"WM_MOUSEMOVE",                        0x0200},
   1.286 +  {"WM_LBUTTONDOWN",                      0x0201},
   1.287 +  {"WM_LBUTTONUP",                        0x0202},
   1.288 +  {"WM_LBUTTONDBLCLK",                    0x0203},
   1.289 +  {"WM_RBUTTONDOWN",                      0x0204},
   1.290 +  {"WM_RBUTTONUP",                        0x0205},
   1.291 +  {"WM_RBUTTONDBLCLK",                    0x0206},
   1.292 +  {"WM_MBUTTONDOWN",                      0x0207},
   1.293 +  {"WM_MBUTTONUP",                        0x0208},
   1.294 +  {"WM_MBUTTONDBLCLK",                    0x0209},
   1.295 +  {"WM_MOUSEWHEEL",                       0x020A},
   1.296 +  {"WM_MOUSEHWHEEL",                      0x020E},
   1.297 +  {"WM_PARENTNOTIFY",                     0x0210},
   1.298 +  {"WM_ENTERMENULOOP",                    0x0211},
   1.299 +  {"WM_EXITMENULOOP",                     0x0212},
   1.300 +  {"WM_NEXTMENU",                         0x0213},
   1.301 +  {"WM_SIZING",                           0x0214},
   1.302 +  {"WM_CAPTURECHANGED",                   0x0215},
   1.303 +  {"WM_MOVING",                           0x0216},
   1.304 +  {"WM_POWERBROADCAST",                   0x0218},
   1.305 +  {"WM_DEVICECHANGE",                     0x0219},
   1.306 +  {"WM_MDICREATE",                        0x0220},
   1.307 +  {"WM_MDIDESTROY",                       0x0221},
   1.308 +  {"WM_MDIACTIVATE",                      0x0222},
   1.309 +  {"WM_MDIRESTORE",                       0x0223},
   1.310 +  {"WM_MDINEXT",                          0x0224},
   1.311 +  {"WM_MDIMAXIMIZE",                      0x0225},
   1.312 +  {"WM_MDITILE",                          0x0226},
   1.313 +  {"WM_MDICASCADE",                       0x0227},
   1.314 +  {"WM_MDIICONARRANGE",                   0x0228},
   1.315 +  {"WM_MDIGETACTIVE",                     0x0229},
   1.316 +  {"WM_MDISETMENU",                       0x0230},
   1.317 +  {"WM_ENTERSIZEMOVE",                    0x0231},
   1.318 +  {"WM_EXITSIZEMOVE",                     0x0232},
   1.319 +  {"WM_DROPFILES",                        0x0233},
   1.320 +  {"WM_MDIREFRESHMENU",                   0x0234},
   1.321 +  {"WM_IME_SETCONTEXT",                   0x0281},
   1.322 +  {"WM_IME_NOTIFY",                       0x0282},
   1.323 +  {"WM_IME_CONTROL",                      0x0283},
   1.324 +  {"WM_IME_COMPOSITIONFULL",              0x0284},
   1.325 +  {"WM_IME_SELECT",                       0x0285},
   1.326 +  {"WM_IME_CHAR",                         0x0286},
   1.327 +  {"WM_IME_REQUEST",                      0x0288},
   1.328 +  {"WM_IME_KEYDOWN",                      0x0290},
   1.329 +  {"WM_IME_KEYUP",                        0x0291},
   1.330 +  {"WM_NCMOUSEHOVER",                     0x02A0},
   1.331 +  {"WM_MOUSEHOVER",                       0x02A1},
   1.332 +  {"WM_MOUSELEAVE",                       0x02A3},
   1.333 +  {"WM_CUT",                              0x0300},
   1.334 +  {"WM_COPY",                             0x0301},
   1.335 +  {"WM_PASTE",                            0x0302},
   1.336 +  {"WM_CLEAR",                            0x0303},
   1.337 +  {"WM_UNDO",                             0x0304},
   1.338 +  {"WM_RENDERFORMAT",                     0x0305},
   1.339 +  {"WM_RENDERALLFORMATS",                 0x0306},
   1.340 +  {"WM_DESTROYCLIPBOARD",                 0x0307},
   1.341 +  {"WM_DRAWCLIPBOARD",                    0x0308},
   1.342 +  {"WM_PAINTCLIPBOARD",                   0x0309},
   1.343 +  {"WM_VSCROLLCLIPBOARD",                 0x030A},
   1.344 +  {"WM_SIZECLIPBOARD",                    0x030B},
   1.345 +  {"WM_ASKCBFORMATNAME",                  0x030C},
   1.346 +  {"WM_CHANGECBCHAIN",                    0x030D},
   1.347 +  {"WM_HSCROLLCLIPBOARD",                 0x030E},
   1.348 +  {"WM_QUERYNEWPALETTE",                  0x030F},
   1.349 +  {"WM_PALETTEISCHANGING",                0x0310},
   1.350 +  {"WM_PALETTECHANGED",                   0x0311},
   1.351 +  {"WM_HOTKEY",                           0x0312},
   1.352 +  {"WM_PRINT",                            0x0317},
   1.353 +  {"WM_PRINTCLIENT",                      0x0318},
   1.354 +  {"WM_THEMECHANGED",                     0x031A},
   1.355 +  {"WM_HANDHELDFIRST",                    0x0358},
   1.356 +  {"WM_HANDHELDLAST",                     0x035F},
   1.357 +  {"WM_AFXFIRST",                         0x0360},
   1.358 +  {"WM_AFXLAST",                          0x037F},
   1.359 +  {"WM_PENWINFIRST",                      0x0380},
   1.360 +  {"WM_PENWINLAST",                       0x038F},
   1.361 +  {"WM_APP",                              0x8000},
   1.362 +  {"WM_DWMCOMPOSITIONCHANGED",            0x031E},
   1.363 +  {"WM_DWMNCRENDERINGCHANGED",            0x031F},
   1.364 +  {"WM_DWMCOLORIZATIONCOLORCHANGED",      0x0320},
   1.365 +  {"WM_DWMWINDOWMAXIMIZEDCHANGE",         0x0321},
   1.366 +  {"WM_DWMSENDICONICTHUMBNAIL",           0x0323},
   1.367 +  {"WM_DWMSENDICONICLIVEPREVIEWBITMAP",   0x0326},
   1.368 +  {"WM_TABLET_QUERYSYSTEMGESTURESTATUS",  0x02CC},
   1.369 +  {"WM_GESTURE",                          0x0119},
   1.370 +  {"WM_GESTURENOTIFY",                    0x011A},
   1.371 +  {"WM_GETTITLEBARINFOEX",                0x033F},
   1.372 +  {nullptr, 0x0}
   1.373 +};
   1.374 +
   1.375 +static long gEventCounter = 0;
   1.376 +static long gLastEventMsg = 0;
   1.377 +
   1.378 +void PrintEvent(UINT msg, bool aShowAllEvents, bool aShowMouseMoves)
   1.379 +{
   1.380 +  int inx = 0;
   1.381 +  while (gAllEvents[inx].mId != (long)msg && gAllEvents[inx].mStr != nullptr) {
   1.382 +    inx++;
   1.383 +  }
   1.384 +  if (aShowAllEvents || (!aShowAllEvents && gLastEventMsg != (long)msg)) {
   1.385 +    if (aShowMouseMoves || (!aShowMouseMoves && msg != 0x0020 && msg != 0x0200 && msg != 0x0084)) {
   1.386 +      PR_LOG(gWindowsLog, PR_LOG_ALWAYS, 
   1.387 +             ("%6d - 0x%04X %s\n", gEventCounter++, msg, 
   1.388 +              gAllEvents[inx].mStr ? gAllEvents[inx].mStr : "Unknown"));
   1.389 +      gLastEventMsg = msg;
   1.390 +    }
   1.391 +  }
   1.392 +}
   1.393 +
   1.394 +#endif // defined(POPUP_ROLLUP_DEBUG_OUTPUT) || defined(EVENT_DEBUG_OUTPUT)
   1.395 +
   1.396 +#ifdef DEBUG
   1.397 +void DDError(const char *msg, HRESULT hr)
   1.398 +{
   1.399 +  /*XXX make nicer */
   1.400 +  PR_LOG(gWindowsLog, PR_LOG_ERROR,
   1.401 +         ("direct draw error %s: 0x%08lx\n", msg, hr));
   1.402 +}
   1.403 +#endif
   1.404 +
   1.405 +#ifdef DEBUG_VK
   1.406 +bool is_vk_down(int vk)
   1.407 +{
   1.408 +   SHORT st = GetKeyState(vk);
   1.409 +#ifdef DEBUG
   1.410 +   PR_LOG(gWindowsLog, PR_LOG_ALWAYS, ("is_vk_down vk=%x st=%x\n",vk, st));
   1.411 +#endif
   1.412 +   return (st < 0);
   1.413 +}
   1.414 +#endif

mercurial